当前位置 - 무료 법률 상담 플랫폼 - 법률 문의 - 로우코드란 정확히 무엇인가요?

로우코드란 정확히 무엇인가요?

소개: 로우코드란 무엇인가요? 왜 로우코드가 필요한가요? 로우코드가 프로그래머를 실직하게 만들까요? 이 글은 로우코드 분야의 기본 개념, 핵심 가치, 업계 현황을 요약해 로우코드에 대한 포괄적인 이해를 제공합니다.

로우코드란 무엇인가요?

'로우코드'란 무엇인가요? 이 말을 처음 듣는 분이라면 제가 상사로부터 이 말을 들었을 때 느꼈던 것과 같은 속마음을 갖고 계실 것입니다. '뭐? "로우 코드"? "코드"가 코드를 의미하는 것은 알지만 "낮음"이라는 단어는 무엇을 의미합니까? 혹시 내가 급하게 작성한 코드가 보기 흉하고 "낮다"는 것을 상사가 알아차린 것은 아닐까... 생각이 너무 많은데, 어떻게 상사가 직접 코드를 검토할 수 있겠는가? "낮은 수준의 프로그래밍"에서 "낮음"을 의미합니까? 상사는 마침내 내가 프로그래밍 마법사가 하루 종일 Java 비즈니스 코드를 쌓을 때까지 기다리는 것이 너무 낭비적이라는 것을 깨닫고 고성능 C 언어 네트워크 라이브러리를 작성하도록 나를 후퇴로 보내고 싶었습니다... 분명히 그렇지 않습니다. , 상사는 어떻게 그런 기술적 감정을 가질 수 있습니까? 그게 무슨 뜻이에요? 검색 지능이 감성 지능보다 높은 프로그래머로서 Google에 물어볼 수 있는 사람은 상사에게 절대 묻지 않을 것입니다. 그래서 잠시 후 아무 생각 없이 첫 번째 검색 결과를 열었습니다: 로우코드 개발 플랫폼.

위키피디아 정의

위키에 대한 이러한 정의에서 몇 가지 핵심 정보를 추출할 수 있습니다. 로우 코드 개발 플랫폼(LCDP) 자체도 일종의 소프트웨어로서 개발자에게 다음과 같은 기능을 제공합니다. 응용 소프트웨어를 만들기 위한 개발 환경입니다. 개발환경이라는 단어를 보면 친근해 보이지 않나요? 프로그래머에게 있어 로우코드 개발 플랫폼의 성격은 IDEA, VS 등의 코드 IDE(통합 개발 환경)와 거의 같습니다. 둘 다 개발자에게 서비스를 제공하는 생산성 도구입니다. 기존의 코드 IDE와 달리 로우코드 개발 플랫폼은 고차원적이고 사용하기 쉬운 시각적 IDE를 제공합니다. 대부분의 경우 개발자는 프로그래밍을 위해 기존의 손으로 작성한 코드를 사용할 필요가 없지만 그래픽 드래그 앤 드롭, 매개변수 구성 등과 같은 보다 효율적인 방법을 통해 개발 작업을 완료할 수 있습니다.

Forrester 정의

Wiki 설명에 따르면 "로우 코드"라는 용어가 Forrester에서 2014년 초에 제안했음을 알 수 있습니다. 이는 로우 코드에 영향을 미칩니다. 개발 플랫폼의 조상 수준 정의는 다음과 같습니다.

이미지 설명을 입력하려면 클릭하세요.

Wiki 버전과 비교하면 이 정의는 가져온 핵심 가치를 더 명확하게 하는 경향이 있습니다. 로우 코드별: 로우 코드 개발 이 플랫폼을 사용하면 비즈니스 애플리케이션을 신속하게 제공할 수 있습니다. 즉, 로우코드 개발 플랫폼의 초점은 애플리케이션을 "더 빠르게" 개발하는 것입니다. 더 중요한 것은 이 속도가 파괴적이라는 점입니다. 2016년 Forrester 설문 조사에 따르면 대부분의 기업은 로우 코드 플랫폼이 개발 효율성을 5~10배 높이는 데 도움이 되었다고 보고했습니다. 그리고 우리는 로우 코드 기술, 제품 및 산업이 계속해서 성숙해짐에 따라 이러한 개선 배수가 계속해서 증가할 수 있다고 믿을 만한 이유가 있습니다. 로우코드 개발 플랫폼은 비즈니스 애플리케이션의 개발 비용을 줄일 수 있습니다. 한편으로 로우 코드 개발은 전체 소프트웨어 수명 주기 프로세스에서 더 적은 투자를 필요로 합니다(코드 작성, 환경 설정 및 배포 비용이 더 간단함). 반면에 로우 코드 개발은 개발자의 사용 임계값도 크게 줄입니다. , 비전문 개발자는 간단한 IT 기본 교육을 받은 후 빠르게 취업할 수 있으며, 이를 통해 회사의 기존 인적 자원의 모든 측면을 완전히 동원하고 활용할 수 있을 뿐만 아니라 값비싼 전문 개발자 리소스에 대한 의존도를 크게 줄일 수 있습니다.

