Действительно ли low-code — это «рак индустрии»?

внешний интерфейс
Действительно ли low-code — это «рак индустрии»?

«Блять, какой программист в наши дни не использует low-code инструменты? Ты действительно думаешь, что концепция low-code появилась недавно?Low-code всегда был продуктивным инструментом повышения производительности.. "

Это была моя первая реакция на статью под названием Low Code «Промышленный рак».

Что ж, успокойте свое волнение. Прежде чем начать, учитывая, что некоторые друзья могут не знать многого о разработке с низким кодом, давайте сначала представим, что такое понятие «разработка с низким кодом».

концепция низкого кода

Low-Code Development (LCD), концепция была официально предложена в 2011 году.Разработчики создают приложения в основном с помощью графического пользовательского интерфейса и конфигурации, а не полагаются в основном на написанный от руки код, как в традиционной модели.. Соответственно, программное обеспечение, предоставляемое разработчикам для реализации таких функций разработки с низким кодом, называется платформой для разработки с низким кодом (Low-Code Development Platform, LCDP).

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

Как видно из определения, то, как работает low-code разработка, зависит в первую очередь отРабота с графическим интерфейсом пользователя, включая элементы управления перетаскиванием и изменение конфигурации области, которую можно редактировать. Этот метод визуального развития восходит к более раннему периоду Dreamwaver. С ростом сложности front-end проектов этот метод уже не отвечает потребностям современных проектов и постепенно заменяется более профессиональной моделью инженерной разработки.

Однако потребность в быстрой генерации кода проекта никогда не исчезала. Люди также постепенно нашли два пути для достижения этой цели:

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

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

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

Типичные сценарии применения low-code разработки

Типичный сценарий применения low-code разработки — в процессе разработки промежуточных и фоновых систем на стороне ПК по следующим причинам:

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

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

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

  • Разработка с низким кодом на основе написания JSON

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

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

2: Если вы изучили основные принципы работы браузеров, то знаете: содержимое каждой страницы в браузере в конечном счете сводится кСинтаксическое дерево DOM (DOM Tree) + стиль (Style) + логика динамического взаимодействия (Dynamic Logic).

3: В современной компонентной разработке компонент, определяемый спецификацией, содержит поддеревья DOM и стили для определенных функций. Таким образом, содержимое страницы можно определить как:Дерево компонентов + логика динамического взаимодействия (динамическая логика).

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

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

Код на рисунке ниже является примером синтаксического дерева компонентов Мы показываем режим разработки с низким кодом, написав простое синтаксическое дерево JSON и соответствующий компилятор.

Но с другой стороны, у этого метода есть и недостатки:

эффективность ввода: Судя только по описанию структуры компонентов, объем кода, описанного с использованием JSON, больше, чем JSX-синтаксис той же структуры.Для опытных фронтенд-разработчиков обычно невозможно ощутить улучшение эффективности с первого раза.

стоимость обучения и памяти: В связи с введением новой схемы синтаксиса JSON затраты на обучение неизбежны для фронтенд-разработчиков, бэкэнд-разработчиков или непрофессионалов. Кроме того, разные компоненты имеют разные свойства, и это также проблема объема памяти, который нужно гибко использовать в реальном процессе записи. Многократный просмотр документации приведет к падению эффективности (для решения этой проблемы оптимизация заключается в использовании дополнительной функции фрагментов IDE для создания соответствующих подсказок по синтаксису).

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

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

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

  • Разработка с низким кодом визуальной операционной платформы

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

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

  • Сначала выберите Компоненты на левой панели.

  • Затем перетащите в среднюю область предварительного просмотра и поместите его в соответствующий блок-контейнер.

  • Наконец, отладьте недавно перемещенные свойства компонента на правой панели.

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

Существует множество продуктов разработки с низким кодом, включая коммерческие продукты, такие как Kony, OutSystems, Mendix, Appian, iVX (внутренний) и т. д., а также продукты с открытым исходным кодом, такие как Alifeibing, Baidu Amis, Shellhetu, Vvvebjs, react-visual -редактор и др. Я не буду представлять их здесь по одному, если вам интересно, вы можете найти дополнительную информацию.

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

Кроме того, бэк-энд эксплуатация и обслуживание имеют безсерверные, почему бы фронт-энду не иметь low-code, не для улучшения технических возможностей, а для беспокойства по ерунде. Грубо говоря, индустрия программистов сама по себе техническая профессия, точно так же, как плотник и кузнец в первые годы, ее неизбежно заменит зрелая индустриализация. Если индустрия программирования десятилетиями продолжает нуждаться в большой рабочей силе, она действительно находится в стагнации. Как и сейчас, десять лет назад, вы могли написать немного HTML+CSS и подать заявку на работу разработчика внешнего интерфейса.Разве эти строительные инструменты и коды фреймворков не являются проявлением низкого кода?

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

Спокойной ночи, 42...