Low-code
Low-code (технология низкого кода, низкокодовая платформа разработки, LCDP — от англ. Low-code development platform) — это способ создания программного обеспечения для компьютеров или автоматизированных систем с минимальным объёмом написания исходного кода[1]. Такие платформы предоставляют среду разработки приложений, обычно с использованием графического интерфейса пользователя (вместо исключительно написания кода; однако возможна потребность или возможность писать код вручную). Не следует путать с безкодовой платформой разработки.
Платформы низкого кода могут создавать полностью функционирующие приложения (программное обеспечение) в типовых сценариях или потребовать дополнительного кода для специализированных задач. Как правило, низкокодовые платформы используют высокий уровень абстракции и позволяют существенно сократить время традиционной разработки программ, ускоряя выпуск продуктов. Одно из ключевых преимуществ — вовлечение в разработку более широкого круга специалистов, а не только профессиональных программистов, но для соблюдения общих стандартов необходима грамотная организационная политика. LCDP позволяют снизить первоначальные издержки на внедрение, обучение, эксплуатацию и поддержку[2].
Истоки низкокодовых платформ восходят к языкам программирования четвёртого поколения и инструментам быстрой разработки программ 1990-х и начала 2000-х годов. Подобно предшественникам, LCDP используют принципы модельно-ориентированной архитектуры, автоматической генерации кода и визуального программирования[3]. Концепция пользовательской разработки («разработка конечным пользователем») была известна и ранее, но LCDP предложили новые способы её реализации. Сам рынок низкокодовых платформ берёт начало около 2011 года[4]. Термин low-code («низкий код», «низкокодовый»), закреплённый за технологией, был предложен только 9 июня 2014 года[2], когда им впервые воспользовался аналитик компании англ. Forrester Research. Вместе с no-code платформами технология низкого кода была охарактеризована как «чрезвычайно прорывная» журналом англ. Forbes в 2017 году[5].
Применение
В результате революции микрокомпьютеров предприятия массово обеспечили сотрудников компьютерами, что открыло возможности для широкой автоматизации бизнес-процессов с помощью программного обеспечения[6]. Необходимость автоматического создания, поддержки и модернизации такого ПО, а также разработки новых приложений под задачи бизнеса вынуждает программистов адаптировать продукты под конкретные нужды организаций[7]. Низкокодовые платформы разрабатываются с целью максимально ускорить запуск и использование приложений, способных эффективно поддерживать процессы и данные в организациях самых разных типов[8].
Восприятие
Исследовательская компания Forrester в 2016 году оценивала перспективу роста глобального рынка низкокодовых платформ до 15,5 млрд долларов США к 2020 году[9]. Данный рынок подразделяется на сектора: базы данных, управление запросами, мобильные устройства, процессы и приложения общего назначения[10].
Росту спроса на низкокодовые средства способствует их гибкость и простота освоения[11]. Изначально сфокусированные на специализированных сегментах, низкокодовые решения эволюционируют к универсальным платформам, где при необходимости возможно добавление кастомного кода[4].
Доступность мобильных решений — ещё один фактор роста популярности таких платформ[7]. Чтобы избавить разработчиков от необходимости создавать отдельные версии программ для разных устройств, низкокодовые пакеты, как правило, включают поддержку мультиплатформенности с самого начала[7].
Поскольку работа с такими платформами требует минимальных знаний программирования, практически любой сотрудник в команде разработки программ может овладеть их базовыми возможностями[12]. Функциональность вроде интерфейсов перетаскивания мышью облегчает визуализацию и создание приложений[9].
Вопросы безопасности и регуляторного соответствия
С ростом популярности платформ низкого кода усиливается озабоченность кибербезопасностью и соблюдением требований (compliance) в ПО, созданном с их помощью, особенно при обработке пользовательских данных. Проблемы безопасности могут быть связаны с высокой скоростью создания программ, а проблемы соответствия — с отсутствием должного управления процессом[11]. Вместе с тем мобильные приложения, создаваемые такими средствами, способствуют внедрению инноваций в области безопасности; при непрерывной разработке легче реализовать защищённые потоки данных.
Критика
Некоторые специалисты из сферы информационных и коммуникационных технологий сомневаются, подходят ли низкокодовые платформы для критичных корпоративных систем крупного масштаба[13]. Также высказываются сомнения, делают ли платформы такого класса разработку действительно дешевле и проще[14]. Помимо этого, некоторые CIOs опасаются, что внедрение низкокодовых платформ приведёт к росту числа неподдерживаемых приложений, создаваемых вне ведома основной IT-службы[15].