로우코드 핵심 기능

위의 정의와 분석을 바탕으로 로우코드 개발 플랫폼의 다음 세 가지 핵심 기능을 요약하는 것은 어렵지 않습니다.

클릭하세요. 전체 스택 시각적 프로그래밍을 설명하려면 그림을 입력하세요. 시각화에는 두 가지 의미 수준이 포함됩니다. 하나는 편집 중에 지원되는 클릭, 드래그 및 구성 작업이고, 다른 하나는 편집이 완료된 후 WYSIWYG 미리 보기 효과입니다. 기존 코드 IDE도 일부 시각화 기능(예: 초기 Visual Studio의 MFC/WPF)을 지원하지만 로우 코드는 전체 애플리케이션 개발과 관련된 모든 기술적 측면을 다루는 전체 스택, 엔드투엔드 시각적 프로그래밍을 강조합니다( 인터페이스/데이터/논리).

전체 라이프사이클 관리: 원스톱 애플리케이션 개발 플랫폼인 로우코드는 설계 단계부터 시작하여(일부 플랫폼은 더욱 발전된 프로젝트 및 수요 관리도 지원함) 개발, 구축, 구축을 거쳐 애플리케이션의 전체 라이프사이클 관리를 지원합니다. 테스트 및 배포부터 다양한 운영 및 유지 관리(예: 모니터링 및 경보, 온라인 및 오프라인 애플리케이션) 및 온라인 연결 후 운영(예: 데이터 보고서, 사용자 피드백)까지. 로우코드 확장성: 로우코드 개발을 사용할 때 대부분의 경우 코드는 여전히 필수 불가결합니다. 따라서 플랫폼은 사용자 정의 추가 등 필요한 경우 소량의 코드를 통해 애플리케이션의 모든 수준을 유연하게 확장할 수 있도록 지원할 수 있어야 합니다. 구성 요소 및 테마 CSS 수정, 사용자 정의 논리 흐름 작업 등 가능한 요구 시나리오에는 UI 스타일 사용자 정의, 레거시 코드 재사용, 전용 암호화 알고리즘 및 비표준 시스템 통합이 포함됩니다.

단순히 코드를 적게 작성하는 것만이 아닙니다

심각한 초보 질문으로 돌아가서: 로우 코드에서 "낮음"은 무엇을 의미합니까? 대답은 이미 명확합니다. 추상화 수준이 매우 낮다는 의미는 아닙니다(반대로 로우 코드 개발 방법의 추상화 수준은 기존 프로그래밍 언어보다 한 수준 더 높음). 코드가 매우 낮습니다(반대로, 로우 코드로 생성된 코드는 일반적으로 신중하게 유지 관리되고 반복적으로 테스트되며 전반적인 품질은 대부분의 손으로 작성한 코드보다 낫습니다). 그러나 단순히 "코드를 적게 작성" - 손으로만- 몇 가지 필요한 상황에서 코드를 작성하고 대부분의 경우 시각화 해결과 같은 비코딩 방법을 사용할 수 있습니다.

조금 더 깊이 살펴보면 로우 코드는 단순히 코드를 적게 작성하는 것이 아닙니다. 코드를 적게 작성할수록 버그도 줄어듭니다("작업이 적고 실수가 적습니다"라는 말이 있듯이). 테스트할 코드가 줄어들고 개발 단계 외에도 작성할 수 있는 테스트 사례가 줄어들며 플랫폼은 후속 애플리케이션 구축도 처리합니다. 배포 및 관리가 가능하므로 운영 및 유지 관리 작업이 줄어듭니다(Low-Code → Low-Ops).

