로우코드 세계에서의 프로그래밍

메인 컨텐츠로 가기

로우코드 세계에서의 프로그래밍

로우코드 세계에서의 프로그래밍

로우코드는 소프트웨어 개발을 간소화합니다 프로그래머와 소프트웨어 엔지니어 모두에게 적합합니다. 로우코드 프레임워크 중복되고 지루한 작업을 줄여 프로세스를 단순화합니다. 개발자는 릴리스를 빌드, 테스트 및 제공 쉽게 로우코드 플랫폼 사용 Mendix.

에서 이전 블로그 게시물최고 마케팅 책임자 Nick Ford는 다음과 같은 방법을 알아보았습니다. 더 스마트하고 플랫폼을 통해 소프트웨어 엔지니어는 자신이 가장 잘하는 일, 즉 프로그래밍에 집중할 수 있습니다. 이 블로그 게시물에서 저는 이 플랫폼의 일부 기능을 더 자세히 살펴보고 싶습니다. Mendix 소프트웨어 엔지니어가 가장 잘하는 일을 지원하는 플랫폼입니다.

소프트웨어 엔지니어가 모델 기반 개발 플랫폼으로 로우코드를 활용해 성공하는 방법에 대해 자세히 알아보세요.

앱 개발자를 위한 3가지 핵심 로우코드 개발 기능

3가지 핵심 영역이 있습니다. Mendix 소프트웨어 엔지니어가 자신의 기술을 활용하여 애플리케이션 수명 주기에 참여하는 다른 사람들에게 더 나은 개발 경험을 제공할 수 있는 플랫폼입니다.

  1. 모델 확장
  2. 모델 SDK
  3. 플랫폼 API

각각은 엔지니어가 조직의 필요에 맞게 플랫폼을 확장할 수 있도록 설계되었습니다. 각각을 살펴보고 내부에서 어떻게 활용할 수 있는지 살펴보겠습니다. Mendix 플랫폼.

모델 확장: 효과적이고 안전하며 재사용 가능

나와 함께 있는 동안 Mendix, 제가 ​​꾸준히 받는 질문이 하나 있습니다. "생성된 코드를 어디에서 볼 수 있나요?" 제 대답은 항상 "코드가 없습니다! 런타임이 모델을 해석하고 애플리케이션을 생성합니다. 하지만, 이것이 코드를 사용하여 모델을 확장할 수 없다는 것을 의미하지는 않습니다."입니다.

모델 기반 개발 새로운 개념은 아닙니다. 수년 동안 존재해 왔습니다. 그러나 과거의 많은 개발 도구는 너무 제한적이거나 사용자 정의하기 어려웠습니다. 사용자 정의가 가능했을 때 종종 고객 요구 사항을 충족시키기 위해 생성된 코드를 변경해야 했습니다. 그러나 그렇게 하면 모델이 깨져서 개발 속도가 느려지고 유지 관리가 악몽이 됩니다.

Mendix 확장에 대한 다른 접근 방식을 취합니다. 사용자 정의 코드로 애플리케이션을 확장하는 대신 모델러 자체를 확장합니다. 모델러 기능을 확장하면 모델과 사용자 정의 코드 확장이 항상 효과적으로 작동하도록 할 수 있습니다. 또한 작성된 모든 코드가 다른 애플리케이션에서 재사용 가능하도록 할 수 있습니다.

모델을 확장할 수 있는 주요 방법은 두 가지가 있습니다. Mendix 사용자 정의 코드를 활용할 수 있는 플랫폼입니다. 이는 위젯이라고 하는 프런트엔드 확장 기능과 커넥터라고 하는 백엔드 확장 기능입니다. 위젯을 사용하면 다음을 확장할 수 있습니다. Mendix JavaScript를 사용하여 애플리케이션을 만들고 React, Angular, Dojo 또는 D3와 같이 필요한 JavaScript 라이브러리를 활용합니다. 커넥터는 서버에서 실행되므로 사용자 정의 Java/Scala 코드를 만들어 Java 또는 Scala 라이브러리를 활용할 수 있습니다. 사용자 정의 코드 외에도 REST, SOAP 및 OData와 같은 기본 통합도 지원합니다. 하지만 이 블로그에서는 커넥터와 위젯을 개발자에게 강력하게 만드는 기능을 강조하는 데 중점을 두고 싶습니다.

커넥터

