퀵스타터즈

코틀린을 위한 백엔드를 구축하는 방법?

37min

소개

이 튜토리얼에서는 Back4App을 사용하여 Android 애플리케이션(코틀린으로 작성된)의 완전한 백엔드를 구축하는 방법을 배웁니다.

우리는 데이터베이스 관리, 클라우드 코드 기능, REST 및 GraphQL API, 사용자 인증, 실시간 쿼리(라이브 쿼리)를 포함한 필수 Back4App 기능을 통합하여 Android 앱과 원활하게 통신하는 안전하고 확장 가능하며 강력한 백엔드를 만드는 방법을 안내할 것입니다.

또한 Back4App의 빠른 설정과 직관적인 환경이 서버와 데이터베이스를 수동으로 구성하는 것에 비해 시간과 노력을 크게 줄일 수 있는 방법을 보게 될 것입니다.

이 과정에서 고급 보안 기능, 클라우드 작업을 통한 작업 예약, 외부 통합을 위한 웹훅 설정 등 주요 기능에 대한 실습 경험을 쌓게 될 것입니다.

이 튜토리얼이 끝나면 이 기본 설정을 프로덕션 준비 애플리케이션으로 향상시키거나 필요에 따라 사용자 정의 논리 및 타사 API를 쉽게 통합할 수 있는 준비가 잘 되어 있을 것입니다.

전제 조건

이 튜토리얼을 완료하려면 다음이 필요합니다:

  • Back4app 계정과 새로운 Back4app 프로젝트 Back4app 시작하기. 계정이 없으시면 무료로 생성할 수 있습니다. 위 가이드를 따라 프로젝트를 준비하세요.
  • 기본 Android/Kotlin 개발 환경 머신에 Android Studio가 설치되어 있는지 확인하세요. 아직 설정하지 않았다면 Android Studio의 공식 설정 문서를 따라 설정할 수 있습니다.
  • 앱의 Gradle 구성에서 Android 4.0 이상 일반적으로 모듈의 minSdkVersion을 설정합니다. build.gradle 파일에서.
  • Kotlin 및 기본 Android 개념에 대한 이해 Android 개발자 문서. Android 또는 Kotlin이 처음이라면 시작하기 전에 공식 문서나 초보자 튜토리얼을 검토하세요.

시작하기 전에 이러한 모든 전제 조건이 준비되어 있는지 확인하십시오. Back4app 프로젝트를 설정하고 로컬 Android 환경을 준비하면 더 쉽게 따라할 수 있습니다.

1단계 – Back4app 프로젝트 설정

새 프로젝트 만들기

Back4app에서 Android 백엔드를 구축하는 첫 번째 단계는 새 프로젝트를 만드는 것입니다. 아직 만들지 않았다면 다음 단계를 따르십시오:

  1. Back4app 계정에 로그인하십시오.
  2. Back4app 대시보드에서 “새 앱” 버튼을 클릭하십시오.
  3. 앱에 이름을 지정하십시오 (예: “Android-Kotlin-Backend-Tutorial”).
Document image


프로젝트가 생성되면 Back4app 대시보드에 나열된 것을 볼 수 있습니다. 이 프로젝트는 이 튜토리얼에서 논의된 모든 백엔드 구성의 기초가 될 것입니다.

Parse SDK 연결하기

Back4App은 Parse 플랫폼을 사용하여 데이터를 관리하고, 실시간 기능을 제공하며, 사용자 인증 등을 처리합니다. Android 앱을 Back4App과 통합하려면 Gradle 파일에 Parse Android SDK 종속성을 추가하고 Back4App 대시보드의 자격 증명으로 초기화해야 합니다.

