지능형 데이터베이스 마법사를 활용한 앱 개발

데이터 기반 솔루션, 예를 들어 데이터베이스 및 기업용 애플리케이션은 백엔드 데이터베이스와의 연결 및 상호 작용에 의존합니다. 그러나 백엔드 관계형 데이터베이스는 복잡한 데이터 관계를 반영하는 테이블 형태로 데이터를 저장합니다. 이는 효과적인 데이터 관리 및 데이터 무결성을 위한 많은 이점을 제공하지만, 저장된 데이터를 새로운 방식으로 접근하고 활용하는 것을 어렵게 만들 수 있습니다. 애플리케이션 개발자는 데이터베이스 설계 원칙과 SQL 쿼리 언어에 대한 깊이 있는 이해를 갖춰야만 작업을 시작할 수 있습니다.

반면, 실제 데이터 관계는 대부분 부모-자식 관계를 나타내거나, 더 나아가 복잡한 계층 구조를 갖습니다. 따라서 계층 구조로 시각화할 수 있는 데이터를 다루는 방식은 훨씬 간단하고 유연하며, 개발 속도를 높일 수 있습니다. 또한, 이 방식은 SQL 전문 지식이 부족한 개발자에게도 더 쉽게 접근할 수 있습니다.

오늘날 기업 환경에서 흔히 사용되는 백엔드 관계형 데이터베이스에 연결하는 앱을 개발하는 과정을 더 쉽고 빠르게, 그리고 더 많은 개발자들이 접근할 수 있도록, Altova MobileTogether는 완전히 독특한 접근 방식을 취합니다. MobileTogether의 시각적인 데이터베이스 마법사는 개발자들이 계층 구조의 데이터를 반환하는 쿼리를 쉽게 생성하고, 앱 내에서 해당 데이터를 활용한 후, 계층 구조 형태로 데이터를 쉽게 저장할 수 있도록 지원합니다. MobileTogether는 데이터 정규화를 처리하고, 해당 데이터를 연결된 테이블에 다시 쓰는 작업을 대신 수행합니다. 이제 작동 방식을 자세히 살펴보겠습니다.

계층적 데이터 처리하기

관계형 데이터베이스는 데이터를 행과 열로 구성하여 테이블을 형성합니다. 데이터는 일반적으로 여러 테이블에 걸쳐 구조화되며, 데이터 간의 관계는 주 키와 외래 키를 통해 표현됩니다. 이러한 키들은 데이터의 고유성을 보장하는 동시에 복잡한 연결을 정의할 수 있도록 합니다. 관계형 모델은 많은 효율성과 장점을 가지고 있지만, 특정 애플리케이션에는 적합하지 않을 수 있습니다. 예를 들어, 두 개의 테이블에 있는 데이터를 하나의 폼에 표시하고, 해당 데이터를 수정 가능하게 유지하려면 두 개의 별도 데이터베이스 쿼리가 필요하며, 상당량의 수동 SQL 코딩이 필요합니다. 이러한 폼에서 데이터를 다시 데이터베이스에 저장하는 것은 훨씬 더 복잡합니다. 이러한 작업은 시간이 오래 걸릴 뿐만 아니라, 애플리케이션 개발자가 SQL에 대한 전문 지식을 갖추어야 하며, 이는 현재 부족한 숙련된 소프트웨어 및 애플리케이션 개발자 문제를 더욱 심화시키는 중요한 과제입니다.

시각적인 모바일투게더(MobileTogether)와 같은 로우코드(low-code) 도구 저희는 백엔드 데이터와 연결되는 앱 개발을 최대한 간편하게 만들기 위해 숨겨진 노력을 기울이고 있습니다. 이를 통해 개발자들은 복잡한 SQL 문법 작성에 매달리는 대신, 앱의 디자인과 기능, 그리고 무엇보다 중요한 사용자 경험에 집중할 수 있도록 지원합니다. (참고: 이 기사는 데이터베이스 기반 앱에 초점을 맞추고 있지만, MobileTogether는 XML, JSON, HTML, SOAP, REST 등 다양한 형식의 데이터 소스에도 연결할 수 있습니다. 또한, 엑셀, EDI, 텍스트 파일 등 기존 데이터 소스도 쉽게 연결할 수 있습니다.) MapForce Server (통합)

데이터 소스가 무엇이든, MobileTogether는 백엔드 데이터를 계층적인 트리 형태로 보여주어 개발자가 앱의 기능과 동작을 정의하는 동시에, 백엔드 데이터베이스에 데이터가 어떻게 저장되어 있든 관계를 즉시 파악하고 필요한 요소들을 쉽게 활용할 수 있도록 지원합니다.

데이터베이스 마법사: 데이터베이스 계층 구조 가져오기

MobileTogether에서 앱을 위한 데이터 저장소를 처음 연결할 때, 지원되는 다양한 관계형 데이터베이스와 연결 옵션 중에서 선택할 수 있습니다.

연결 마법사가 연결 과정을 안내해 드립니다.