커넥터는 모델러의 기능을 확장하는 좋은 방법입니다. 커넥터는 기본 마이크로플로우 기능을 확장하는 독립형 래퍼입니다. 커넥터는 마이크로플로우에서 호출될 때 Java 코드를 실행하며, 이 코드는 좋아하는 IDE에서 편집할 수 있습니다. 커넥터는 엔티티, 데이터 세트, 마이크로플로우, 페이지 및 구성을 포함한 모델의 모든 기능을 활용할 수 있습니다. Mendix 런타임 API커넥터를 빌드할 때 아이콘과 설명을 추가하도록 선택할 수 있으며 이를 통해 기본적으로 사용할 수 있습니다. Mendix 도구 상자. 커넥터 사용자는 필요한 매개변수만 코드에 전달하면 되며, 기본 Java 코드를 이해할 필요가 없습니다.

애플리케이션 개발에서 커넥터 사용 스크린샷

커넥터를 강력하게 만드는 것은 풍부한 매개변수와 반환 유형입니다. 통합을 빌드할 때는 가능한 한 사용하기 쉽게 만들고 가능한 한 일반적으로 만들고 싶을 것입니다. 커넥터를 일반적으로 만들면 다양한 사용 사례에 대해 다양한 데이터를 전달하는 것과 같이 다양한 상황에서 재사용하기가 더 쉬워집니다.

예를 들어, 커넥터는 일반, 유형 또는 정적일 수 있는 많은 매개변수를 가질 수 있습니다. 커넥터 매개변수는 현재 문자열, 부울, 정수, 소수, 객체, 목록, 그리고 모든 객체 및 모든 목록을 지원합니다. 매개변수와 반환 유형을 정의한 후에는 Mendix 플랫폼은 코드 래퍼를 생성하고, 그 안에서 사용자 정의 코드를 정의할 수 있습니다. 이 코드는 Eclipse, IntelliJ 및 기타 여러 IDE와 같이 선호하는 IDE 내에서 편집할 수 있습니다. 커넥터 코드 내에서 사용자 정의 코드를 추가하여 필요한 Java 또는 Scala 라이브러리를 호출합니다. 이러한 라이브러리는 프로젝트의 userlib 폴더에 저장되어 사용할 수 있습니다.

위젯

위젯은 프런트엔드 개발을 위한 확장 기능입니다. Mendix. 위젯은 자체 포함되고 여러 애플리케이션에서 재사용할 수 있도록 패키징됩니다. 위젯은 웹이나 Cordova/Phonegap에서 사용 가능한 모든 자바스크립트 라이브러리를 활용할 수 있습니다. 위젯이 빌드되면 App Store에 배포하여 조직 전체에서 재사용하거나 Mendix 커뮤니티. 위젯을 빌드하는 데 도움이 되는 도구가 여러 개 있는데 여기에는 Typescript, ES6 또는 일반 Javascript 버전이 포함되지만 개인적으로는 항상 다음을 사용하여 시작합니다. Mendix 발전기. 이 자작농 스크립트를 실행하면 위젯 개발을 시작하는 데 필요한 스캐폴딩이 자동으로 생성됩니다. Yeoman이나 Javascript에 익숙하지 않다면 제 동료 Jelte가 훌륭한 웹 세미나.

모든 위젯에 필요한 기본 구조에는 3개의 필수 파일이 포함됩니다.

  • xml 파일 - 위젯의 폴더 구조를 설명하는 데 사용됩니다.
  • xml 파일 – 위젯에 전달할 수 있는 매개변수를 설명하는 데 사용됩니다.
  • js 파일 - 위젯의 논리를 결정하는 데 사용됩니다.

위젯 xml 내에서 사용자 정의 코드에 전달해야 하는 매개변수를 원하는 만큼 정의합니다. 매개변수는 문자열, 부울, 속성, 객체 등 필요한 데이터에 따라 다른 유형이 있습니다. 사용자 정의 코드에 필요한 매개변수를 정의할 수도 있습니다. 이런 방식으로 위젯을 설정하면 위젯이 안정적이고 자체 포함되며 재사용 가능하다는 것이 보장됩니다. 예를 들어, 두 명의 다른 개발자가 동일한 위젯을 사용하려고 하지만 다른 엔터티에서 데이터를 전달하려고 할 수 있습니다. 엔터티 및 속성 매개변수를 사용하면 위젯 사용자가 필요한 데이터를 사용할 수 있습니다.

