Разработчики открыли методологию высокоскоростного программирования

Опубликовано: 2020-08-19

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

С какими проблемами сталкиваются стартапы и разработчики программного обеспечения?

  1. Качество разработки. Мы также включим безопасность и совместимость. Все, что может вызвать проблемы и сбои в работе приложения или всей системы. Сегодня IT-сфера развивается настолько быстро, что новые продукты стремятся как можно быстрее попасть на рынок, что сказывается на их качестве. Причины могут быть поразительно разнообразны, от недостаточно тщательного тестирования до использования «сырых», не обкатанных фреймворков.
  2. Стоимость разработки. Взрывной рост ИТ-сектора привел к высокому спросу на разработчиков, что привело к повышению заработной платы и повышению цен на конечные программные продукты. Надо признать, что разработка программного обеспечения — дорогое и затратное производство.
  3. Скорость развития. Современный рынок отождествляет успех продукта со скоростью его доставки на рынок. Кроме того, фактор скорости связан с двумя предыдущими вызовами (качество и стоимость).

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

Теперь перейдем к предмету нашего обзора, а именно к JavaScript Framework Webix и его создателю Максиму Кожуху.

Максим — глава Webix и архитектор программного обеспечения с более чем 20-летним опытом и обширными знаниями в области веб-технологий. Начал заниматься ИТ в эпоху Netscape и прошел через все тенденции, катастрофы и изобретения веб-индустрии.

  • Итак, Макс, может ли ваш продукт разрубить гордиев узел «тройного ограничения» и сделать программные продукты не только дешевыми, но и качественными, и производиться в кратчайшие сроки?
  • Нет.
  • Возможно, это конец нашего интервью, но давайте дадим вам шанс рассказать нам больше.
  • Спасибо вам за эту возможность. Действительно, мы не можем давать ложных обещаний. Все попытки унифицировать процесс разработки ПО тем или иным образом идут вразрез с различными ограничениями и условностями. Сегодня вы можете быстро и дешево создать одностраничный сайт на любой блог-платформе. Но это не будет профессиональным решением. Можно использовать невероятно крутые системы вроде Sitecore, но вряд ли это доступное решение.

Наш продукт — удачная попытка разорвать порочный круг цена-качество в очень узкой, но популярной сфере — создании бизнес-ориентированных веб-приложений. И не столько целые веб-приложения, сколько пользовательский интерфейс для веб-приложений.

  • Почему пользовательский интерфейс? Было бы логичнее сосредоточиться на бэкенде или на чем-то более трудоемком?
  • Есть несколько причин. Во-первых, разработка пользовательского интерфейса может быть такой же дорогой, как и серверная часть. Во-вторых, многие идеи и стартапы сосредоточены на визуализации требований пользователей в виде слоя пользовательского интерфейса. Прототип пользовательского интерфейса — это то, что можно показать инвесторам, чтобы получить финансирование. В-третьих, вся сфера UX сильно недооценена, что выражается либо в недостаточном количестве UI-разработчиков, либо в недостаточной их квалификации. Мы знаем об этих проблемах, так как являемся крупным поставщиком программного обеспечения и создали продукт Webix в первую очередь для себя. И только потом мы вывели его на рынок.
  • Тем не менее, почему бы не пойти по пути Vaadin, который занимается разработкой серверной части и интерфейса на едином фреймворке на основе Java?
  • Все дело в гибкости и универсальности. Мы не были связаны какими-либо рамками или системными ограничениями. Загляните в наш блог, в раздел кейсов, и там вы найдете примеры реализации для самых разных платформ, вплоть до .Net на базе SharePoint.
  • Расскажите подробнее о самом продукте.
  • Webix — это UI-фреймворк и библиотека JavaScript. Другими словами, это инструмент веб-разработки для быстрой разработки веб-интерфейсов. Продукт предназначен как для профессиональных разработчиков, которые хотят сэкономить время на разработке слоя пользовательского интерфейса, так и для начинающих разработчиков, которые хотят как можно скорее начать приносить пользу своему работодателю. С практической точки зрения Webix — это более 100 элементов управления пользовательского интерфейса и виджетов, которые можно использовать для создания любого бизнес-приложения. В дополнение к этому пользователи получают еще один набор инструментов для более удобной и быстрой разработки: микрофреймворк для правильной поддержки и настройки приложений, визуальный конструктор пользовательского интерфейса, каталог шаблонов, документацию и поддержку пользователей. Также хотелось бы выделить сложные виджеты. Это полноценные SPA-приложения для самых популярных прикладных задач: Управление файлами, Управление пользователями, Управление задачами, Планировщик, SQL-запросы, Чат-мессенджер.
  • Звучит стандартно. Чем вы отличаетесь от других библиотек?
  • Потому что мы не пытаемся решить все проблемы сразу. Мы сосредоточились на сложных бизнес-функциях, создали целую экосреду, в которой эти функции работают идеально, и довели функционал до совершенства. Например, мы не будем предлагать специализированные решения для каждого отдельного фреймворка или системной платформы. Опытные разработчики легко справятся с этим с помощью существующей документации. Но мы предлагаем высокопроизводительные и многофункциональные компоненты. Например, наш DataGrid имеет более 20 функций (поддержка буфера обмена, ярлыки, контекстное меню, перетаскивание, фильтры, проверка данных, нумерация страниц, rowspan, colspan, группировка сетки). Еще одна особенность Webix — выверенный дизайн. Мы продвигаем наш продукт как носитель экспертизы Material Design для любых проектов. Мы много работали над тем, чтобы все виджеты были идеально совместимы. Пользователи Webix получают правильный и красивый дизайн материалов прямо из коробки.
  • Не является ли низкая скорость работы платой за такой навороченный функционал?
  • Наоборот. Webix показывает одну из лучших скоростей рендеринга для виджета DataGrid (согласно исследованию специалистов Bryntum). Обратите внимание, что это не наше исследование, его провели конкурирующие разработчики.
  • Каков порог входа для вашего продукта?
  • Вы должны любить объектно-ориентированное программирование и знать основы JavaScript. Остальное вы можете узнать самостоятельно с помощью учебных материалов, интерактивных руководств, примеров и готовых шаблонов.
  • И все же, какой смысл в вашем продукте, когда есть Angular или React?
  • Это один из наиболее часто задаваемых вопросов. Мы не конкурируем с глобальными платформами, такими как Angual или React. Мы органично их дополняем. Webix легко интегрируется в любую архитектуру. Да, указанные фреймворки имеют свои библиотеки компонентов. Но они не так функциональны и универсальны, как наши решения. Опытный разработчик знает, сколько времени и ресурсов он потратит на настройку или реализацию необходимых функций чистой библиотеки React. В то время как Webix уже предлагает готовое решение. И вот мы коснулись краеугольного камня нашего разговора — «тройного ограничения».

