저자 소개 : 오준석
교육하고 책 쓰는 개발자. 일본에서 개발자로 생활하다 2010년에 귀국해 안드로이드 앱을 개발한다.
유튜브 (안드로이드 생존코딩)
youtube.com/c/안드로이드생존코딩
******* 이 책의 특징
입문자와 초보자를 배려한 진행 순서로 되어 있다.
프로그래밍 초보자와 모바일 앱 개발 입문자를 대상으로 하고 있다.
쉬운 표현으로 앱을 개발할 수 있게 설명하고 있다.
******* 이 책은 난이도 별로 3가지 예제를 가지고 실습을 한다.
******* 이 책이 다루는 범위
1) 개발 환경
- 개발 환경 구성 방법에 대한 설명
- 안드로이드 스튜디오 사용 방법 설명
- 플러터 플러그인 설치 방법 설명
2) 플러터 앱 동작 방식
- 플러터 프로젝트의 구성을 다룹니다.
- 기본 샘플 앱을 분석해가며 플러터 앱 동장 방식을 설명합니다.
3) 레이아웃 작성
- 플러터로 앱 UI 작성하는 방법을 설명합니다.
- 앱 개발 패턴을 설명합니다.
4) 화면 이동
5) 다트 언어
- 변수, 메서드, 클래스 등 기본 문법을 설명합니다.
- 함수형 프로그래밍, 비동기 프로그래밍 등 고급 문법을 설명합니다.
6) 그 외
- 실습입니다.
******* 개발 환경
1) 플러터 1.12.13, 다트 2.7.0 버전입니다.
================================================================================
0장 플러터 개발 환경 준비하기
0.1 앱 개발 방식 소개
네이티브 방식과, 하이브리드 방식, 크로스 플랫폼 방식을 구분하여
설명을 하고 있습니다.
각 방식의 장점과 단점을 비교적 쉽게 풀어서 설명을 하고 있습니다.
0.2 플러터 소개
플러터에 대한 소개와 장점에 대하여 설명하고 있습니다.
얼마나 예쁘고 네이티브하게 개발을 할 수 있는지 알 수 있습니다.
아래는 책에서 설명하는 내용입니다.
* 낮은 진입장벽, 높은 네이티브 성능, 훌륭한 개발 도구 지원, 예쁜 UI
플러터는 개발에는 다트라는 언어를 사용합니다.
0.3 플러터 개발 환경 구성
1. 플러터 SDK(소프트웨어 개발 키트) 설치
2. 환경 변수 등록
3. 앱 개발 도구 설치
1장 생애 첫 모바일 앱 생성하기
1.1 프로젝트 생성
안드로이드 스튜디오를 이용해서 첫 프로젝트를 생성하고 준비하는 과정을 설명하는 챕터입니다.
1.1.1 환경 구성 검사
이 챕터는 플러터를 개발할 환경 구성이 잘되었는지 검사해주고 가이드를 해주는 명령어에 대하여 설명하고 있습니다.
터미널에서 실행하는 방법과 안드로이드 스튜디오 하단에서 터미널을 실행하여 수행하는 방법등으로 설명하고 있습니다.
1.2.1 에뮬레이터로 실행
이번 챕터는 프로젝트 생성 후 에뮬레이터로 샘플 프로젝트에 생성된 앱을 실행해보는 챕터로 구성되어 있습니다.
2장 다트 문법
2.1 다트 언어 연습 환경
플러터 개발에는 다트라는 언어를 사용합니다. 이 책에서는 플러터 앱 개발에 꼭 필요한 문법과 핵심 문법을 설명합니다.
자세한 내용은 다트 온라인 매뉴얼에서 확인할 수 있습니다.
2.2 기본 문법
기본 문법으로 주석, 변수, 상수, 연산자 사용법에 대해서 설명하는 챕터입니다.
2.3 함수
다트 함수는 특별한 코드 묶음 단위입니다. 플러터로 개발할 때는 다트에서 제공하는 다양한 함수를 사용하게 됩니다.
3장 프로젝트 구조와 앱 구조
3.1 프로젝트 구조 이해
플러터 프로젝트 구조와 앱 구조에 대하여 설명합니다. 앱 구조는 샘플 앱을 분석하고 간단한 실습을 통해서 파악하도록 유도하고 있습니다.
* 프로젝트 구조 이해
* 샘플 앱 분석하기
* 간단한 실습
프로젝트 구성 요소에 대하여 설명하고 파일 구성 요소도 간략하게 설명을 하고 있습니다.
3.2 샘플 앱 분석하기
프로젝트를 새로 작성하고 각 폴더와 파일들을 분석하고 코드 리뷰를 진행하는 챕터입니다.
4장, 5장 기본 위젯
4.1 예제를 연습하는 방법
화면을 구성하는 컴포넌트를 위젯이라고 부릅니다. 화면을 구성하려면 다양한 위젯을 조합해야 하므로 가능하면 많은 위젯을 아는 것이 좋습니다. 이번장에서는 자주 사용하는 위젯에 대하여 설명을 합니다.
4.1.1 실습 환경 소개
안드로이드 스튜디오에서 예제를 작성해 실행하면서 익히도록 하고 있습니다. 예시 코드와 함께 실습하도록 합니다.
4.1.2 그 외 임시 실습 환경 소개
코드는 안드로이드 스튜디오에서 작성하는 것이 기본입니다. 급하게 시험을 해보고 싶을때를 위한 웹 서비스를 활용한 방법에 대해서 설명을 합니다.
사이트 소개 : dartpad.dev
이 사이트는 다트 뿐만 아니라 플러터 코드도 실행할 수 있습니다.
4.2 화면 배치에 쓰는 기본 위젯
화면 배치 위젯 종류에 대하여 설명하고 실습하는 챕터입니다.
4.2.1 Container
4.2.2 Column
4.2.3 Row
실습 환경이 좀 무거운 편이다. 안드로이드 스튜디오에서 개발을 하면 편하기는 한데 환경 자체가 좀 무겁다. 그래서 사양이 떨어지는 컴퓨터에서는 좀 버벅임을 느낀다.
개발 노트북이 저 사양이 아닌데도 좀 무겁게 느껴진다. 개인적으로 무거운 IDE 툴을 별로 안좋아한다. 그래서 VSCODE 환경으로 옮겨서 개발 환경 셋팅을 하였다. 확실히 가볍다.
6장 내비게이션
6.1 새로운 화면으로 이동
새로운 화면으로 전환하거나 이전 화면으로 돌아가는 것을 내비게이션이라고 하는데 이 장에서는 플러터에서 제공하는 다양한 내비게이션 방법을 설명합니다.
6.1.1 파일 분할 및 임포트 방법
파일 하나에 모든 클래스를 작성할 수 있습니다. main.dart 안에 여러 페이지를 작성할 수도 아니면 별도 파일로 분리하여 작성도 가능합니다.
파일을 분리하면 임포트하여 다른 파일에 있는 클래스를 사용할 수 있습니다.
실제 프로그램을 작성할 때는 코드를 여러 파일에 분리하는 것이 코드 재활용 등의 면에서 좋습니다.
6.2 routes를 활용한 내비게이션
페이지를 이동할 때마다 직접 이동할 페이지의 클래스를 작성해서 사용했습니다. 이 장에서는 routes를 활용하여 내비게이션을 구현하고 실습하도록 하고 있습니다. 코드가 한결 짧아지고 직관적인 모습을 보여줍니다.
6.3 내비게이션 동작 방식의 이해
플러터의 화면은 스택 주조로 메모리에 쌓입니다. 스택은 나중에 들어간것이 먼저 나오는 구조입니다. 스택에서 모든 화면이 제거되면 앱이 종료됩니다.
자주 호출되면 안 되는 처리를 위한 방법과 생명주기 메서드에 대해서도 알게 됩니다.
각 클래스의 동작과 소스 코드를 실습하게 함으로써 이해도를 높여줍니다.
짧은 코드와 함께 설명이 잘 되어 있습니다.
7장 복잡한 UI 작성
7.1 해법 요약
이 장에서는 다양한 위젯을 활용하여 실제로 자주 사용할 만한 UI를 작성하는 장입니다.
다양한 요령과 팁을 제시하고 있습니다.
-
플러터로 UI를 작성하는 요령과 팁
-
다른 위젯으로 감싸거나 벗기는 팁
-
라이브러리를 추가하고 사용하는 방법
-
스크롤 안에 스크롤 객체를 넣을 때의 팁
7.2 스텝1: 뼈대 작성
main.dart 파일을 수정하는 것으로 시작합니다.
7.3 스텝2: BottomNavigationBar 위젯을 이용한 하단 탭 구성
총 3개 페이지로 구성된 UI 앱을 만드는 장입니다.
하단 탭을 구성하기 위한 소스코드 작성 후 테스트를 진행합니다.
7.4 스텝3: AppBar 위젯 수정
AppBar 위젯은 제목이나 메뉴를 표시하는 등 머티리얼 디자인에서 앱의 통일성을 위해 꼭 필요한 요소입니다.
프로퍼티를 수정해 봅니다.
7.5 스텝4: 화면이 3개인 UI 작성
3개의 페이지를 작성해 보고 각 페이지가 표시되도록 코드를 수정해 보는 장입니다.
8장 9장 10장 실습
3개의 난이도로 이루진 프로젝트를 소스 코드와 함께 학습합니다.
다양한 예제로 구성 되어 있어서 흥미롭습니다.
책 전반적으로 잘 구성이 되어있고 실습하기 좋게 되어있습니다.
플러터를 처음 접하시거나 입문하시려는 개발자분들 학생분들은 좋은 선택지가 될 듯합니다.
추천합니다.