연결이 완료되면 "페이지 소스 추가" 대화 상자에 사용 가능한 테이블 목록이 표시됩니다. 여기서는 비교적 간단한 백엔드 데이터베이스를 사용하여 "도서 카탈로그" 앱을 만드는 예시입니다.

앱에 필요한 열을 선택하려면, 데이터베이스 마법사의 시각적인 SQL 문 생성 도구를 사용하면 클릭만으로 SELECT 문을 쉽게 만들 수 있습니다. 이는 SQL 문을 직접 작성하는 것보다 훨씬 빠릅니다. "Authors" 테이블을 선택하면, 대화 상자는 기본적으로 모든 열을 선택하는 SQL 문을 포함하지만, 이 문을 수정할 수 있습니다. 이번에는 모든 열을 유지하면서, SQL 문을 수정하여 데이터를 "AuthorName"을 기준으로 알파벳 순서대로 정렬하도록 하겠습니다. 결과적으로 생성되는 SQL 문은 컨텍스트에 맞는 대화형 툴바 버튼, 콤보 상자, 드롭다운 메뉴 등을 사용하여 클릭만으로 작성됩니다.

MobileTogether를 사용하여 데이터베이스를 다루는 가장 큰 장점 중 하나는 전체 데이터베이스 구조를 한 번에 가져올 수 있다는 것입니다. 또한, 이전에 정의된 테이블 간의 관계를 활성화하거나, "관계 추가/편집" 대화 상자를 통해 실시간으로 새로운 테이블 관계를 정의할 수도 있습니다.

만약 추가적인 데이터베이스 테이블이 주 테이블과 관련되어 있다면, 관계를 유지하고 싶은 테이블을 선택할 수 있습니다. (관계는 주로 기본 키와 외래 키를 사용하여 설정됩니다.) 예를 들어, 아래와 같이 "Books" 테이블은 "AuthorID"라는 외래 키를 가지고 있으며, 이를 통해 각 책 정보가 "Authors" 테이블의 작가 정보와 연결됩니다. "Books" 테이블 옆의 확인란을 선택하면 해당 관계를 유지할 수 있으며, 결과적으로 "Books" 테이블이 "Authors" 테이블의 하위 항목으로 계층적으로 연결되도록 페이지 소스가 생성됩니다. "Books" 테이블의 모든 열이 자동으로 선택됩니다.

이렇게 하면 전체 데이터베이스 구조가 "페이지 소스" 창에서 트리 형태로 표시됩니다.

이제 각 열을 활용하여 앱의 사용자 인터페이스와 기능을 구현할 수 있습니다.

가장 중요한 점은, 사용자가 변경한 데이터를 데이터베이스에 다시 저장할 때, MobileTogether는 이 과정을 매우 간단하게 만들어줍니다. 계층적 트리 구조로 표현된 관계형 테이블의 각 레벨에 대해, 저장 시 테이블의 모든 행을 대체할지, 아니면 변경된 부분만 저장할지 결정할 수 있으며, 이러한 설정은 계층 구조의 각 레벨에 대해 다르게 적용할 수 있습니다.

데이터베이스 마법사는 앱 개발의 전 과정에서 유용하게 활용될 수 있습니다. 예를 들어, 저희는 이 기능을 사용하여 애플리케이션 디자인의 다양한 하위 페이지에서 사용할 데이터를 필터링할 수 있습니다. 여기서는, 작가 정보를 확인하고 편집하는 하위 페이지를 정의할 때, 현재 작가 ID와 일치하는 작가 데이터를 선택하기 위해 데이터를 필터링하는 방법을 시각적으로 보여주는 예시를 구성했습니다.

단일 테이블을 다루든, 여러 개의 연결된 테이블을 다루든, 데이터베이스 마법사는 데이터베이스에서 필요한 데이터를 정확하게 추출하는 쿼리를 쉽게 정의할 수 있도록 도와줍니다. MobileTogether의 내장된 기능을 활용하면, 데이터를 데이터베이스에 다시 쓰는 작업도 "저장" 명령을 실행하고 MobileTogether에게 전체 계층 구조에서 변경된 부분만 저장하도록 지시하는 것만큼 간단할 수 있습니다.

물론, SQL 명령어를 직접 사용하는 것을 선호하는 개발자들을 위해 MobileTogether는 다음과 같은 기능을 제공합니다. 트랜잭션, 대량 데이터 삽입 등 세부적인 제어를 할 수 있으며, 모든 SQL 문을 직접 실행할 수도 있습니다

자세히 알아보고 지금 바로 사용해 보세요

이 모든 과정을 직접 확인하고 싶으시다면, 데이터베이스 기반의 도서 카탈로그 앱이 처음부터 끝까지 어떻게 만들어졌는지 보여주는 앱 개발 방법 안내 영상을 확인해 보세요.

백엔드 데이터베이스에 연결되는 앱을 개발하려면, 무료 모바일 투게더 디자이너를 다운로드하여 시작할 수 있습니다.