그러나 적은 것이 궁극적인 목표는 아닙니다. 단순히 적은 효과를 얻으려는 경우 수요를 줄이고 인력을 줄이고 품질 요구 사항을 낮추는 것도 마찬가지입니다. 로우 코드의 철학은 Less is More, 더 정확하게 말하면 Do More with Less입니다. 즉, 더 많은 기능, 더 빠른 출시, 더 나은 품질, 더 적은 비용으로 "필요, 원하는, 더 적은 비용"이라는 Alibaba의 핵심 가치를 깊이있게 실천합니다. 그리고 원한다”.

이미지 설명을 입력하려면 클릭하세요

플랫폼의 책임과 과제

위에서 언급한 내용은 로우코드가 개발자에게 제공하는 기능과 매력, 그렇다면 서비스 제공자 및 애플리케이션 제공자로서 로우 코드 개발 플랫폼 자체는 어떤 책임을 져야 하며 어떤 과제에 직면하게 될까요? Alibaba Cloud가 주장하는 것처럼 "복잡함은 자신에게 맡기고 단순함은 다른 사람에게 맡기십시오"라고 해야 할까요? 이 문장이 참으로 심오하고 정의롭게 들리지만, 우리가 왜 까닭 없이 복잡함에 매달리고 스스로 고민을 해야 하는지 생각해 보신 적이 있으신지 궁금합니다. 복잡성을 제거하고 Alibaba Cloud 직원들에게 단순함을 남겨줄 수는 없을까요? 일이 너무 쉬워서 KPI 값이 반영되지 않아서일까, 아니면 집에서 먹는 음식이 회사 야식만큼 맛있지 않아서일까?

오랜 고민 끝에 열역학 제1법칙에서 답을 찾았습니다. 애플리케이션 개발의 전체 복잡성은 일정하며 전송만 가능하지만 허공에서 사라질 수는 없습니다. 개발자가 일을 줄이고 마음의 평화를 누리고 싶다면 플랫폼은 더 많은 일을 하고 최대한 많은 복잡성을 조용히 견뎌야 합니다. 마치 힘줄로 뒤덮인 곡예 배우처럼 높은 곳에서 돌고 도약하는 여자 파트너를 꾸준히 지지하고 있는 그는 위에 있는 사람은 더 가볍고 힘들지 않은 것처럼 보이지만, 아래에 있는 사람은 더 꾸준하게 온 힘을 다해야 한다. 힘. 물론 이것이 위의 여배우들이 편안하고 스트레스가 없다는 것을 의미하는 것은 아니지만, 그들은 서로 다른 업무 분업과 복잡성의 수준을 가지고 있습니다.

<맨먼스 신화>의 저자 프레드 브룩스에 따르면, 소프트웨어 개발의 복잡성은 본질적 복잡성(Essential Complexity)과 우발적 복잡성(Accidental Complexity)으로 나눌 수 있습니다. 전자는 문제를 해결할 때 내재된 최소한의 복잡성이며, 어떤 도구를 사용하는지, 풍부한 경험이 있는지, 아키텍처가 좋은지 등과는 아무런 관련이 없지만, 후자는 에서 도입되는 복잡성입니다. 실제 개발 과정.

일반적으로 본질적인 복잡성은 비즈니스에서 해결해야 하는 특정 문제 영역과 밀접한 관련이 있으므로 여기서는 이를 더 잘 이해하기 위한 "비즈니스 복잡성"이라고 부릅니다. 복잡성의 이 부분은 로우 코드를 포함한 어떤 개발 방법이나 도구로도 해결할 수 없습니다. . 우연한 복잡성은 일반적으로 개발 단계의 기술적 세부 사항과 밀접한 관련이 있으므로 이에 따라 "기술적 복잡성"이라고도 부르며, 복잡성의 이 부분은 로우 코드가 잘하고 해결하기에 적합한 부분입니다.

개발자로서 우리는 기본 기술 세부 사항을 보호하고, 불필요한 기술 복잡성을 줄이고, 비즈니스 복잡성에 더 잘 대처할 수 있도록 지원하기 위해 최선을 다합니다(유연하고 보편적인 비즈니스 시나리오의 요구 사항 충족). 로우코드 개발 플랫폼이 수행해야 하는 핵심 책임입니다.

이미지 설명을 입력하려면 클릭하세요

위의 책임을 이행하는 동시에 로우코드 개발 플랫폼은 개발자를 위한 제품으로서 개발자에게 간단한 직관적인 최고의 개발 경험. 이 뒤에 있는 막대한 작업량 외에도 "강력함"과 "사용하기 쉬움"이라는 두 가지 모순된 점 사이에서 균형점을 찾을 수 있어야 하며 두 가지 장점을 모두 갖기 어려울 수도 있습니다. 제품 포지셔닝과 대상 고객의 요구 사항에 맞게 조정하는 것은 일반적인 로우 코드 개발 플랫폼을 설계할 때 직면하는 가장 큰 과제입니다.

