Flutter란
Flutter는 구글에 의해 개발된 모바일 앱을 개발하기 위한 프레임워크입니다. 최근에는 「모바일 애플리케이션 프레임워크」라고 불리기도 합니다. Flutter를 이용하면 "iOS" "Android" 각각의 애플리케이션을 동일한 개발 언어, 동일한 개발 환경에서 작성 가능합니다. 그뿐만 아니라, Windows · Mac · Linux라고 하는 복수의 플랫폼에도 대응하고 있습니다. 보통 모바일 앱 개발에서는 iOS와 안드로이드에서 동일한 앱을 만들 경우 각각에 맞는 프로그래밍 언어나 개발 환경을 준비해야 합니다. iOS 용으로 작성한 코드는 안드로이드용으로는 사용할 수 없고 반대도 마찬가지입니다. 그 점, Flutter를 사용하면, 작성한 코드를 iOS 용· Android 용 각각에 사용하게 합니다. 실제로는 다소의 개량이 필요하지만 코드 작성이 1회로 끝나는 것은 큰 장점입니다. 이러한 특징 때문에 Flutter는 iOS와 안드로이드 둘 다에서 앱을 출시하고 싶을 때 사용됩니다.
Flutter 개발에 사용되는 Dart란
Dart(다트 다트)는 2011년에 Google에 의해 발표된 프로그래밍 언어입니다.주로 Flutter를 사용한 개발에 사용됩니다.
원래 Dart는 자바스크립트의 단점을 보완할 목적으로 개발된 프로그래밍 언어입니다.자바스크립트는 확장성이나 유지보수성이 그다지 좋지 않아 대규모 개발에 적합하지 않습니다.그 약점을 보완하기 위해 개발된 것이 Dart입니다.
그렇기 때문에 Dart에는 다음과 같은 특징이 있습니다.
- 습득 난이도가 낮음
- 코드 실행 성능이 뛰어나다
- 대규모 개발에 적합하다
Dart는 자바스크립트와 마찬가지로 학습 난도가 낮습니다. 특히 자바스크립트와 문법이 비슷하기 때문에 자바스크립트를 습득하고 있는 사람이라면 Dat은 쉽게 습득할 수 있다고 할 수 있습니다. 또한 Dart는 코드 실행 속도가 빠르고 성능이 뛰어나 대규모 개발에 이용할 수 있습니다. 아울러 개발 시 실행 결과를 바로 확인할 수 있는 '핫 리로드 기능'이 탑재되어 있어 개발 생산성도 향상됩니다.
Flutter for Web 이란
Flutter for Web은 간단히 말해서 Flutter의 Web 애플리케이션 버전 입니다. 주로 Flutter는 모바일 애플리케이션 개발을 할 수 있는 툴이지만 Flutter for Web은 웹 애플리케이션 개발에 특화되어 있습니다.
Flutter 특징
- Flutter 모바일 앱 개발 iOS ·안드로이드를 모두 개발할 수 있다
- Web 앱 개발 Windows · Mac · Linux 등 OS를 불문하고 개발 가능
Flutter for Web은 Fulutter에서 개발한 Dart 코드를 브라우저 상에서 움직이게 함으로써 Windows, Mac, Linux 등 OS를 불문하고 움직일 수 있습니다. 또한 개발 시 테스트나 디버깅은 브라우저 상에서 할 수 있기 때문에 PC 스펙이 낮아도 개발할 수 있습니다. 고사양 컴퓨터가 필요하면 준비 비용도 올라가기 때문에 비용을 줄여 개발할 수 있다는 점은 장점입니다. 이처럼 Flutter for Web도 Flutter 만큼이나 편리한 도구입니다.
Flutter를 이용한 모바일 앱 개발 절차
Flutter를 사용한 모바일 앱의 개발 절차를 4단계로 해설합니다.
1단계: Flutter 다운로드 & 설치
2단계: Flutter의 개발 환경을 구축
3단계: Flutter를 사용하여 앱을 개발
4단계: Flutter에서 개발한 앱을 출시
1단계: Flutter 다운로드 & 설치
우선 모바일 앱 개발에 필요한 Flutter SDK(소프트웨어 개발 키트)를 다운로드하여 설치합니다.
Windows와 Mac에서 약간 설치 절차가 다르지만 기본적인 흐름은 동일합니다. 대략적인 인스톨 순서는 다음과 같습니다.
- Flutter SDK 다운로드하기
- 다운로드 파일을 압축 해제
- path 지정 (Mac만)
Flutter에서 개발을 하려면 Flutter 공식 사이트에서 SDK를 다운로드해 PC 내에 배치해야 합니다.
다운로드 파일 압축 해제는 표시되는 지시에 따라 진행하면 어렵지 않습니다. 디렉터리의 배치는 "C:\src\flutter"와 같이 임의의 디렉터리를 설정해 주세요.
다만, 너무 깊은 계층에 디렉터리를 두어 버리면, 나중에 어디로 설정했는지 알기 어려워집니다. "C:\src\flutter\000\000" 처럼 계층을 깊게 하지 말고 가능한 얕게 설정해두는 것이 좋습니다.
또한 Mac에서의 개발만 디렉터리 배치 후 path 를 지정하는 작업이 필요합니다.
2단계: Flutter의 개발 환경을 구축
Flutter SDK를 준비하면 다음에는 개발 환경을 구축하겠습니다. SDK가 있으면 모바일 앱 개발을 할 수 있지 않을까라고 느끼는 사람도 있을지도 모릅니다. 그러나 다음 툴을 사용하면 보다 원활하게 개발을 진행할 수 있습니다.
3단계: Flutter를 사용하여 앱을 개발
Flutter 개발 환경이 준비되면 드디어 앱 개발을 진행합니다. 앱 개발을 시작할 때는 다음 순서로 개발 준비를 하십시오.
- Flutter 내에서 프로젝트 생성
- 명령 줄어서 앱 부팅
- 시뮬레이터를 기동
- 개발 시작
우선 Flutter 내에서 프로젝트를 생성합니다. 프로젝트는 "flutter create 프로젝트명(앱명)"으로 작성해 주세요. 프로젝트를 작성함으로써 앱 코딩 등을 할 수 있게 됩니다.
프로젝트를 시작하면 다음에는 앱 시뮬레이터를 부팅하여 코드 실행을 확인할 수 있는 준비를 하십시오.
여기까지 준비되면 나중에는 앱 개발만 하면 됩니다. 내가 개발하고 싶은 앱에 맞춰 Dart로 코딩해 나갑니다.
4단계: Flutter에서 개발한 앱을 출시
앱이 개발되면 iOS ·안드로이드 각각 앱을 출시합시다.
Flutter에서 개발한 앱을 공개하기 위해서는 신청이 필요합니다. iOS 용 앱의 경우 애플 디벨로퍼 프로그램에 등록해야 합니다. 공개에 필요한 정보(애플리케이션의 타이틀이나 설명문·스크린숏 등)를 준비해, Apple에 신청을 합시다.
Android 용 애플리케이션의 경우 Google Play에 신청을 해야 합니다. 둘 다 심사가 있기 때문에 개봉까지 시간이 걸리는 경우도 있는 것 같습니다. 개봉 예정일이 있을 경우 심사에 난항을 겪을 것으로 예상하여 빠른 시일 내에 개발을 완료해야 합니다.
'IT' 카테고리의 다른 글
코드 리뷰란? (0) | 2023.03.04 |
---|---|
C언어란 무엇인가 (0) | 2023.03.04 |
Java 의 Class 란 무엇인가? (0) | 2023.02.05 |
JavaScript란? JavaScript의 특징 (0) | 2023.02.05 |
프로그래밍 언어 Go 란 무엇인가? (0) | 2023.02.05 |
댓글