위젯 JS 파일 내에서 위젯에 가져오고 싶은 추가 라이브러리를 정의할 수 있습니다.

위젯 내에서 코드를 활용하는 것의 장점은 위젯 내에서 데이터, 엔티티 정보 및 모델 정보에 대한 전체 액세스 권한을 얻는다는 것입니다. 모든 위젯은 다음을 사용할 수 있습니다. Mendix 클라이언트 API 상호 작용하다 Mendix 모델 데이터. 이를 통해 위젯은 매우 일반적이 되어 사용자가 JavaScript를 사용하여 쉽게 검색할 수 있는 모든 유형의 데이터를 전달할 수 있습니다. 위젯을 사용하여 검색된 모든 데이터에는 데이터 액세스가 적용됩니다. 따라서 위젯은 사용자가 액세스할 수 있는 경우에만 데이터를 수신합니다.

모델 SDK: 강력한 지원 도구 및 분석

우리는 위젯과 커넥터를 사용하여 모델을 확장하는 방법을 탐구했지만 모델 자체에 대한 정보에 액세스하거나 모델을 프로그래밍 방식으로 변경하는 것은 어떨까요? Mendix Model SDK는 Model SDK를 기반으로 구축된 강력한 타입스크립트 개발 키트로, 개발자에게 프로그래밍 방식의 액세스를 제공합니다. 메타모델 정보.

모델 SDK에는 4가지 주요 사용 사례가 있습니다.

  1. 레거시 코드 기반에서 애플리케이션을 가져옵니다. Mendix
  2. 정적 분석을 위한 애플리케이션 모델 분석
  3. 신청서에 대량 변경 사항을 적용하세요
  4. 모델을 다른 코드베이스나 플랫폼으로 내보내기

모델 SDK를 활용하면 개발자는 다음을 중심으로 지원 도구를 구축할 수 있습니다. Mendix 기능을 확장하기 위한 플랫폼입니다. 한 가지 예는 소프트웨어 품질 분석을 수행하기 위해 Model SDK를 활용하는 AQM 도구입니다. 업계 표준에 따라 애플리케이션이 얼마나 잘 구축되었는지에 대한 5성 평가를 제공합니다. Model SDK에는 무한한 가능성이 있지만 시작하려면 다음을 확인하세요. 시작하기 문서화 및 API 문서.

플랫폼 API: 개인화된 기능을 갖춘 광범위한 솔루션

따라서 Mendix 플랫폼에는 개발자가 기존 DevOps 파이프라인에 플랫폼을 통합하는 데 도움이 되는 광범위한 API가 제공됩니다. Visual Studio Team Services(VSTS) 또는 Jenkins 배포 파이프라인과 같은 도구를 사용하면 API를 활용하여 커밋과 같은 트리거를 기반으로 애플리케이션을 자동으로 빌드, 테스트 및 배포할 수 있습니다. 이러한 애플리케이션은 Docker 또는 Cloud Foundry 컨테이너를 사용하여 모든 퍼블릭 클라우드, 온프레미스 또는 프라이빗 클라우드 오퍼링에 배포할 수 있으며 Kubernetes 또는 Cloud Foundry와 같은 모든 컨테이너 플랫폼에서 실행할 수 있습니다. 개발자는 다음에서 사용 가능한 모든 수의 API를 결합할 수 있습니다. Mendix 제품을 사용하여 개인화된 파이프라인을 직접 만드십시오. 아래 비디오는 신뢰할 수 있는 파트너가 구축한 Teamserver API, Build API, Docker Buildpack 및 ATS CICD API를 보여줍니다. 클레브르,는 단일 커밋을 기반으로 Kubernetes 클러스터에 애플리케이션을 라이브로 배포하는 데 사용됩니다.

주요 테이크 아웃

이 블로그 게시물에서 제가 여러분에게 전달하고자 하는 핵심 사항은 로우코드 개발이라는 이유로 코드를 만들 필요성이나 방법이 없다는 것을 의미하지 않는다는 것입니다. 항상 어느 정도의 사용자 정의가 필요한 예외 상황이 있으며 필요할 때 Mendix 플랫폼이 지원합니다. 믿지 못하시다면 직접 시도해 보세요!

이제 무엇을 만들 것인가?

언어를 선택하세요