3. 로우코드 관련 개념 비교

순수코드(Pro-Code/Custom-Code)

'순수코드'란 단어일 수도 있다 일반적으로 전문 코드(Pro-Code) 또는 맞춤형 코드(Custom-Code)로 알려져 있지만 의미는 동일하며 전통적인 코드 중심(Code-Centric) 개발 모델을 나타냅니다. 제가 "퓨어 코드"를 선택한 이유는 "전문 코드"를 사용하면 로우코드가 비전문적인 것처럼 보이고, "커스텀 코드"를 사용하면 로우코드는 커스터마이징을 지원하지 못한다고 오해하기 쉽기 때문입니다. 사용자 정의 코드.

물론, 더 정확한 이름은 "하이 코드"라고 생각합니다(정확히는 로우 코드에 해당하지만 이름이 너무 못생겨서 싫습니다...). 전통적인 코드 IDE, 일부 개발 작업은 iOS 개발에 사용되는 SwiftUI 인터페이스 디자이너 및 서버 측 데이터베이스 애플리케이션 개발에 사용되는 PowerDesigner 모델링 도구와 같이 코드가 아닌 방식으로 완료되는 것을 지원합니다(또는 훨씬 더 적합합니다). 그러나 시각화 작업의 이 부분은 기존 개발 모델에서 보조적인 역할만 수행하며 결국 개발자가 직접 수정할 수 있는 코드를 생성합니다. 개발자는 여전히 코드를 중심으로 주요 작업을 수행합니다.

로우 코드와 퓨어 코드의 관계는 실제로 동영상과 기사의 관계와 매우 유사합니다.

로우 코드는 현대의 '동영상'과 같으며 대부분의 콘텐츠가 구성되어 있습니다. 의 직관적이고 이해하기 쉬우며 표현력이 강한 그림으로 구성되어 있어 대중의 수용이 더 용이합니다. 하지만 동시에 영상은 딱딱하지 않고 사진만 담을 수 있어 정확한 사진 표현이 부족한 부분을 보완하기 위해 약간의 텍스트(자막, 주석 등)를 추가할 수 있습니다. 그런데 "다이어그램"과 "텍스트" 사이의 변증법적 관계에 대해서는 "건축 도면: 도구 및 방법론" [1] 기사에서 관련 설명을 더 참조할 수 있습니다.

퓨어 코드는 전통적인 '기사'에 가깝습니다. 오랫동안 정보 전달을 위한 유일한 매체였음에도 불구하고, 영상 기술의 탄생과 이에 상응하는 소프트웨어 및 하드웨어 인프라의 대중화 이후, 점차 각광을 받기 시작했습니다. 오늘날 비디오는 대부분의 사람들이 정보(TV 영화에서 Bilibili TikTok에 이르기까지)를 얻는 주요 채널이 되었으며, 책과 기사를 정기적으로 읽는 사람은 점점 줄어들고 있습니다. 그러나 기사가 여전히 그 의미와 독자를 갖고 있다는 것은 부인할 수 없습니다(그렇지 않으면 굳이 그렇게 많은 단어를 입력하지 않을 것입니다). "시장 점유율"이 압박을 받더라도 항상 발판을 마련할 여지가 있을 것입니다.

이미지 설명을 입력하려면 클릭하세요

위의 비유에 따라 추론하면 향후 로우코드는 비디오와 유사한 개발 궤적을 따르며 순수 코드를 뛰어넘어 주류 개발 모델. Gartner의 예측도 같은 견해를 나타냅니다. 2024년까지 모든 애플리케이션 개발 활동의 65%가 로우 코드 방법을 통해 완료되고 대기업의 75%가 애플리케이션 개발을 위해 최소 4개의 로우 코드 개발 도구를 사용할 것입니다.

그러나 마찬가지로 동영상이 기사를 결코 대체할 수 없는 것처럼 로우 코드도 순수 코드 개발 방법을 완전히 대체할 수는 없습니다. 미래에는 로우 코드 접근 방식과 순수 코드 접근 방식이 오랫동안 상호 보완적인 형태로 존재할 것이며 각각은 적합한 비즈니스 시나리오에서 빛을 발할 것입니다.

다음 "로우 코드 비즈니스 시나리오" 장에서는 이 단계의 로우 코드 개발에 더 적합한 시나리오를 자세히 나열합니다.

