Вопросы по разработке веб-проектов

Вопросы и ответы по платформе Falcon Space

Цены на платформу можно найти здесь
Цены на Falcon Space

Про ценообразование в проекте разработки можно почитать здесь

Да, для сопровождения и развития своего решения на платформе необходимо знать только SQL (бизнес-логика и доступ к данным) и Bootstrap (разметка). Обе технологии широко распространены. Документация по системе представлена на сайте
Документация Falcon Space

Мы собрали самые важные моменты по юзабилити в единое руководство, которое позволит составить свое первое впечатление об основных инструментах платформы, повышающих удоство использования сайта.

Платформа позволяет быстро создавать личные кабинеты и подсистемы. И конечно это накладывает некое ограничение на базовые элементы.

Основные ограничения внешнего интерфейса:

  • Основное меню находится слева (но есть возможность создавать и горизонтальное меню).
  • Состав и порядок функций-значков на верхней панели: уведомления, сообщения (можно добавлять свои значки перед поиском).
  • Переключатель локализации (2 кнопки в подменю служебного меню).
  • Два уровня вложенности основного меню.
  • Меню в смартфонах находится с правой стороны.

Большинство ограничений можно обойти через дополнительный JS, CSS (но лучше не увлекаться этим, т.к. при этом возрастает сложность поддержки)

У вас есть возможность реализовать практически любой лендинг. 

Самый простой путь - сделать отдельно дизайн и верстку лендинга на Bootstrap 4, а затем это довольно легко можно будет интегрировать в саму платформу. 

В итоге лендинг будет содержать только стили самого лендинга, не перемешиваясь со стилями платформы. 

Лендингов в системе может быть сколько угодно, плюс есть возможность  подключения к ним возможностей платформы и генерации контента на лендинге из базы. 

Примеры лендингов можно увидеть на https://demo.web-automation.ru

Мы не ставим задачу сделать демо со всевомозможными функциями, которые закроют любую задачу пользователя в будущем. Подобные решения получаются тяжелыми, медленными, сложными в освоении. 

Плюс, какое бы ни было сложное и навороченное решение, все равно в каждом проекте возникают свои уникальные потребности. 

Каждое наше решение содержит базовые элементы, которые служат каркасом для решения. Все дальнейшие улучшения и добавление возможностей происходят уже в рамках клиентского проекта. 

Это дает возможность быстро запустить площадку с начальным функционалом, но при этом оставляет возможность развивать свой продукт практически неограниченно.

Абонентской платы нет, доплат за обновление также нет.

Поддержка системы построена на основе выполнения конкретного объема работ.

Все работы детализируются, на них составляется и запускается очередной этап доработок (через дополнительное соглашение к основному договору). 

Если никаких работ не требуется в текущий период, оплат нет. 

Обновление платформы, решение возникающих проблем определяется пакетом работ на этап.  

 

Наша платформа заточена для адаптации под клиента. Вы берете некое готовое базовое решение и адаптируете его под свои потребности. 

Какого рода доработки могут быть:

  • Создание новых страниц с таблицами, формами, дашбордами и т.д.,
  • Создание новых кабинетов и ролей,
  • Внедрение новых страниц с контентом, 
  • Изменение каталога - верстки элементов, состава фильтров, категорий,
  • Добавление новых каталогов,
  • Создание API для входящих и исходящих запросов и интеграции с внешними системами.

Самый простой путь - описать, что вам необходимо. 

  • Определите список личных кабинетов (например, кабинет оператора, кабинет заказчика и неавторизованная область),
  • Определите для каждой роли список возможностей,
  • Определите все необходимые интеграции с внешним миром (например, 1С, zapier и т.д.).

Отправьте нам этот документ, и мы сможем дать понимание, как вашу задачу мы сможем решить на базе платформы Falcon Space.

Начните с создания концепции проекта. 

Опишите своими словами:

  • для кого вы делаете свое решение?
  • какую задачу потребителя оно решает?
  • каковы ключевые возможности и характеристики решения?

Свяжитесь с нами по контактам указанным вверху сайта - мы сможем дать обратную связь по вашему описанию и начальную оценку по проекту создания вашего решения. 

Более подробно о том, как мы работаем смотрите здесь - работа над проектом

 

