Есть преимущества, которые делают low-code ценным инструментом, но организациям следует реалистично относиться к тому, что стоимость и привязка к поставщику могут создать проблемы, пишет на портале The New Stack Тони Грэм, менеджер по маркетингу продуктов компании Sonar.

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

Несмотря на то, что когда-то инструменты low-code считались диковинкой, за последние пять лет они претерпели невероятную эволюцию. Gartner ожидает, что в 2026 г. этот сектор заработает 44,5 млрд. долл., а 75% корпоративных приложений будут разрабатываться с помощью этих решений.

Не заблуждайтесь: low-code не заменит традиционный «чистый код» (clean code) — последовательное, целенаправленное, адаптируемое и ответственное кодирование, которое обеспечивает высокое качество ПО, критически важного для результатов бизнеса. Но это не делает его недостойным выбором в любой ситуации.

Так в каких же сценариях low-code имеет наибольший смысл? Как максимально эффективно вооружить разработчиков этими решениями, чтобы они могли выполнять свою работу, используя их сильные стороны и смягчая слабые при правильном применении?

Low-code ускоряет процесс разработки

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

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

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

Но low-code не является универсальным и всеобъемлющим решением. Так в каких случаях разработчикам следует воздержаться от применения этих инструментов?

Low-code имеет ограничения

Главный недостаток этих решений заключается в том, что они не могут быть настроены в той же степени, что и более традиционный код. Что вы видите, то и получаете: ваши разработчики могут перетаскивать иконки, легко и быстро создавая очень простые приложения, но для более сложных проектов эти инструменты не подходят. Их использование для работы над такими проектами только создает дополнительные накладные расходы, которые в конечном итоге доставляют вашим разработчикам лишнюю головную боль. Эти инструменты не могут работать со сложной бизнес-логикой; ратуя за скорость, они снижают возможности по устранению недостатков в приложении.

Несмотря на то, что модификация в платформах low-code ограничена, многие из этих систем допускают расширения с помощью стандартных языков программирования, таких как Java, C# и JavaScript. Однако для создания этих расширений используются традиционные среды разработки, которые находятся за пределами платформы low-code. Если расширения кода не соответствуют стандартам чистого кода, они могут привнести уязвимости, ошибки и неэффективность в low-code-приложение. Хотя такая расширяемость позволяет в некоторой степени настраивать платформы low-code, она создает дополнительные проблемы, такие как добавление тонкостей, с которыми может справиться только профессиональный разработчик.

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

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

Будущее low-code

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

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

Расширяя свои портфели инструментов разработки ПО, компаниям следует рассматривать low-code как средство быстрого создания кода и помощи разработчикам в освоении их значительной рабочей нагрузки, которая будет расти тем больше, чем больше бизнес будет зависеть от ПО. В то же время они должны помнить, что, как и в случае с генеративным ИИ, лучший способ создать высококачественное, безопасное, поддерживаемое и надежное ПО — это использовать эти инструменты, следуя лучшим практикам чистого кода.