Мы создали наш продукт для решения трех важных бизнес-кейсов:

  1. Прототипирование. Прототип пользовательского интерфейса является неотъемлемой частью процесса бизнес-анализа — первой фазы цикла разработки программного обеспечения. Webix позволяет быстро и качественно получить прототип пользовательского интерфейса, даже не прибегая к программированию. Или получить MVP как можно скорее. И все это на самом раннем и ответственном этапе развития проекта.
  2. Готовые приложения-виджеты для популярных прикладных задач. Например, наш User Manager — это полноценная панель администратора, которая включает в себя серверную часть и может выступать в качестве ядра любого многопользовательского приложения.
  3. Высокоскоростное программирование слоя пользовательского интерфейса. Webix прост и интуитивно понятен для тех, кто хорошо разбирается в объектно-ориентированном программировании. В обмен на некоторые усилия по изучению основ Webix дает вам фантастические функциональные возможности.
  • Тем не менее, есть некоторые сомнения. Может быть, есть какая-то магия Webix, привлекающая пользователей?
  • Да, это своего рода магия. Вот красивый пример того, как с помощью 12 строк кода получить готовое бизнес-приложение. И это работает очень круто и вызывает ВАУ-эффект благодаря трём факторам:
  1. Предопределенный контент. Это очень важный компонент, потому что недостаточно просто нарисовать элемент управления, его нужно наполнить контентом, чтобы понять, правильно ли он отображается, подходит ли он вам и правильно ли выставлены размеры. Только эта функция экономит несколько рабочих часов для разработчика.
  2. Полнофункциональное живое приложение. Здесь работают все элементы управления и функции. Пользователь может взаимодействовать с приложением без дополнительных настроек.
  3. Потрясающий дизайн.

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

  • Да, теперь я признаю, что это может быть впечатляющим. Мы говорили о качестве и скорости разработки. Но при чем здесь цена?
  • Webix распространяется как бесплатная библиотека с открытым исходным кодом. Это полная версия продукта, но она не включает в себя некоторые виджеты и сложные виджеты. Для тех, кому нужно больше функциональности или кому нужна коммерческая лицензия для выпуска коммерческих продуктов, мы предлагаем Webix Pro. Цена начинается от 450 долларов США за индивидуальную лицензию для одного разработчика.
  • Объясните, почему вы не можете использовать пакет с открытым исходным кодом для разработки коммерческого продукта. Это запрещено?
  • Нет это не так. Конечно, вы можете использовать пакет с открытым исходным кодом для разработки коммерческого продукта в соответствии с правилами лицензии GNU GPL3. Но главный вопрос заключается в полноте прав интеллектуальной собственности. Если вы собираетесь покупать или продавать программные продукты в будущем, вам следует изучить лицензионный профиль продукта, чтобы понять, где начинаются и заканчиваются ваши права на интеллектуальную собственность. Это намного проще сделать с коммерческой лицензией.
  • Благодарим вас за интересный рассказ и желаем вам успехов в развитии этого увлекательного продукта.

Есть какие-нибудь мысли по этому поводу? Дайте нам знать внизу в комментариях или перенесите обсуждение в наш Twitter или Facebook.

Рекомендации редакции:

  • Безопасно ли запускать эмуляторы Android на вашем компьютере?
  • Преимущества услуг по разработке IoT
  • Процесс разработки приложений: 6 шагов от идеи до готового продукта
  • На саммите разработчиков Android от Google были представлены изменения в обновлениях приложений и поддержка складных экранов.