제로코드/노코드

분류의 완성도 측면에서 '순수코드'가 있어야 하고, 그 반대인 '제로코드'('제로코드'라고도 함)가 있어야 한다. 암호"). 제로 코드는 코드 작성이 전혀 필요하지 않은 애플리케이션 개발 플랫폼이지만 이것이 제로 코드가 로우 코드보다 더 진보되고 발전했다는 것을 의미하지는 않습니다. 단지 단순한 그래픽 시각화를 완전히 수용하고 복잡성을 완전히 제거하는 더 극단적인 선택을 할 뿐입니다. . 텍스트 코드. 선택한 이유는 제로코드 개발 플랫폼은 비즈니스 분석가, 사용자 운영, 심지어는 누구나 개발자가 될 수 있도록(참고: 개발 ≠ 코드 작성) 애플리케이션 개발의 문턱을 최대한 낮추고자 하기 때문이다. 코드를 전혀 이해하지 못하는 사람들. 저는 제품 관리자입니다(이해하지 못하더라도 이해하는 척하는 것은 이해한 것으로 간주되지 않습니다).

전문 개발자라도 기술 분업(프론트엔드/백엔드/알고리즘/SRE/데이터 분석...)이 점점 정교해지는 추세에 따라 이를 할 수 있는 사람을 채용하기가 어렵습니다. 복잡한 애플리케이션 전체 세트를 위한 풀 스택 엔지니어를 독립적으로 개발하고 유지 관리합니다. 하지만 제로 코드는 모든 것을 바꿀 수 있습니다. Java와 JavaScript의 차이를 구분하지 못하는 기술 초보자이건, 딥 러닝에 능숙하지만 웹 개발을 배울 시간이 없는 알고리즘 전문가이건, 기술적인 꿈을 실현할 수 있습니다. 또는 제로코드를 통해 세상을 완성해보세요. "세상을 바꾸려는 아이디어는 이미 존재합니다. 필요한 것은 프로그래머뿐입니다." 이 농담은 실제로 실현될 수도 있습니다. 프로그래머도 필요하지 않으며 아이디어가 있는 사람이 스스로 할 수 있습니다.

이미지 설명을 입력하려면 클릭하세요

물론 모든 선택에는 가격이 따르며 Zero Code도 예외는 아닙니다. 코드를 완전히 포기하는 대가는 플랫폼의 기능과 유연성이 제한된다는 것입니다. 한편으로는 시각적 편집기의 표현 능력이 Turing-complete 범용 프로그래밍 언어의 표현 능력보다 훨씬 낮습니다. 유연한 사용자 정의 및 확장이 불가능합니다. 코드를 도입하지 않고도 달성할 수 있습니다(물론 이론적으로는 Scrach/Blockly와 같은 그래픽 프로그래밍 언어로 만들 수도 있지만 이는 필기 코드의 또 다른 형태일 뿐입니다). 반면, 대상 독자는 전문 개발자가 아니기 때문에 플랫폼이 지원할 수 있는 작업은 좀 더 "멍청한" 경향이 있습니다(예: 페이지는 대규모 비즈니스 구성 요소의 단순 스택만 지원하고 미세한 부분은 지원하지 않습니다). 세분화된 원자 구성 요소 및 유연한 CSS 레이아웃 정의), 동시에 상대적으로 "사람에게 친숙한" 모델과 개념(예: "데이터베이스" 대신 "테이블"을 사용하여 데이터를 나타냄)만 공개할 뿐이며 강력한 지원을 제공할 수 없습니다. 전문적인 기본 개발 기본 요소 및 프로그래밍 개념.

이미지 설명을 입력하시려면 클릭하세요

좁은 의미에서는 제로코드와 로우코드의 차이가 뚜렷하지만, 넓은 의미에서는 제로코드도 하위 집합으로 볼 수 있습니다. 로우 코드. 관련 연구 보고서에서 Gartner는 "No Code"를 보다 광범위한 로우 코드 애플리케이션 플랫폼인 "LCAP"(Low-Code Application Platform)으로 분류했습니다. 현재 시중에 나와 있는 많은 일반적인 로우 코드 개발 플랫폼에는 어느 정도의 제로 코드 기능이 있습니다. 예를 들어 로우 코드 분야의 선두주자인 Mendix는 간단하고 사용하기 쉬운 제로 코드 기능을 제공할 뿐만 아니라 Web IDE - Mendix Studio 뿐만 아니라 기능도 포함되어 있습니다. 더욱 강력한 로우 코드 데스크톱 IDE - Mendix Studio Pro.

