# 튜토리얼(Tutorial)

## 튜토리얼 선택을 위한 가이드

플렉스튜디오를 처음 시작하는 분들을 위한 튜토리얼은 2가지가 제공됩니다.&#x20;

* [메모장 앱 만들기](https://docs.flextudio.com/flextudio/starter/tutorial/memo)&#x20;

  따라하면서 툴에 익숙해질 수 있는 실습입니다. UI에 익숙해지고 싶거나 스튜디오에서 디자인 하는 방법을 알고 싶다면 해당 튜토리얼이 도움이됩니다.
* [템플릿을 활용해 앱 만들기](https://docs.flextudio.com/flextudio/starter/tutorial/usedtrade)

  플렉스튜디오에서 제공하는 디자인 템플릿을 활용합니다. 템플릿을 활용하는 방법과 플렉스튜디오만의 이론적 개념을 함께 학습할 수 있는 실습입니다.

두 실습을 모두 학습하는 것은 상호보완적인 실습 특성상 초보자에게 많은 도움이 될 수 있습니다. 만약 시간이 없거나 특정기능이 궁금하다면 목적에 따라 실습을 선택하는걸 추천합니다.

## 무엇을 배워야 하나요?

플렉스튜디오 앱 개발을 위해 배워야 하는 것들을 소개합니다.

{% hint style="info" %}
**왜 앱 개발 절차를 분류하여 알아야하나요**?

각 절차를 구분하여 순차적인 학습을 하는 것은 플렉스튜디오로 개발하는 방법을 익히는데 중요합니다.

툴에서 개발자가 어떤 작업을 수행할 때 개발하는 부분이 어떤 것에 위치하고 있는지 정확히 아는 것은&#x20;

개발하면서의 혼란 감소, 인터페이스부터 DB까지의 순차적인 개발, 디버깅 시 문제 파악 유리 등 많은 이점을 가집니다.

또한 어떤 부분이 부족하여 더 학습해야 하는지 학습 방향을 잡을 수 있습니다.
{% endhint %}

### 앱 개발 절차

앱을 개발하는 과정에서 이해해야 할 핵심 요소는 다음과 같습니다.&#x20;

* **디자인(Design & UX)**: 사용성(UX)을 고려하여 화면 흐름을 설계하고 정보를 알맞게 배치 합니다.
* **이벤트 (Event)**: 사용자의 행동에 반응하여 앱이 동작하도록 주요 기능을 개발합니다.
* **서비스 ( Service)**: 앱에서 사용되는 데이터를 서버나 외부 저장소에서 가져오거나 보내는 기능을 개발합니다.&#x20;

&#x20;각 핵심요소는 개발자의 경험과 역량에 따라서 앱의 수준이 달라질 수 밖에 없습니다.&#x20;

각 핵심요소 별로 사용자에게 다음과 같은 앱의 가치를 전달할 수 있습니다. 그리고 이런 가치를 더 증대하기 위해 도움이 되는 개발의 경험들이 있습니다.

<table><thead><tr><th width="116">핵심절차</th><th>확보할 수 있는 앱의 가치 </th><th>개발 역량에 도움이 되는 경험 </th></tr></thead><tbody><tr><td><strong>디자인</strong></td><td>직관적이고 만족스러운 인터페이스를 제공, 복잡한 기능을 갖춘 앱도 사용자가 직관적으로 사용 가능</td><td>사용자 경험(UX)과 사용자 인터페이스(UI) 디자인의 기본 원칙, 와이어프레임 및 프로토타입 작성, 그리고 디자인 도구의 활용 방법</td></tr><tr><td><strong>이벤트</strong></td><td>사용자의 입력과 상호작용에 따라 더 다양한 경우의  동작이 가능,  풍요로운 사용자 인터페이스를 구현하여 높은 기능의  앱을 구현 가능</td><td>Javascript 기본과 함께, 이벤트 기반 프로그래밍의 이해</td></tr><tr><td><strong>서비스</strong></td><td>사용자들의 데이터를 통합해서 서비스를 제공하거나 개인화된 맞춤화 서비스를 제공하거나, 외부 서비스와 연결 가능 </td><td>데이터 모델링, 데이터베이스 이해(SQL, NoSQL), 파이어베이스, 구글시트, 에어테이블</td></tr></tbody></table>

현재 섹션인 \[플렉스튜디오 처음 시작하기]-\[튜토리얼]에서는 핵심 절차 중 디자인과 이벤트에 대한 실습만을 다룹니다. 이후 과정은 심화 실습에서 학습하실 수 있습니다.&#x20;

### 더 고도화 된 앱을 개발하기 위해 필요한 내용

* **데이터 관리(DB)** : DB나 데이터 처리 서비스를 활용해  DB를 설계하고 필요한 데이터 처리를 개발합니다.&#x20;
* **API 연동** : ChatGPT, 날씨, 지도, 결제와 같은 외부 서비스들을 연결할 수 있도록 API를 구성하고 응용합니다.&#x20;

각 단계는 앱 개발의 성공을 위해 필수적이며, 개발자는 이들 절차를 이해하고 적용함으로써 사용자에게 가치 있는 앱을 제공할 수 있습니다.