Мы составили большую таблицу сравнения Falcon Space с решениями другого типа - Таблица сравнения Falcon Space

Если кратко, то главные отличия следующие: 

  • можно менять и развиватть бизнес-логику даже в готовом решении.
  • можно делать горячие правки бизнес-логики и вида прямо из личного кабинета разработчика (без необходимости компиляции, заливки кода на сервер через GIT).
  • скорость разработки значительно выше, т.к. все собирается из готовых модулей с добавлением SQL кода для реализации бизнес-логики под проект.
  • основные технологии поддержки системы: SQL - для извлечения данных и бизнес-логики, Bootstrap - для стилизации. 
  • легко портировать новые решения на платформу с другого решения, т.к. любая функциональность на базе платформы - это по сути SQL пакет. 

Для создания и сопровождения решений на базе платформы Falcon Space надо знать 2 популярные технологии. Для управления бизнес логикой надо знать SQL (MS SQL Server) - по сути, это стандарт де-факто по манипуляции данными в базе данных. Для управления внешним видом используется популярный фреймворк Bootstrap. 

Опытный разработчик, знающий хорошо SQL и базово знающий основы HTML сможет за 1-2 недели разобраться и научиться создавать новый функционал на базе платформы и поддерживать существующие решения. 

Для этого у нас есть обширная документация по платформе, а также набор видео по использованию платформы на канале Youtube. Документация написана на английском и русском языках. 

Система поддерживает несколько уровней локализации. Можно переводить как интерфейс кабинетов пользователей, так и сами данные. 

В документации расписаны подробно методы настройки локализации, и они не требует каких-то кардинальных переработок функционала. 

Также можно сделать так, что для системы база будет одна, а домены будут использоваться разные для разных стран/языков. 

Если в вашей команде есть англоговорящие разработчики, то они могут воспользоваться нашей документацией на английском языке.  

Платформа - это ядро, которое позволяет создавать практически любое веб-приложение (CRM, площадка, многопользовательские учетные системы).

Решение - это реализация на базе платформы конкретного сайта, заточенного под определенную задачу (например, Аукцион исполнителей).

Решение также может задействовать любые возможности платформы и развиваться в плане бизнес-логики и внешнего вида.

Все возможности платформы можно посмотреть здесь - Возможности платформы Falcon Space

Система спроектирована таким образом, что вы можете самостоятельно добавлять возможности в своем проекте - делать новые интеграции с внешними системами, создавать новую бизнес логику, новые формы, таблицы, страницы и т.д.

Общий порядок работы над проектом описан здесь.

Наш подход к созданию технического задания описан в данной статье.

Также в ней вы сможете найти шаблон нашего документа проектирования. 

Если кратко - у нас есть адаптивный сайт с технологией PWA, которая позволяет запускать сайт как приложение на телефоне со значка на экране телефона.

Отдельных нативных приложений у платформы нет, и мы не занимаемся разработкой подобных приложений. Однако есть возможность "скрестить" платформу с внешним мобильным приложением через универсальный API.

Подробнее про нативные мобильные приложения vs адаптивный сайт с поддержкой PWA.;

Все зависит от конкретного проекта. У кого-то в базе 1000 строк в самой большой таблице, а у кого-то это могут быть миллионы строк. 

Важно понимать в целом структуру возможных расходов. 

Детализация расходов описана в данной статье про снижение стоимости владения продуктом

Мы не занимаемся продвижением проектов. Мы сосредоточены на техническом обеспечении проекта всем необходимым.

Мы подготовили большой цикл статей для лучшего понимания вопроса становления проекта и его дальнейшего продвижения в сети.

Основы продвижения площадки

Руководство Как создать свой продукт

Пользователи группируются по ролям. Роль - это набор определенных прав в системе.

Меню личного кабинета определяется набором ролей у пользователя

У страниц и компонентов есть поля Роли, в которых можно перечислить через запятую список ролей, которые имеют доступ к объекту.

Более тонко доступ можно настроить через SQL (практически в каждую хранимую процедуру передается @username, по которому можно огранизовывать проверку доступа к данным).

Для размещения приложения, вы можете использовать либо Win хостинг, либо VPS с Windows Server. 