HpaPaaS(High Productivity Application PaaS)

위에서 언급했듯이 "Low-Code"라는 용어는 Forrester에서 제공한 것입니다. 국제적으로도 유명한 연구기관(일명 워드메이킹 전문가)이기도 한 가트너는 로우코드 분야의 위상을 판가름할 수 있는 신개념 워드쓰기 대회에 당연히 쉽게 굴복하지 않을 것이기에 'HpaPaaS'도 고안했다. 2017년의 "(고생산성 애플리케이션 서비스형 플랫폼)"은 좀 더 듣기 좋은 약어입니다.

Gartner의 정의에 따르면 HpaPaaS는 선언적 모델 기반 설계와 원클릭 배포를 지원하는 플랫폼으로 클라우드에서 신속한 애플리케이션 개발(RAD), 배포 및 운영 기능을 제공합니다. 로우코드의 정의도 똑같습니다.

하지만 너무 전문적인 이름을 갖는 것이 반드시 좋은 것은 아니라는 것이 밝혀졌습니다. "HpaPaas"는 결국 이전에 유래된 "Low-Code"로 바뀌었고 더 현실적이고 발음하기 쉽습니다. 2019년부터 Gartner는 보고서에 대한 연구를 수행하여 "Low-Code"(예: LCAP)라는 용어를 완전히 채택하기 시작했으며 개인적으로 @deprecated 표시로 "HpaPaaS"를 표시했습니다.

이미지 설명을 입력하려면 클릭하세요

이미지 출처: SaaS / IaaS / PaaS / aPaaS / HpaPaaS의 차이점은 무엇인가요?

추가할 가치가 있습니다 "HpaPaaS" 이 용어는 갑자기 나온 것이 아니라 Gartner가 이전에 제안한 "aPaaS"에서 상속되었습니다. 둘 사이의 관계는 다음과 같습니다. HpaPaaS는 HpaPaaS에 추가되는 하위 범주일 뿐이며 이를 통해 높은 생산성을 달성합니다. 로우 코드 aPaaS에는 애플리케이션 개발 플랫폼 외에도 순수 코드를 위한 기존 애플리케이션 개발 플랫폼(High-control aPaaS, 더 높은 수준의 제어가 가능한 순수 코드 개발 방법)도 포함됩니다.

잡담할 가치도 없고 그냥 가십만 하고 싶은 것은 'aPaaS'라는 단어가 허공에서 날조된 것이 아니라 클라우드 컴퓨팅의 부상과 깊은 연관이 있다는 점이다. 나는 클라우드에 있는 모든 사람들이 aPaaS 및 IaaS/PaaS/SaaS와 같은 클라우드 컴퓨팅의 고대 개념이 동일한 기원을 가지고 있다고 추측했다고 믿습니다. aPaaS는 PaaS와 SaaS 사이에 있으며 PaaS에서 제공하는 서비스와 비교할 때 더 많은 응용 프로그램입니다. 지향적이지만 SaaS와는 다릅니다. 기성 소프트웨어 서비스도 제공됩니다. (자세한 지침은 사진과 함께 원본 기사를 참조하십시오.)

4. 로우 코드가 필요한 이유

결국 정보가 폭발적으로 증가하는 세상에서는 참신하고 짧은 코드가 부족하지 않습니다. - 살았던 것들. 소위 신기술의 대부분은 단지 순간의 순간일 뿐입니다. 그것은 나타나고 눈에 띕니다. 대부분의 사람들은 그것을 읽었지만 소수의 사람들은 그 기발한 아이디어에 놀라거나 관심을 보이지 않습니다. 신나게 엄지손가락을 치켜세우세요. 마지막으로 뒤를 돌아보고 무엇을 사용해야 할지 알아보세요. 새로운 기술이 새로운 생산성으로 전환될 수 있는지 여부를 실제로 결정하는 것은 기술 자체가 얼마나 훌륭하고 멋진지 여부가 아니라, 그것이 정말로 필요한지 여부, 즉 왜 로우코드가 필요한가 하는 것입니다. 위의 질문을 다양한 주제로 채우면(퀴즈: 이를 "지연된 주제 초기화"라고 함) 이 문제를 보다 포괄적으로 볼 수 있습니다.

"시장"에는 왜 로우 코드가 필요한가요?

