Low Code-платформы — можно ли обойтись без программиста?
Постоянная конкуренция между разработчиками ИТ-решений за снижение стоимости и сроков разработки создает широкие перспективы для развития, так как заставляет искать новые подходы к привычным задачам. К таким интересным направлениям, активно набирающим популярность, относятся Low code-платформы.
Так как само понятие Low-code довольно размыто в профессиональной сфере, то условимся понимать под ним инструмент для разработчиков.
Методы разработки Low-code и No-code (Zero-code) набирают все большую популярность —только за время пандемии вложения в такие платформы выросли на 26%. Многие эксперты считают, что рост таких платформ будет составлять более 30% каждый год. Gartner, например, прогнозирует рост этого рынка до $125 млрд к 2027-му году.
Платформы Low-code обещают возможность создать сайт, интернет-магазин или приложение, а также автоматизировать бизнес-процесс без навыков программирования и участия профессиональных разработчиков. Возможно ли такое? Давайте разбираться.
Что же такое Low-code разработка?
Термин Low-code впервые был предложен в 2011 году: в одном из отчетов Gartner предсказывалось появление платформ, позволяющих сделать разработку программного обеспечения быстрее, дешевле и качественнее. А уже в 2012 году был выпущен первый продукт, реализовавший данную концепцию.
Идея состоит в том, чтобы использовать готовые программные блоки и переключиться от классического программирования к визуальному программированию. Работающий с Low-code платформой специалист может использовать неограниченное количество таких готовых блоков, соединяя их между собой, что уменьшает количество кода, которое требуется написать. Это делать систему проще и облегчает дальнейшую поддержку.
Переиспользование готовых блоков, уже оттестированных и доработанных, кардинально сокращает время разработки, так как нет необходимости каждый раз «изобретать велосипед». В результате существенно сокращается не только время, требующееся на разработку, но и снижается количество дефектов. Кроме того, стоимость самой разработки также уменьшается.
Это другая модель, альтернативная классической разработке — со своими особенностями, своей методологией и требующая иного подхода.
Образно говоря, если при классическом программировании разработчик пишет все, что хочет, как будто на чистом листе, то при использовании Low-code на этом «листе» уже размечены и заданы некие паттерны. Low code-разработчик «рисует» по этим паттернам, но то, что там уже есть — т.е. возможности программиста при написании кода могут быть ограничены этими заданными рамками.
Обобщая, Low code-разработка — это:
- Визуальное программирование;
- Использование наработанных готовых блоков;
- Активное использование drag-and-drop механизмов;
- Снижение стоимости разработки до 3-х раз по сравнению с классической разработкой;
- Снижение времени на разработку продукта до 10-ти раз по сравнению с классической разработкой.
Большинство решений Low-code поддерживают кроссплатформенность и могут быть интегрированы с различными внешними системами. Кроме того, системы обладают огромной гибкостью и устойчивостью и в них уже внедрены системы безопасности.
А программист нужен?
Зачастую, начиная работать с Low-code, бизнес-пользователи думают, что смогут полностью обойтись без разработчиков. Это не совсем так и зависит от области применения Low code-платформы.
Например, решить какую-то простую задачу можно и без навыков разработки. Это очень большой плюс, так как привлекать программистов к каким-то мелким задачам слишком затратно, а Low-code дает пользователям возможность сделать инструмент удобнее, исходя из их собственных нужд.
Однако для решения более сложных задач все равно придется привлекать специалистов.
Но технология продолжает развиваться, и все большее количество задач может решаться без привлечения разработчиков.
Несмотря на то, что совсем обойтись без программиста не получится, использование Low code-платформ существенно оптимизирует разработку.
Во-первых, специалист, работающий с Low code-платформой, может быть не так сильно подготовлен по сравнению с занимающимся обычной разработкой. Зачастую квалифицированный пользователь вполне может совершать базовые операции — например, системные администраторы с соответствующими навыками могут эффективно участвовать в разработке.
Во-вторых, Low-code позволяет оптимизировать сам процесс и сократить команду. Если при стандартной разработке в команде у всех специалистов есть какие-то конкретные роли, то здесь они унифицируются. Например, круг задач, которые может решить аналитик, существенно расширяется.
В-третьих, Low-code дает возможность техническим специалистам и бизнес-пользователям сотрудничать и быстрее создавать нужные программные решения. С помощью решений Low-code можно проводить «обкатку» идей, оценить результат и внести необходимые доработки, не привлекая большую команду аналитиков и разработчиков. Это отличный инструмент для получения быстрой обратной связи от пользователей.
Быть или не быть?
Вопрос о том стоит ли использовать Low-code остается открытым. Прежде всего, необходимо учитывать следующие факторы:
- Есть риск выбрать платформу, которая не будет развиваться в будущем, или использовать платформы, для которых нет поддержки в России. Поэтому очень важно найти такого поставщика, который будет поддерживать и развивать свою платформу вместе с вами и реагировать на запросы.
- Использование Low-code может быть неоправданно, так как не все операции возможно стандартизировать, или в дальнейшем придется потратить слишком много средств на адаптацию и т. д.
- Нужно убедиться, что не возникнет противоречий с ИТ-подразделением относительно использования Low-code — ведь это совсем другой метод разработки. Кроме того, бизнес-пользователи и заказчики также должны быть готовы вкладываться в обучение Low-code.
- Не стоит забывать, что Low-code платформы подходят не всем — в плане дизайна, удобства использования, способности решать сложные задачи и пр. Low code-платформы могут иметь ограниченный функционал по сравнению с традиционным программированием, ограничивать масштабируемость и т. д.
- Пока не все Low code-платформы поддерживают кроссплатформенность, поэтому стоит проверить заранее, возможно ли интегрировать данное решение с вашими системами.
Решение в пользу использования системы Low-code каждой компании предстоит решать индивидуально — исходя из собственного опыта, потребностей, готовности и множества других факторов. Ведь это не просто новая технология, а другая парадигма, отличающаяся от стандартного программирования, и разработчик должен быть готов к этому.