В качестве хостинга подойдет минимальный тариф Win хостинга от Reg.ru - Win-0.

Если говорить о сервере Windows Server, то достаточно будет 2Гб RAM, 40Г диск, и 1 ядро CPU.

Вы можете использовать либо универсальный механизм импорта-экспорта через Excel либо через API, причем адаптировав его под свои конкретные нужды. 

В случае с Excel система выдает некий шаблон экспорта, который вы заполняете данными и загружаете в систему по бизнес-логике, которая будет прописана для данного импорта. 

В случае с API вы можете программно из другой системы передавать данные по HTTPS протоколу в формате XML, JSON. 

В данной статье мы проводим анализ нагрузки на каталог.

Здесь проведены тесты новой версии коробки на базе ASP.NET Core.

В целом вся производительность определяется запросами SQL, написанными под проект, и мощностью сервера.

Сама система практически не создает дополнительных затрат или проблем быстродействия. 

Обновление представляет из себя publish-проект .NET. 

Для выполнения обновления необходимо распаковать архив обновления в папку приложения. 

Обновления предоставляются партнерам или владельцам экземпляра платформы. 

Сихронизация объектов БД выполняется отдельным процессов в полуручном режиме (например, в Management Studio). 

Обновления идут общим потоком и фиксируются на сайте. Все обновления вы можете посмотреть здесь - Обновления платформы Falcon Space

Ежемесячно выходит релиз платформы, содержащий все доработки, сделанные за период. В случае критичных правок выпускается промежуточный релиз. 

При выполнении процедуры обнволения обновляется только ядро платформы.

Синхронизация таблиц БД выполяется вручную (т.к. могут быть значительные изменения в клиентском проекте). 

Да, можно. Причем экземпляр приложения никак не зависит от центрального сайта. 

Установка веб-платформы Falcon Space на сервер/хостинг

Платформа Falcon Space поддерживает текущие версии основных популярных браузеров - Chrome, Firefox, Safari, Яндекс.Браузер, Safari. 

Мы не поддерживаем Internet Explorer (IE). Причины описаны в этих статьях: 

Платформа не обращается в некий Центр для проверки лицензии. 

Вы можете использовать систему локально в своей сети без доступа к Интернету.

Главное условие работы программы - доступность экземпляра базы данных SQL Server для приложения (т.е. он должен также находится в локальной сети).

Вся работа разработчика заключается в написании кода хранимых продедур MS SQL в определенном формате.

Платформа разбирает ответ от MS SQL по определенному протоколу и выполняет нужные разработчику действия.

По сути, серверный код есть только у самой платформы, и он стабильный (редко изменяемый).

В бизнес-приложении весь код пишется на MS SQL, и он часто может меняться. За счет этого достигается стабильность серверного кода и упрощается локализация возможных проблем (обычно это некий код в хранимой процедуре).

Описание процесса создания функционала на платформе

Для этого нужно выбрать шаблон Пустой, и в поле страницы вы можете вставить полностью свой HTML (с тегами html, body, head).

Таким образом, можно внедрить любой лендинг.

В системе используется bootstrap для верстки, поэтому для упрощения поддержки во внешних элементах разметки также хорошо бы использовать Bootstrap.

Подробнее про создание кастомных страниц на платформе

Да, создаются новые страницы с указанием кода для URL.

Есть несколько зарезервированных слов (около 5), в остальном ограничений по адресу нет.

Каждая страница имеет свой HTML разметку, блоки CSS и JS, а также свою хранимую процедуру для установки дополнительных параметров.

Работа со страницами

Вы можете создавать свои JS компоненты и размещать их либо глобально, либо на определенных страницах.

Можно разместить код либо в отдельном файле JS, либо размещать код прямо на странцие (но в специальном блоке).

Для обращения к базе используется внутренний механизм Request JS. Он собирает определенные данные в виде параметров, отправляет запрос и обрабатывает ответ от сервера.

На сервере вызывается специальная хранимая процедура(заранее подготовленная), которая реализует определенную бизнес-логику.

Подробнее про запросы к БД из JS

Мы постоянно пополняем набор интеграций с другими системами. 

На платформе имеется универсальный API, который позволяет программно обращаться извне к платформе, а также делать практически любые запросы с платформы во внешние системы. 