모두가 '인터넷+', '디지털 트랜스포메이션'을 이야기하는 시대에 기업은 기업 내 정보 흐름을 개선하고 고객과의 접점을 강화하기 위해 애플리케이션(앱)을 활용해야 하는 필요성이 점점 더 커지고 있습니다. 연결하다. 그러나 탄생한지 오래되지 않은 IT 정보화시대 역시 우리 나라 사회주의 초급단계와 마찬가지로 수요공급의 모순에 직면해 있습니다. 낙후된 소프트웨어 개발생산성은 인민의 성장을 따라잡을 수 없습니다. 비즈니스 요구 사항.

이미지 설명을 입력하려면 클릭하세요.

Gartner는 2021년까지 애플리케이션 개발 요구 사항의 시장 성장이 기업 IT 제공 능력을 최소 5배 이상 초과할 것으로 예측합니다. 이처럼 엄청난 IT 격차에 직면한 상황에서 혁신적인 '신생산성' 시스템 없이는 기존 전통 기술 시스템의 개발과 지속만으로는 문제가 완전히 해결될 수 있다고 상상하기 어렵습니다. 로우 코드 기술은 다음과 같은 측면을 통해 애플리케이션 개발 생산성을 완전히 혁신하고 거의 위기에 처한 IT 세계를 구하기를 희망하는 이러한 사명을 가지고 제공됩니다.

효율성 향상 및 비용 절감 및 품질 보증

소프트웨어 산업이 빠른 속도로 발전하고 있고 새로운 언어, 프레임워크 및 도구가 끝없이 등장하고 있지만, 실무자로서 우리는 소프트웨어 개발이 여전히 수동 워크숍 단계에 있고 효율성이 낮다는 점을 인정해야 합니다. , 높은 인건비, 품질을 통제할 수 없습니다. 프로젝트 납품 지연은 업계에서 일반적인 일이 되었으며, 병목 현상은 거의 항상 개발자에게 있습니다(기계가 해결할 수 있는 문제는 문제가 되지 않습니다). 우수한 개발 인재는 항상 부족한 리소스이며 소프트웨어 품질 결함은 항상 수렴될 수 없습니다. , 온라인 장애로 인한 자본 손실이 자주 발생합니다.

비교해 보면, 산업 혁명 동안 수백 년의 발전을 거친 대부분의 전통 제조업은 이미 원자재 투입부터 생산까지 '사람'에 대한 강한 의존성을 벗어났습니다. 다양한 정밀 기기를 갖춘 완제품과 자동화된 조립 라인의 안정적인 지원을 통해 생산의 표준화와 규모를 실현합니다.

정보화는 인류의 3차 산업혁명으로 알려져 있지만, 소프트웨어 산업의 현재 상황은 성숙한 '산업화' 단계에 도달하기에는 아직 멀었습니다.

그래서 친애하는 프로그래머 여러분, 인터페이스 디버깅을 위해 오전 내내 프런트엔드와 협력하고, 오후 내내 요구 사항에 대해 제품과 논쟁을 벌인 후 자신의 버그와 싸울 때 밤새도록 탈출하기가 쉽지 않습니다. 잠이 들었고 일련의 알람 문자 메시지에 깨어 났을 때 고개를 들고 별이 빛나는 하늘을 바라보며 "나에게 꿈이 있습니다. 저것"을 꿈꿔 본 적이 있습니까? 오늘날 소프트웨어 개발은 ​​산업 제품, 일괄 생산과 같을 수 있으며 안정적이고 효율적이며 걱정이 없습니다." 이제 깨닫든 모르든 이 비전은 서서히 현실이 되어가고 있습니다.

이미지 설명을 입력하려면 클릭하세요

예, 로우 코드는 애플리케이션 소프트웨어 개발 프로세스를 산업화하고 있습니다. 각각의 로우 코드 개발 플랫폼은 기술 집약적인 애플리케이션 공장이며 모든 프로젝트 관련 인력은 동일한 생산 라인 내에서 긴밀하게 협력합니다. 개발의 주요 인력은 더 이상 루프 작성 방법을 아는 기술 전문가가 아니라 아이디어와 비즈니스 감각을 갖춘 애플리케이션 제작자 그룹입니다. 다양하고 성숙한 인프라, 기성 표준 부품, 애플리케이션 공장의 자동화된 조립 라인을 통해 개발자는 핵심 비즈니스 가치에만 집중하면 됩니다. 비표준 요구 사항이 발생하더라도 언제든지 직접 수행할 수 있으며 가장 유연한 수동 사용자 정의(코드) 방법을 사용하여 다양한 코너 문제를 해결할 수 있습니다.