Parse 키 가져오기: Back4App 대시보드에서 앱의 “앱 설정” 또는 “보안 및 키” 섹션으로 이동하여 애플리케이션 ID클라이언트 키. 또한 Parse 서버 URL을 찾을 수 있습니다 (종종 https://parseapi.back4app.com)입니다.

Document image


Parse SDK 추가하기build.gradle 파일에 추가하세요:

루트 build.gradle (프로젝트 수준)에서:

Text


모듈 수준의 build.gradle (보통 app/build.gradle)에서:

Text


안드로이드 애플리케이션에서 Parse 초기화하기:

커스텀 Application 클래스를 생성하세요 (예: App.kt) 아직 없는 경우:

Kotlin


다음으로, AndroidManifest.xml을 열고 커스텀 Application 클래스를 등록하세요:

XML


이 단계를 완료함으로써, 안드로이드 (Kotlin) 프론트 엔드와 Back4App 백엔드 간의 안전한 연결이 설정되었습니다. 모든 요청 및 데이터 거래는 이 SDK를 통해 안전하게 라우팅되어 수동 REST 또는 GraphQL 호출의 복잡성을 줄여줍니다 (필요할 경우 여전히 사용할 수 있습니다).

2단계 – 데이터베이스 설정

데이터 저장 및 쿼리하기

Back4App 프로젝트가 설정되고 Parse SDK가 Android 앱에 통합되면 이제 데이터를 저장하고 검색할 수 있습니다. 아래는 Kotlin을 사용하여 데이터를 생성하고 가져오는 예입니다.

Kotlin


또한, Back4App의 REST API 엔드포인트를 사용할 수 있습니다:

Bash


Back4app은 또한 GraphQL 인터페이스를 제공합니다:

GraphQL


이 다양한 옵션을 통해 Parse SDK, REST 또는 GraphQL을 통해 개발 프로세스에 가장 적합한 방식으로 데이터 작업을 통합할 수 있습니다.

스키마 설계 및 데이터 유형

기본적으로 Parse는 스키마를 즉석에서 생성, 하지만 더 많은 제어를 위해 Back4app 대시보드에서 클래스와 데이터 유형을 정의할 수도 있습니다.

  1. “데이터베이스” 섹션으로 이동 하세요.
  2. 새로운 클래스 생성 (예: “Todo”) 및 제목 (String)과 isCompleted (Boolean)과 같은 관련 열을 추가하세요.
새 클래스 생성
새 클래스 생성


Back4app은 데이터 모델 설계를 도와줄 수 있는 AI 에이전트를 제공합니다:

  1. AI 에이전트 열기 앱 대시보드 또는 메뉴에서.
  2. 데이터 모델 설명하기 간단한 언어로 (예: “새로운 ToDo 앱을 Back4app에서 완전한 클래스 스키마로 생성해 주세요.”).
  3. AI 에이전트에게 스키마를 생성하게 하세요.
Document image


AI 에이전트를 사용하면 데이터 아키텍처를 설정할 때 시간을 절약하고 애플리케이션 전반에 걸쳐 일관성을 보장할 수 있습니다.

관계형 데이터

관계형 데이터가 있는 경우—예를 들어, 여러 개의 Category 객체가 여러 개의 Todo 항목을 가리키는 경우—Parse에서 Pointers 또는 Relations를 사용할 수 있습니다. 예를 들어, Category에 대한 포인터를 추가하는 것입니다:

Kotlin


쿼리할 때 포인터 데이터도 포함할 수 있습니다:

Kotlin


include("category") 호출은 각 Todo와 함께 카테고리 세부정보를 가져와 관계형 데이터를 원활하게 접근할 수 있게 합니다.

실시간 쿼리

실시간 업데이트를 위해 Back4app은 Live Queries를 제공합니다. Android 앱에서 특정 클래스의 변경 사항을 구독할 수 있습니다:

  1. Back4App 대시보드에서 Live Queries를 활성화하세요. 앱의 Server Settings.
  2. 코드에서 Live Query Subscription을 초기화하세요:
Kotlin


새로운 Todo가 생성되거나 업데이트되거나 삭제될 때마다 클라이언트는 실시간으로 콜백을 받습니다. 이는 협업 또는 동적 앱에 완벽합니다.

3단계 – ACL 및 CLP로 보안 적용하기

Back4app 보안 메커니즘

Back4app은 액세스 제어 목록 (ACLs)클래스 수준 권한 (CLPs)을 제공하여 보안을 진지하게 다룹니다. 이러한 기능을 통해 객체별 또는 클래스별로 데이터를 읽거나 쓸 수 있는 사용자를 제한할 수 있으며, 권한이 있는 사용자만 데이터 수정이 가능합니다.

Document image


액세스 제어 목록 (ACLs)

ACL은 개별 객체에 적용되어 어떤 사용자, 역할 또는 공개가 읽기/쓰기 작업을 수행할 수 있는지를 결정합니다. 예를 들어:

Kotlin


클래스 수준 권한 (CLPs)

CLPs는 클래스의 기본 권한을 관리하며, 클래스가 공개적으로 읽거나 쓸 수 있는지 여부를 결정합니다.

  1. Back4app 대시보드로 이동, 앱을 선택하고 데이터베이스 섹션을 엽니다.
  2. 클래스를 선택 (예: “Todo”).
  3. 클래스 수준 권한 탭을 엽니다.
  4. 읽기 또는 쓰기를 위한 “인증 필요” 또는 공개를 위한 “접근 불가”와 같은 기본값을 구성합니다.
Document image


4단계 – 클라우드 코드 함수 작성

클라우드 코드는 Parse Server에서 사용자 정의 Kotlin 유사 JavaScript 코드를 실행할 수 있게 해줍니다 ( .js 파일로 업로드됨), 서버 인프라를 관리할 필요 없이. 이는 비즈니스 로직, 검증, 트리거 및 외부 API 호출에 이상적입니다.

작동 방식

일반적으로 JavaScript 함수, 트리거 및 필요한 npm 모듈을 main.js 파일에 배치합니다. 이 파일은 Back4App 프로젝트에 배포되며 Parse Server 환경에서 실행됩니다.

일반적인 사용 사례

  • 비즈니스 로직
  • 데이터 검증
  • 트리거 (예: beforeSave, afterSave)
  • 보안 집행
  • 통합 서드파티 API와 함께

함수 배포

아래는 간단한 클라우드 코드 함수입니다:

main.js


다음과 같이 배포합니다: Back4App CLI:

Bash


그런 다음 구성하고 배포하십시오:

Bash


함수 호출하기

Android (Kotlin) 코드에서 Parse SDK를 통해 호출합니다:

Kotlin


유사한 방식으로 REST 또는 GraphQL을 통해서도 호출할 수 있습니다.

5단계 – 인증 구성

Back4App에서 사용자 인증

Back4App은 Parse User 클래스를 사용하여 인증을 처리합니다. Parse는 안전한 비밀번호 해싱, 세션 토큰 등을 기본적으로 처리합니다.

사용자 인증 설정하기

Kotlin에서 새 사용자를 생성할 수 있습니다:

Kotlin


기존 사용자 로그인:

Kotlin


Google, Facebook 및 Apple과 같은 소셜 로그인을 통합할 수도 있습니다. 자세한 내용은 소셜 로그인 문서를 확인하십시오.

세션 관리

Parse는 세션 토큰을 자동으로 관리합니다. 현재 사용자에 접근할 수 있습니다:

Kotlin


그리고 로그아웃:

Kotlin


6단계 – 파일 저장 처리

파일 업로드 및 검색

Parse는 파일 업로드를 처리하기 위한 ParseFile 클래스를 포함합니다:

Kotlin


Parse는 파일 업로드를 처리하기 위한 ParseFile 클래스를 포함합니다:

파일 보안

ACL 및 CLP를 조정하거나 parse-server 구성에서 파일별 설정을 사용하여 파일을 업로드하거나 다운로드할 수 있는 사람을 제어할 수 있습니다.

단계 7 – 이메일 확인 및 비밀번호 재설정

  1. 이메일 확인을 활성화하십시오 Back4App 대시보드 설정에서.
  2. 보내는 주소, 이메일 템플릿 또는 원하는 경우 사용자 지정 도메인을 구성하십시오.
  3. 다음과 같이 사용하십시오 ParseUser.requestPasswordResetInBackground(email, callback) 앱에서 비밀번호 재설정 흐름을 트리거합니다.

단계 8 – 클라우드 작업으로 작업 예약

클라우드 작업을 사용하면 데이터 정리 또는 주기적인 알림 전송과 같은 일상적인 작업을 자동화할 수 있습니다.

JS


대시보드의 서버 설정 > 백그라운드 작업에서 작업을 예약하십시오.

9단계 – 웹훅 통합하기

웹훅은 특정 이벤트가 발생할 때마다 Back4App 앱이 외부 서비스에 HTTP 요청을 보낼 수 있도록 합니다.

  1. 웹훅 추가하기더보기 > 웹훅에서 Back4App 대시보드에 있습니다.
  2. 트리거 구성하기 (예: 새 객체 저장 후).
  3. URL 엔드포인트 추가하기 (슬랙 또는 스트라이프 웹훅과 같은).
웹훅 추가하기
웹훅 추가하기


10단계 – Back4App 관리 패널 탐색하기

Back4App 관리 앱은 비기술 사용자가 데이터를 관리할 수 있는 친숙한 웹 기반 인터페이스입니다.

  1. 활성화하기앱 대시보드 > 더보기 > 관리 앱에서 가능합니다.
  2. 첫 번째 관리자 사용자 만들기
  3. 관리 패널에 접근할 하위 도메인 선택하기.
  4. 로그인하기 데이터베이스의 기록을 쉽게 보고, 편집하거나 제거할 수 있습니다.
관리 앱 활성화하기
관리 앱 활성화하기


결론

이 포괄적인 튜토리얼을 따라함으로써, 당신은:

  • 안전한 백엔드를 Back4App에서 Android 앱을 위해 만들었습니다.
  • 데이터베이스를 구성했습니다 클래스 스키마, 데이터 유형 및 관계를 사용하여.
  • 실시간 쿼리를 통합했습니다 (라이브 쿼리)로 즉각적인 데이터 업데이트를 위해.
  • 보안 조치를 적용했습니다 ACL 및 CLP를 사용하여 데이터 접근을 보호하고 관리하기 위해.
  • 클라우드 코드를 구현했습니다 서버 측에서 사용자 정의 비즈니스 로직을 실행하기 위한 기능.
  • 사용자 인증을 설정했습니다 이메일 확인 및 비밀번호 재설정을 지원합니다.
  • 파일 업로드를 관리했습니다 선택적 파일 보안 제어와 함께.
  • 클라우드 작업을 예약했습니다 자동화된 백그라운드 작업을 위해.
  • 웹훅을 사용했습니다 외부 서비스와 통합하기 위해.
  • Back4App 관리 패널을 탐색했습니다 데이터 관리를 위해.

견고한 Android (Kotlin) 프론트 엔드와 강력한 Back4App 백엔드를 갖춘 당신은 이제 기능이 풍부하고 확장 가능하며 안전한 애플리케이션을 개발할 준비가 되어 있습니다. 더 고급 기능을 탐색하고 비즈니스 로직을 통합하며 Back4App의 힘을 활용하여 서버 및 데이터베이스 관리에서 수많은 시간을 절약하세요. 행복한 코딩 되세요!

다음 단계

  • 생산 준비가 완료된 Android 앱을 구축하세요 이 백엔드를 확장하여 더 복잡한 데이터 모델, 캐싱 전략 및 성능 최적화를 처리합니다.
  • 고급 기능 통합 전문 인증 흐름, 역할 기반 접근 제어 또는 외부 API(예: 결제 게이트웨이)와 같은.
  • Back4app의 공식 문서 확인 고급 보안, 성능 조정 및 로그 분석에 대한 심층적인 내용을 위해.
  • 다른 튜토리얼 탐색 실시간 채팅 애플리케이션, IoT 대시보드 또는 위치 기반 서비스에 대해. 여기서 배운 기술을 서드파티 API와 결합하여 복잡한 실제 애플리케이션을 만들 수 있습니다.