API работает на базе HTTML GET или POST запросов. Форматы передачи данных - XML, JSON. 

Также имеется интеграция с Zapier (сервис по интеграции множества приложений). 

Более подробно про работу API 

Если вы знаете SQL, вы сможете довольно быстро научиться самостоятельно поддерживать свое решение. 

Начните с вводной статьи по Falcon Space для технических специалистов.

Полная документация по проекту находится здесь - техническая документация по Falcon Space

В разделе Руководства в документации мы публикуем различные кейсы, как реализовать на платформе ту или иную функциональность. 

Также вы можете подсматривать в Демостенде различные решения, это также даст понимание какие элементы можно реализовать на платформе. 

Для этого мы используем Внешние дейсвтия. Это специальные SELECT в хранимых процедурах, которые управляются вызовом тех операций, которые невозможно выполнить в SQL. 

Это отправка данных во внешние системы, шифрование, работа с файлами, архивация, работа с пользователями, вызов метода API и т.д. 

В ключевых процедурах компонентах платформа ожидает возможность использовать Внешние дейсвтия (Сохранение формы, Операция в таблице, Обновление поля в таблице и т.д.)

Подробнее про внешние действия

Для этого мы используем универсальный механизм API. 

Есть исходящий API (мы отправляем запросы из платформы), есть входящий API (методы, к которым обращаются внешние системы).

API построен на базе HTTPS Get/Post запросов в формате XML, JSON. 

Вся бизнес-логика методов API прописывается в хранимых процедурах. 

Подробнее про создание API на платформе

Для создания и поддержки решений нужно знать следующие технологии: 

  • MS SQL Server на уровне написания хранимых процедур. 80% времени разработчика - это изменение хранимых процедур. Все хранимые процедуры разрабатаваются по шаблону (никогда не создаются с нуля). 
  • Bootstrap для верстки. Bootstrap используется для кастомизации внешнего вида. Можно вывести форму в стандартном виде "Название - поле", а можно создавать свою кастомную разметку для красивых и сложных форм. Bootstrap нужен только в плане знания спец классов CSS для визуализации на самом базовом уровне.

Для более глубокой кастомизации нужно знать: 

  • JS (JSON, jQuery) - это позволит вам делать более сложную кастомизацию логики работы страниц. 
  • JSON, XML - для обработки структурированных данных для API сервисов.
  • CSS - для более глубокой кастомизации внешнего вида (но в большинстве случаев хватает стандартных классов Bootstrap)

Да, вы можете создавать свои решения на базе платформы, мы помогаем изучить платформу, а также консультируем по нюансам использования. 

Детали по партнерству с разработчиками

Вы можете описать проблему на форуме, либо связаться по общему whatsapp на сайте. 

Указывайте пожалуйста значимые детали: URL, скрин, пользователь, ID сущности (например, заказа), шаги воспроизведения, в чем именно несоответствие результата.

Для разработчика платформа дает следующий преимущества: 

  • ускорение разработки. Например, для создания базовой таблицы с редактированием, добавлением удалением и фильтрами нужно гораздо меньше времени, нежели в случае полноценной разработки. 
  • уменьшение себестоимости разработки. Разработка - это практически всегда стоимость затраченных часов разработчика. Платформа уменьшает эти затраты за счет узкого стека.
  • уменьшение числа ошибок. Чем меньше кастома в проекте, тем быстрее и более гладко создается функционал. Если ошибки возникают, то практически на 100% это где-то в конкретной процедуре SQL (т.е. локализация ошибки происходит достаточно быстро).
  • готовые возможности из коробки. Универсальный API, бот Телеграм, загрузка файлов, каталоги List - их можно быстро создать, настроив несколько компонентов и написав относительно шаблонный код в процедурах SQL. 

Более подробно про преимущества платформы можно узнать из статьи История создания веб-платформы Falcon Space

Вы можете смотреть видео на нашем канале Web-Automation в плейлисте FalconStart.

Также у нас есть внутренний курс, где вы можете на практике попробовать создавать различные функционалы на базе платформы.

Вы можете подать заявку на смотр демо на данной странице.

Вам будет выделен отдельный экземпляр, где вы сможете попробовать платформу с точки зрения разработчика.