애플리케이션 개발 인력 확대

간단한 드래그 앤 드롭 및 구성을 통해 대부분의 개발 작업을 완료할 수 있도록 함으로써 로우 코드(제로 코드 포함)는 사용자 부담을 크게 줄여줍니다. 이를 통해 기업은 앞서 언급한 민간 개발자 자원을 최대한 활용할 수 있습니다. 일부 순수한 제로 코드 수요 시나리오에서는 로우 코드를 통해 비즈니스 담당자가 셀프 서비스 애플리케이션 제공을 구현할 수도 있습니다. 이는 기존 IT 제공 모델의 작업 누적(백로그) 문제를 해결할 뿐만 아니라 전문 개발 리소스 부족을 방지합니다. 단순하고 반복적인 애플리케이션 개발 요구 사항을 잠식하면 비즈니스 담당자가 자신의 아이디어에 따라 애플리케이션을 실제로 구현하고 다른 사람에게 개발을 맡길 때 피할 수 없는 족쇄를 없앨 수 있습니다.

이미지 설명을 입력하려면 클릭하세요

이 시점에서 애플리케이션 개발 능력은 더 이상 일부 전문 개발자의 특허이자 특권이 아니며, 필요한 기술 임계값과 소유 비용은 낮을수록 소위 '기술의 민주화'가 실현되는 것입니다.

개발 과정에서 소통과 협업 강화

여러 설문조사 결과에 따르면 소프트웨어 프로젝트 실패의 주요 원인 중 하나는 의사소통 부족(소통 불량)입니다. 전통적인 개발 모델에서는 비즈니스, 제품, 설계, 개발, 테스트, 운영 및 유지 관리 담당자가 각자 자신의 임무를 수행하고 해당 분야에서 각자 고유한 도구와 언어 세트를 보유해 왔습니다. 국경을 넘는 개발을 허용하는 "사일로"가 형성되기 쉽습니다. 기능적 의사소통이 어렵고 비효율적이 됩니다. 이것이 현재 인기 있는 애자일 개발과 DevOps가 둘 다 커뮤니케이션을 강조하는 이유입니다(전자는 Biz와 Dev 간의 협업이고 후자는 Dev와 Ops 간의 협업입니다). 또한 고전적인 DDD 도메인 중심 설계도 " 통일된 언어" 직원 간 의사소통이 일관되지 않습니다.

이미지 설명을 입력하려면 클릭하세요

로우 코드를 사용하면 이러한 상황이 근본적으로 개선됩니다. 위의 모든 역할은 동일한 로우 코드 개발 플랫폼에서 긴밀하게 협력할 수 있습니다( 동일인일 수도 있음) 이 새로운 협업 모델은 기능적 사일로를 무너뜨릴 뿐만 아니라 통일된 시각적 언어와 단일 애플리케이션 표현(페이지/데이터/로직)을 통해 프로젝트 당사자의 신청서 양식 및 프로젝트 진행에 대한 의견을 쉽게 조정합니다. ) 보다 궁극적인 민첩한 개발 모델과 전통적인 DevOps를 기반으로 한 단계 더 발전된 BizDevOps[2]를 이해하고 구현합니다.

통합 개발 플랫폼 하에서의 융합 효과

로우 코드가 동일한 플랫폼(하나의 플랫폼)에서 모든 애플리케이션 개발 관련 활동을 통합하려는 시도를 한 후에는 더 많은 측면이 발생합니다. 집계 효과 및 규모에 따른 수익: 인력 집계: 이전 지점에서 언급한 다양한 기능적 역할 간의 긴밀한 협력 외에도 업무용 통합 로우 코드 개발 플랫폼으로 인력을 집계하면 표준화, 정규화 및 통합을 촉진할 수 있습니다. 전체 프로젝트 과정.

애플리케이션 집계: 한편으로는 새로운 애플리케이션의 아키텍처를 설계하고, 자산을 재사용하고, 서로 호출하는 것이 더 쉬워지고, 다른 한편으로는 각 애플리케이션의 데이터가 자연스럽게 상호 운용됩니다. 통합 기능을 통해 연결할 수도 있으므로 기업이 데이터 섬 문제를 겪을 필요가 완전히 제거됩니다. 생태적 집합체: 로우코드 개발 플랫폼이 충분한 개발자와 애플리케이션을 모으면 모든 것을 연결하고 무한한 상상력을 갖춘 거대한 생태계를 형성하여 로우코드의 가치를 완전히 발휘하게 됩니다.