메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

소문난 명강의 : 오준석의 플러터 생존코딩(개정판)

Flutter와 Dart 입문부터 안드로이드와 iOS용 3가지 앱 개발까지

한빛미디어

집필서

판매중

4.8점 (18명)
좋아요 : 2

소문난 명강사 ‘오준석’이 안드로이드·iOS 앱 개발자에게 보내는 선물 같은 책

 

이 책은 플러터의 기본을 빠르게 익히고 앱을 직접 만들며 필요한 기능을 알아가는 ‘입문 + 활용서’로서 독자의 시간을 아껴준다. ‘다트 언어 + 플러터 + 안드로이드 스튜디오 + 앱 개발’을 한 권으로 전달하므로, 다트(Dart) 언어와 플러터(Flutter)를 몰라도 빠르게 배워 앱을 만들 수 있다. 추가로 개정판에서는  플러터 2의 변경점인 널 안전성(Null Safety)에 대해 설명한다.

 

※  플러터2 업데이트에 따른 코드 대응 및 플러터 2의 변경점 설명 

 

추천사

이 책은 다트 언어와 위젯에 쉽게 익숙해지도록 구성되어 누구라도 앱을 만들 수 있게 해줍니다. 또한 저자가 검증하고 실무에 사용하는 솔루션 코드로 가득해 입문자뿐 아니라 기존 앱 개발자에게도 ‘사이다’ 같은 책이 될 겁니다. 한 번 코딩으로 안드로이드와 iOS 앱을 개발할 수 있는 플러터의 매력을 이 책과 함께 만끽하시기 바랍니다.

_ 문주현, 안드로이드 개발자

 

오준석 저자

오준석

교육하고 책 쓰는 개발자. 일본 테크시드, 토카이리카, LG전자 등에서 개발자로 생활하다 2010년에 귀국했습니다. 현재는 안드로이드 앱을 개발하고 온라인 교육 플랫폼인 오준석의 생존코딩과 인프런에서 온라인 강의를, 세민직업전문학교에서 오프라인 강의를 합니다. 저서로 『소문난명강의 : 오준석의 플러터 생존코딩(개정판)』(한빛미디어, 2021), 『될 때까지 안드로이드』(루비페이퍼, 2018) 등이 있습니다.

 

[1부 플러터에 입문하기]

0장 플러터 개발 환경 준비하기 

_ 0.1 앱 개발 방식 소개

_ 0.2 플러터 소개

_ 0.3 개발 환경 구성

_ 0.4 마치며

 

1장 생애 첫 모바일 앱 생성하기 

_ 1.1 프로젝트 생성

_ 1.2 안드로이드용 프로젝트

_ 1.3 iOS용 프로젝트

_ 1.4 마치며

 

2장 다트 문법 

_ 2.1 다트 언어 연습 환경

_ 2.2 기본 문법

_ 2.3 함수

_ 2.4 분기와 반복

_ 2.5 객체 지향 프로그래밍

_ 2.6 컬렉션

_ 2.7 함수형 프로그래밍

_ 2.8 기타 유용한 기법

_ 2.9 마치며

 

3장 프로젝트 구조와 앱 구조 

_ 3.1 프로젝트 구조 이해

_ 3.2 샘플 앱 분석하기

_ 3.3 실습

_ 3.4 마치며

 

4장 기본 위젯 I 

_ 4.1 예제를 연습하는 방법

_ 4.2 화면 배치에 쓰는 기본 위젯

_ 4.3 위치, 정렬, 크기를 위한 위젯

_ 4.4 버튼 계열 위젯

_ 4.5 화면 표시용 위젯

_ 4.6 마치며

 

5장 기본 위젯 II 

_ 5.1 입력용 위젯

_ 5.2 다이얼로그

_ 5.3 이벤트

_ 5.4 애니메이션

_ 5.5 쿠퍼티노 디자인

_ 5.6 마치며

 

6장 내비게이션 

_ 6.1 새로운 화면으로 이동

_ 6.2 routes를 활용한 내비게이션

_ 6.3 내비게이션 동작 방식의 이해

_ 6.4 마치며

 

7장 복잡한 UI 작성 

_ 7.1 해법 요약

_ 7.2 스텝 1 : 뼈대 작성

_ 7.3 스텝 2 : BottomNavigationBar 위젯을 이용한 하단 탭 구성

_ 7.4 스텝 3 : AppBar 위젯 수정

_ 7.5 스텝 4 : 화면이 3개인 UI 작성

_ 7.6 생산성을 높여주는 단축키

_ 7.7 스텝 5 : 상단 부분

_ 7.8 스텝 6 : 중단 부분

_ 7.9 스텝 7 : 하단 부분

_ 7.10 마치며

 

8장 플러터 2 변경점

_ 8.1 널 안전성

_ 8.2 지원 기기 확대

_ 8.3 마치며

 

 

[2부 플러터로 앱 개발하기]


9장 비만도 계산기 

_ 9.1 해법 요약

_ 9.2 준비하기

_ 9.3 스텝 1 : 기본 코드 작성

_ 9.4 스텝 2 : 키와 몸무게를 입력하는 화면 작성

_ 9.5 스텝 3 : 결과 화면 작성

_ 9.6 스텝 4 : 값 검증 및 화면 전환

_ 9.7 스텝 5 : 결과 표시

_ 9.8 마치며

 

10장 스톱워치 

_ 10.1 해법 요약

_ 10.2 스텝 1 : UI 작성

_ 10.3 스텝 2 : 타이머 구현하기

_ 10.4 스텝 3 : 랩타임 기록하기

_ 10.5 마치며

 

11장 할 일 관리 

_ 11.1 해법 요약

_ 11.2 스텝 1 : 할 일 관리 앱 기본 버전 작성

_ 11.3 스텝 2 : 파이어베이스 설정

_ 11.4 스텝 3 : Firestore를 활용하여 기능 수정

_ 11.5 마치며

출판사 서평/리뷰

 

★ <소문난 명강의> 시리즈 소개

이 시리즈는 단기간에 실무 능력을 갖추게 도와줍니다.

유튜브, 블로그, 학원, 대학 등에서 이미 검증된 강의 본연의 장점을 극대화하고 더 체계화해 책으로 담았습니다. 입문자 눈높이에서 설명하고 작고 실용적인 프로젝트를 수행해 실전 능력을 키워줍니다. 빠르게 개발 능력을 배우려는 입문자와 더 다양한 경험을 쌓으려는 기존 개발자에게 유용합니다.

 

 

★ 이 책의 모태 소문난 명강의 ‘오준석의 생존코딩’ 소개

이 책의 모태 강의는 인프런과 오준석의 생존코딩에서 제공하고 있는 ‘Flutter 입문’, ‘Flutter 중급’ 입니다. ‘Flutter 입문’ 온라인 강좌는 인프런에서 1200개, 생존코딩에서 130개 넘게 판매되었고, 구글의 파이어베이스를 활용한 인스타그램 따라 하기 예제를 다룹니다. ‘Flutter 중급’ 온라인 강좌는 인프런에서만 600개 넘게 판매되었고 네트워크 통신, 상태 관리를 다룹니다. 그 외에 ‘Flutter 인스타그램 2.0’, ‘Flutter 응용 - 공공 API를 활용한 앱 만들기’ 등의 플러터 강의가 있습니다. 동영상 강의와 책은 소개하는 내용의 범위나 정보를 제공하는 방식이 다르므로 상호보완적입니다. 따라서 이미 온라인 강좌로 수업을 들었더라도 요약, 정돈된 개발 정보를 제공하는 이 책이 도움이 될 겁니다. 반대로 책을 먼저 보더라도 저자의 동영상 강의가 도움이 될 겁니다.

 

유튜브 채널(오준석의 생존코딩): youtube.com/c/안드로이드생존코딩

온라인 강의 플랫폼(오준석의 생존코딩): survivalcoding.com


 

★ 이 책의 특징

[입문자와 초보자를 배려한 진행 순서]

이 책은 프로그래밍 초보자와 모바일 앱 개발 입문자를 대상으로 합니다. 되도록 쉬운 표현으로 누구나 앱을 개발할 수 있게 설명합니다.

 

[초보자 중심]

입문자나 초보자에게 ‘앱을 만들 수 있다’는 자신감을 심어주는 것이 목표입니다.

 

[올인원 패키지]

플러터 동작 원리, 다트 프로그래밍, 객체 지향, 함수형 프로그래밍, 파이어베이스 등을 다룹니다. 이 책 한 권으로 플러터와 다트 입문서를 모두 대체할 수 있습니다.

 

[예제 난이도 안내]

예제 난이도를 별 개수로 표현했습니다.

초급 - ★☆☆

중급 - ★★☆

고급 - ★★★

 

[다루는 예제]

★☆☆ : 복잡한 UI 작성

★☆☆ : 비만도 계산기

★★☆ : 스톱워치

★★★ : 할 일 관리

 

 

★ 이 책이 다루는 범위

 

[개발 환경]

_ 개발 환경 구성 방법을 다룹니다.

_ 안드로이드 스튜디오 사용 방법을 다룹니다.

_ 플러터 플러그인 설치 방법을 다룹니다.

 

[플러터 앱 동작 방식]

_ 플러터 프로젝트의 구성을 다룹니다.

_ 기본 샘플 앱을 분석해가며 플러터 앱 동작 방식을 이해합니다.

 

[레이아웃 작성]

_ 플러터로 앱의 UI를 작성하는 방법을 다룹니다.

_ 자연스럽게 플러터 앱 개발 패턴을 다룹니다.

 

[화면 이동]

_ 화면 이동 방식을 이해합니다.

_ 화면 이동을 할 때 데이터도 함께 전달하는 방법을 다룹니다.

 

[다트 언어]

_ 변수, 메서드, 클래스 등 기본 문법을 다룹니다.

_ 함수형 프로그래밍, 비동기 프로그래밍 등 고급 문법을 다룹니다.

 

[그 외]

_ 플러터 이해를 돕는 간단한 샘플 예제를 다룹니다.

_ 클라우드 서비스인 파이어베이스를 사용하여 실전 앱 예제를 다룹니다.

_ 플러터 2의 변경점인 널 안전성(Null Safety)에 대해 다룹니다.

 

 

★ 이 책의 구성

 

이 책은 플러터와 다트를 학습하고 총 3가지 실용적인 앱을 개발합니다. 1부 ‘플러터에 입문하기’ (0~7장)에서는 플러터와 다트를 이해하는 데 필요한 기초 내용을 알아보고 복잡한 UI를 작성해봅니다. 8장에서는 플러터 2의 달라진 점을 살펴봅니다. 2부 ‘플러터로 앱 개발하기’(9~11장)에서는 3가지 앱을 만들어보며 플러터로 앱을 개발하는 방법을 알아봅니다.

 

[1부 플러터에 입문하기]

 

0장 : 플러터 개발 환경 준비하기

플러터에 대해 알아보고 플랫폼별 개발 환경을 준비합니다.

 

1장 : 생애 첫 모바일 앱 생성하기

프로젝트 생성 방법과 에뮬레이터 또는 실제 기기에서 실행하는 방법을 배웁니다.

 

2장 : 다트 문법

다트 프로그래밍을 배웁니다. 앱이 원하는 대로 동작하려면 프로그래밍이 필요합니다. 플러터에서 주로 사용되는 대부분의 문법을 익힙니다.

 

3장 : 프로젝트와 앱 구조

첫 플러터 프로젝트를 생성하고 샘플 앱을 분석하면서 플러터 프로젝트의 동작 방식을 이해합니다.

 

4장 : 기본 위젯 I

플러터가 제공하는 다양한 머티리얼 기본 위젯을 빠르게 훑어봅니다.

 

5장 : 기본 위젯 II

사용자와 상호작용하는 위젯, 애니메이션 지원 위젯, iOS 스타일의 쿠퍼티노 위젯을 배웁니다.

 

6장 : 내비게이션

화면 전환을 하고 데이터를 전달하는 방법을 배웁니다. 플러터에서는 화면 전환을 ‘내비게이션’이라고 부릅니다.

 

7장 : 복잡한 UI 작성 ★☆☆

플러터로 처음부터 하나씩 UI를 작성하면서 다양한 위젯을 다루는 방법을 배웁니다. 따라 하다 보면 자연스럽게 플러터 앱 개발 방법을 익히게 됩니다.

 

8장 : 플러터 2 변경점

플러터 2부터 지원되는 널 안전성 기능에 대해 다룹니다. 널 안전성을 지원하게 되면 좀 더 안전한 코드를 작성할 수 있습니다.

 

[2부 플러터로 앱 개발하기]

 

9장 : 비만도 계산기 ★☆☆

키와 몸무게를 입력하면 비만도를 표시해주는 앱을 만듭니다. 플러터로 UI와 프로그래밍을 함께 다루는 첫 장입니다. 화면 전환을 하고, 데이터를 전달하고, 계산하여 결과를 도출하는 방법을 배웁니다.

 

10장 : 스톱워치 ★★☆

스톱워치 앱을 만듭니다. 일정 주기로 반복되는 동작을 어떻게 구현하는지 배웁니다. 버튼을 눌렀을 때 UI가 변경되는 다이내믹한 처리도 배웁니다.

 

11장 : 할 일 관리 ★★★

기본적인 할 일 관리 앱을 작성하고, 서버 없이도 서버의 기능을 사용할 수 있는 파이어베이스 서비스를 활용하여 클라우드 DB에 저장하는 앱을 만드는 방법을 배웁니다.

책 소개

  • 책 제목 : 오준석의 플러터 생존코딩 개정판
  • 글쓴이 : 오준석
  • 출판사 : 한빛미디어
  • 개정판 1쇄 : 2021년 5월 28일

책의 특징

해당 책은 3가지의 앱을 기준으로 플러터 앱 개발을 서술하고 있다.
만일 해당 책의 설명이 부족하거나(본인은 그렇다고 생각되지 않았지만 혹시 모르므로), 더 자세히 알고싶다고 한다면 저자가 제공하는 유튜브 채널과, 온라인 강의를 제공하고 있다.


해당 책은 안드로이드에 익숙치 않은 초보 개발자들에게도 추천하는 바이다. 안드로이드 스튜디오 설치 및 에뮬레이터 설정 즉 안드로이드의 기초부터 프로젝트 구조까지 간략하게지만 안드로이드와 플러터의 기본과 베이스에 대해 차근히 서술하고 있다. 다트를 처음 접하더라도 약 50장 가량 다트 문법을 알려준다. 다트는 직관적으로 이해하기 쉬운 언어이기 때문에, 기본 문법이지만 해당 앱에서 실습을 하고 본인이 원하는 앱을 간단히 만들기에 부족하지 않은 수준이다.


UI를 기준으로 앱 개발에 자주 쓰이는 위젯들과 배치에 대해 자세히 알려주고 있다.


책에서 다루는 실습 내용은 비만도 계산기, 스톱워치, 할 일 관리이다.
해당 실습들에서 UI의 배치, 화면전환, UI의 처리, Firebase 연동, 클라우드 DB 저장 등 기본적인 앱을 만들기 위해 필요한 모든 것을 배울 수 있다.


간략한 축에 속하지만 꼭 필요한 내용을 핵심적으로 기술하였다. 무엇보다 빠른 시간에 플러터 앱 개발에 대해 감을 잡을 수 있었다.


추천 대상

플러터 뿐 아니라 안드로이드에 가볍게 접근하고자 하는 개발자라면 강력히 추천하는 바이다.


간략한 앱 개발에 필요한 모든 것을 담고 있는 개념서이다.



책의 한줄평

앱 개발의 기본, 모든 것을 담고있다!



    "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

KakaoTalk_Photo_2021-06-20-23-17-57.jpeg

 

- 0장: 플러터에 입문하기 - 플러터 소개와 설치

- 1장: 생애 첫 모바일 앱 생성하기 - 프로젝트 만들기 (IDE 들어가서 프로젝트 생성)

- 2장: 다트 문법 - 다트 기본 문법 (친숙한 문법)

- 3장: 프로젝트와 앱 구조 - 처음 프로젝트 만들면 생성되는 폴더들 구조와 자동 생성되는 샘플앱 구조(코드) 뜯어보기 (간단하게)

- 4장: 기본 위젯 1 - 화면 구성 위젯 (화면 구성 요소들 - 동그라미, 세모, ... 입력판 ...어떻게 다루는지 살펴보기)

- 5장: 기본 위젯 2 - 화면 구성 위젯 (응용하고, 움직일 수 있는 것 과 같은 심화 위젯)

- 6장: 내비게이션 - 화면 전환 방법, 그 원리 (코드 상세 설명)

7장: 복잡한 UI 작성 -화면 기본 구성을 어떻게 채우고, 어떤 기능을 넣을 수 있는지 알아보는 곳, (코드 상세 설명)

- 8장: 플러터2 변경점

 

1. 느낀 점

다트와 플러터 사용 설명서 같은 책이다.

책 안에 있는 그림과 디렉션 들이 명확하고, 정말 말 그대로 사용 설명서 처럼

설명이 난해한 부분이 없고, 어딜 보고 어떻게 구현해야하는지 명확하게 알려준다.

명확한 것이 가장 친절한 것이라 생각한다.

 

다트 문법은 신기했다.

자바 + 자바스크립트 + 약간의 파이썬

같은 느낌이라 처음 보았지만 처음 본것 같지 않았고,

이 책이 그 기초를 필요한 부분만 간단하게 알려주고 있어서 좋았다.

(특히 접근제어 방법이나 믹스인, .. 아련한 연산자를 알아서 재밌었다.)

 

예제 전까지는 다 읽었지만, 예제는 꼼꼼히 못읽었다.

시간이 난다면 취미로 예제를 따라하면서 원했던 앱을 만들어보고 싶다.

 

2. 장/단점

<장점>

- 명확한 설명, 충분한 사진! (제일 좋았다.)

- 글로만 설명한 것이 아니고 사진으로도 충분히 따라갈 수 있도록 되어있다.

- 내용이 흥미롭다. (플러터에 장벽을 느낄새도 없이 읽힌다.)

- 프로젝트 구조 설명해주는 부분이 좋았다. 프로젝트 파일을 일일히 알려주는 책은 많지 않았던것 같다..

- 원리 설명, 구조 설명이 잘 되어있다. 예를 들어서 화면 구성이 어떻게 되어있는지 전체적으로 알려준다던가 코드 구조가 어떤지 그 부분을 추려서 알려준다.

 

<단점>

- 문법이 간단하게 설명되어있는데, 그 심화를 공부할 수 있는 책이나 예제 사이트를 알려주면 좋았을 것 같다. (단점은 아님, 아쉬운 점

- 예제가 구현하는 내용이 실용적이지만 발전 시키기엔 조금 단순하지 않은가 생각한다. (아쉬운 점임)

- 넘기다가 손을 베면 무척 아플 종이 재질이다. ..

- 딱히 없는거 같다.

 

3. 추천 독자

- 플러터 입문자, 궁금한 사람.

(강추, 필자도 그저 궁금해서 읽었는데 플러터를 잘 설명해주어서 앱개발을 막 하고 싶어졌다.)

- 앱 완전 입문자.

- 코딩은 해보았으나, 앱은 공부해 본적 없는 사람.

 

별점: ★★★★★



"소문난 명강의 : 오준석의 플러터 생존코딩(개정판) - Flutter와 Dart 입문부터 안드로이드와 iOS용 3가지 앱 개발까지"는 2020년 3월에 출판된 초판의 개정판입니다. 초판과 비교해 개정판의 경우, '8장 플러터2 변경점'이라는 제목으로 15페이지가량 추가된 정도가 차이점이라고 하겠습니다. null safety(널 안전성)라는 이슈가 적용된 다트 2.12.0 및 플러터 2에 대응하기 위해 1년만에 개정판을 준비하신 것으로 생각됩니다. 기존 코딩방식에 null safety가 적용되면 에러가 주루룩 쏟아지거든요. 플러터2가 되면서 대응기기가 추가된 것도 짤막하게 언급해 주었습니다.

 

 

 

front.jpg

 

rear.jpg

 

 

플러터(Flutter)의 가장 큰 장점은

 

Windows, iOS, 리눅스, 그리고 크롬 OS에서까지 개발가능한 SDK를 제공한다는 것과

한번의 코딩으로 안드로이드와 iOS, 그리고 웹과 데스크톱(베타 - 윈도우, 맥OS, 리눅스)에서 실행가능한 애플리케이션을 개발할 수 있는 '진정한 의미의 멀티 플랫폼 개발 프레임워크'의 지위를 가지게 되었다는 점입니다.

구글이 잘 나가던 프로젝트도 하루 아침에 묻어 버리는 경우가 있어서 아직 플러터에 올인하기에는 일말의 불안감이 있기는 합니다만, HTML, CSS, 자바스크립트 등에 익숙한 웹퍼블리셔가 빠른 시일내에 앱을 개발해 본다거나, 자바 기본 문법은 익혔으나 바로 안드로이드 앱개발에 뛰어들기에는 부담을 느끼는 초심자들에게 충분히 매력적일 수 있는 개발도구라고 생각합니다. 제가 이 범주에 드는 수준이라 몸소 체험하고 있기도 하구요. 플러터가 사용하는 Dart 언어가 자바와 자바스크립트의 장점이나 코딩방식을 많이 가져다 쓴 언어이기 때문이기도 합니다.

한빛미디어 도서 리뷰어로 활동하면서, 우연하게도 한빛미디어가 출간한 플러터 관련 서적 3권 모두를 접하게 되었네요. 첫번째 책이 "플러터 인 액션"이라는 번역서 였고, "처음 배우는 플러터"가 두번째로 접한 책이었습니다. 그리고 이번에 세번째로 "소문난 명강의 : 오준석의 플러터 생존코딩(개정판)"을 받았는데요, 책의 내용이나 서술방식은 "소문난 명강의 : 오준석의 플러터 생존코딩(개정판)"가 제일 간략간략하고 다른 책에 비해 빠져 있는 내용도 많은 것 같은데, 희안하게도 "소문난 명강의 : 오준석의 플러터 생존코딩(개정판)"의 내용이 머리와 손에 가장 많이 남아 있는 것 같습니다.

이 책은 설명이 굉장히 간략간략합니다. 그래서 문장호흡을 짧고 스피디하게 구성한 것이 이 책의 장점이자 단점입니다. Dart 문법은 꼭 필요하다 여겨지는 것만 소개하였고 예제도 짧습니다. 꼭 필요한 것만 언급하였으니 무조건 머리속에 넣고 손가락이 타이핑할 수 있게 하면 책을 따라갈 수 있습니다. 총12개의 장으로 구성되어 있는데 한 챕터가 하루분량도 안 되는 경우가 대부분입니다. 제 경우, 읽고 따라 하다 보면 30분내지 한시간정도면 한 챕터를 끝낼 수 있었습니다.

플러터의 특징인지도 모르겠지만, 이 책 저자의 코딩 습관이 일관성이 있어서 좋았습니다. 항상 같은 코딩 스타일을 유지하니 초보자들이 이해하기가 편했던 것 같습니다. 책 전체적으로 익명함수나 클래스정도에 대한 초보적인 지식만 있으면 거의 대부분 이해할 수 있는 정도의 내용입니다. 예를들어 람다식 썼다 익명함수식 썼다 왔다갔다 하면서 헷갈리게 만들지 않거든요. 샘플앱 제작에 필요한 문법정도만 언급되어, var 타입과 dynamic 타입의 차이점 같은 것도 일단은 생략되어 있습니다. 필요할 때 익히면 됩니다.

저도 그랬지만, 처음 플러터의 코딩 엔트리포인트나 기본 클래스의 구조를 보면 매우 혼동스럽습니다. 뭔가 주석이 잔뜩 달려 있는데다 프로젝트의 구조라든가 사용하는 용어 자체가 꽤 생소하거든요. 이를 해결하는 방법으로 이 책의 저자가 유튜브에서 제공하는 플러터 기초 강의가 많이 도움이 되었습니다. 유튜브에서 "오준석의 생존코딩" 채널을 찾아서 "Flutter 입문"과 "Flutter 중급" 재생목록을 참고 하시면 좋겠습니다. 이 책의 설명순서와 동영상의 설명순서는 연관이 없다는 것은 미리 참고 바랍니다. "Flutter 입문" 영상에서는 플러터 위젯 사용방법을 FlutterStudio 사이트를 참고하여 배우는데 이 방식도 위젯 개념을 잡는데 큰 도움이 됩니다.

무료강의도 짧게 짧게 20여강정도로 구성되어 부담스럽지 않으니 이 책을 보기전에 유튜브 무료강의를 보는 것도 좋구요, 저자가 정리한 "Dart 다트 문법 정리", "Java 자바 문법 총정리" 같은 영상도 큰 도움이 됩니다. 저자가 직접 운영하는 유료 강좌 플랫폼 "오준석의 생존코딩"이나 인프런을 통해, 플러터와 파이어베이스를 이용하여 '인스타그램 클론' 사이트를 만들어 보는 유료강의도 시청할 수 있습니다.

강의 영상은 맥OS에서 만드신 것 같은데, 이 책에서는 맥OS에서 플러터 및 다트 SDK PATH를 영구적으로 설정하는 방법이라든지, iOS 애뮬레이터를 사용하는 방법에 대해서 구체적으로 언급하고 있지 않아서 좀 아쉽습니다. 이번에 실습은 맥북을 통해서 해 봤는데 초기 세팅에 꽤나 애를 먹었습니다. 책의 다음 판이나 영상강좌를 통해 추가해 주시면 좋겠습니다.

Dart 문법 연습도 이 책에서는 DartPad라는 웹사이트를 이용하도록 되어 있습니다. 그러다보니, 최근 많이 사용하는 비주얼 스튜디오 코드 같은 개발툴에서 플러터와 다트 개발 세팅하는 방법이 언급되어 있지 않은데요, 나중에 추가되면 좋겠습니다. 안드로이드 스튜디오는 물론이지만 비주얼 스튜디오 코드도 플러터 앱개발에 많이 사용하는 것 같습니다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

 

 

 

개발 환경 설정부터 예제 소스 부터 너무나도 상세하게 잘 설명되어 있다. 맘에 들었던 점은 예제 소스 Repo 가 제공되어있어서 예제 소스와 함께 개발할 수 있는 점이 너무 좋았다. 컬러로 인쇄로 되어있어 읽기도 너무 편했고, 프로젝트 구조도 설명되어있어서 디바이스에서 개발자 모드 설정 하는것 까지. 와 이렇게 까지 친절하다고 하는 생각까지 들 정도였다.  

2장의 다트 문법같은 경우는 Kotlin 이랑 일부 부분이 비슷하다고 느꼈고, 같은 keyword 임에도 불구하고 다른 기능을 하여서 신기했다.
예를 들어 with 가 Kotlin에서는 범위 지정 함수인데, 여기서는 다른 클래스의 기능을 가져오거나 오버라이드 할 수 있는 기능이었다.  다른 컬렉션 안에 컬렉션을 넣어주는 명시인 스프레드 연산자도 (....) 신선했다. Dart에서는 var 변수 선언이 타입 추론이라는 점과, 동일한 기능을 하는 다른 keyword에 대한 설명도 있었는데 이 점이 2개를 비교하며 공부하기 좋을 것 같다는 생각이 들었다. Kotlin, python 등 다른 언어에 익숙한 개발자라면 Dart에서는 다르게 동작하는 내용들이 신선하고 재미있을 거라는 생각이 든다. 

 

3장에서 본격적으로 프로젝트와 앱 구조를 설명해주는데 긴 줄글의 코드에서 주석으로 해당 function 혹은 class가 무엇인지 설명 해 주어서 좋았지만, 주석 또한 같은 color로 표시되어있어서 그렇게 눈에 썩 뜨는 편은 아니었다. 

 

7장 즈음에 나오는 생산성을 높여주느 단축키도 되게 유용하다고 생각했는데, 챕터 안에 작은 소제목으로 해당 부분을 알려주는 점에 있어서 이러한 내용도 책의 소제목이 될 수 있구나 하는 점에서 신선했다. 아직 모든 챕터에 대하여 다 읽지는 못하였지만 처음으로 플러터에 입문하는 독자에게 좋을 것 같다는 생각이 들었고, 상세하게 알려주어서 다른 개발 언어가 생소한 분들에게도 해당 책을 추천하고 싶다. 

IMG_2224.jpg

 

안드로이드와 iOS용 앱을 만들려면 안드로이드는 자바나 코틀린을 학습해야 하고 iOS는 스위프트 또는 Object-C를 학습해야 합니다. 개발자 한명이 두 가지 플랫폼의 앱을 제작한다는 것은 상당한 노력이 필요하고 배워야 할 것이 많아 쉽지 않습니다.

한 번에 두 가지 플랫폼의 앱을 만들기 위해 여러 프레임워크가 나왔습니다. 대표적으로 리액트 네이트브와 플러터가 유명한데 이번에 "오준석의 플러터 생존코딩 개정판"을 통해 플러터를 활용한 앱 개발을 학습해 보았습니다.

참고로 플러터가 리액트 네이티브의 비해 성능이 좋다고 알려져 있어 성능을 중시하는 개발자들에게 많은 관심을 받고 있습니다.


이 책의 대상독자는 앱 개발 입문자, 초보자입니다. 앱 개발에 처음 발을 들이는 사람도 큰 부담없이 시작할 수 있기 때문에 저같은 앱 개발 초보자에게는 딱 알맞은 책 난이도 라고 생각됩니다.

언제나 그렇듯 개발을 하기 위해서는 개발 환경을 설정해야하는데 초보자에게는 이 부분도 상당히 어렵습니다. 다행히도 각 운영체제에 맞는 플러터 개발 환경 구축 방법을 스크린샷과 함께 설명해주어 어렵지 않게 플러터 프로젝트를 시작할 준비를 할 수 있었습니다.

플러터는 구글이 개발한 프레임워크여서 그런지 개발을 안드로이드 스튜디오를 통해 합니다. 물론 iOS 앱을 빌드하기 위해서는 Xcode가 필요하지만 개발은 안드로이드 스튜디오에서 합니다.


1장에 나와 있는 샘플 앱을 만들어 안드로이드와 iOS 기기에서 실행해 보면서 앱 개발의 고개 하나를 넘은 느낌을 받게 되었습니다.

2장에서는 다트 문법을 설명합니다. 리액트 네이티브는 자바스크립트 언어를 사용하기 때문에 문법적으로 익숙한데 플러터는 다트 언어를 사용하고 있어 저에게는 생소했습니다. 다트 문법 또한 다른 언어와 크게 차이나지는 않기 때문에 학습에 크게 문제 되지는 않았습니다.

3장부터는 이제 본격적으로 플러터 프로젝트에 대한 내용을 배우게 됩니다. 프로젝트 구성은 어떻게 되어 있고, 샘플 앱인 카운터 앱의 코드를 분석하면서 플러터 동작 방식을 이해하고, 앱의 전체 구조를 학습하게 됩니다. 3장에서 플러터 앱 개발의 큰 그림을 그린다고 생각되기 때문에 여러 번 읽기 좋은 부분이라고 생각했습니다.

4장에서 7장까지는 UI 작성에 필요한 위젯과 내비게이션을 학습합니다. 책의 2부에서 실습하는 앱 프로젝트들을 제대로 이해하기 위해서 이 부분들을 잘 학습할 필요가 있었습니다. 이 챕터들을 학습하면서 내가 앞으로 만들 앱에서 이 화면에서는 이 위젯을 사용하고 저 화면에서는 저 위젯을 사용하면 되겠구나 생각하면서 읽게 되었습니다.

2부에서는 비만도 계산기와 스톱워치, 할 일 관리 앱을 개발하는 방법을 배웁니다. 앱 소개와 해법 요약 부분은 앱 개발자로 취업하기 위해 포트폴리오를 만든다면 이렇게 만들면 좋겠다라는 느낌을 받았습니다. 그리고 스텝 별로 어떤 것을 어떤 구현 순서로 만들면 되는지 알려주는 부분이 좋았습니다.


이 책을 통해 막연히 어렵게만 생각했던 플러터 앱 개발에 대한 가이드를 받은 느낌이어서 앞으로 나만의 앱을 만들 수 있겠다라는 자신감을 가지게 되었습니다.


"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

- 다트 문법에 대한 설명

: 플러터를 공부하기 위해서는 다트 언어에 대한 이해가 필요합니다. 이 책에서는 초반에 다트 문법에 대해 간단하게 설명하기 때문에 별도로 다트를 공부하지 않아도 됩니다.

 

- 필요한 위젯을 찾아 공부하기 용이

: 중간에 위젯에 대한 설명을 하는 챕터가 있습니다. 화면 배치 위젯, 위치, 정렬, 크기 위젯, 버튼 계열 위젯등 사용하는 용도가 비슷한 위젯들을 묶어 설명합니다. 처음 이 책을 볼 땐 간단히 훑어보고 실제 개발을 할 때, 필요한 위젯을 찾아보면 될 것 같습니다.

 

- 플러터 2.0 내용 반영

: 플러터 2.0 출시로 인해 큰 변화가 있습니다. 굉장히 최근에 발표된 사항이기 때문에 당연히 포함되지 않겠거니 생각했는데, 이 책에서는 플러터 2.0에 내용까지 반영되어 있는 것을 확인할 수 있었습니다.

 

- 프로젝트 3개

: 프로그래밍을 배울 때, 이론을 공부하는 것도 중요하지만 배운 이론이 실제 개발에서 어떻게 적용되는지 파악하는 것도 중요합니다. 이런 부분에 가장 도움을 주는 것이 샘플 프로젝트를 작성하는 것인데요. 이 책에서는 3개지의 샘플 프로젝트를 제공하고 있습니다. 샘플 프로젝트를 통해 실제 앞에서 배운 내용들이 어떻게 적용되는 지 파악할 수 있습니다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

 

 

얼마전 디프만이라는 커뮤니티를 통해 플러터를 접할 기회가 생겼었다. 백엔드 개발을 주로 하다보니 처음에 개념잡기가 생각보다 어려웠기 때문에 유투브 강의와 책을 번갈아 가면서 개념을 잡기 위해 1~2주 정도의 시간을 투자했었다. 그 과정에서 기본 문법과 자주 사용되는 위젯, 그리고 다양한 활용법 등 나에게 필요하다고 느꼈던 부분들에 대해 이 책 "플러터 생존 코딩"에서 체계적으로 설명하고 있었다.

 

아마도 플러터를 처음 접한 사람이라면 Dart라는 언어도 처음 접해보았을 것이다. Dart는 객체지향 언어이고 자바와 매우 비슷한 문법을 가지고 있지만 UI를 그리는데 특화되어 있었기 때문에 추가로 더 알아야할 개념들이 있었다. 이런 문법적인 부분은 하나하나 세세히 보게되면 꽤 어려울 수 있는데 이 책에서는 입문자에 초점을 맞춰 꼭 필요한 문법들을 소개한다. 또한 책 전체가 컬러풀하기 때문에 필요한 부분에 하이라이트가 되어 있거나 예제들도 다양한 색상들로 표현되어 있어서 더 쉽게 이해할 수 있었다. 

 

플러터로 앱을 개발하기 위해 반드시 필요하고 자주 사용되는 것들 위주로 설명하고 있어서 입문자에게는 더할나위 없이 좋은 책이라고 생각한다. 하지만 어느정도 플러터를 활용해본 독자라면 다소 부족하게 느껴질 수 있다. 나의 경우에도 플러터로 개발해보며 BuildContext에 대한 개념이나 위젯 트리, 위젯의 라이프사이클, 상하위 클래스 간 상태 처리 등에 대해 깊이 있는 내용을 공부하고 싶었지만 책에서는 다루지 않고 있다. 나는 이 책과 함께 "플러터 인 액션"이라는 책을 같이 보았는데 플러터 인 액션에서는 내가 궁금해 했던 내용들에 대해 세세하게 설명하고 있어서 좋았다. 개인적으로 이 두 책을 함께 보는 것을 추천한다.

 

플러터로 토이 프로젝트를 한번 진행해보고 나서 느낀점은 초기에 어느정도 이론 공부는 반드시 선행되어야하고, 이를 위해 플러터 생존코딩이나 플러터 인 액션과 같은 책을 통해 공부하는 것이 효과적이라고 생각했다. 그 다음 순서로 다양한 예제를 통해 플러터에 익숙해지는 것이 중요하다. 이런 면에서 플러터 생존 코딩의 후반부에 있는 예제를 하나씩 찬찬히 따라해볼 것을 추천한다. 또한 유투브에도 다양한 강의 자료와 예제가 있기 때문에 공부에 필요한 자료는 넘쳐난다. 여기서 토이 프로젝트 또는 평소 내가 불편하게 느꼈던 것들을 개선해줄만한 앱을 직접 만들어 볼 것을 추천한다. 백문이불여일타라는 말처럼 어느 정도 기반지식을 갖췄다면 직접 타이핑을 해가면서 작은 것이라도 앱을 하나 완성해보는 것이 실력향상의 가장 빠른 방법이라고 생각한다. 

 

플러터는 리액트 네이티브와 함께 크로스 플랫폼 개발 솔루션으로 많은 관심을 받고 있는 프레임워크입니다. 페이스북에서 주도하는 리액트 네이티브와 달리 플러터는 구글에서 개발하였습니다.

 

이 책은 플러터를 처음 접하는 사용자를 대상으로 플러터와 플러터에서 사용하는 개발 언어인 다트를 학습하고 세 가지 앱을 개발하는 과정으로 구성되어 있습니다. 플러터의 기초를 소개하는 1부의 2장에서는 다트 언어의 문법을 소개하고 있습니다. 위젯을 만드는 4장, 5장과 내비게이션을 만드는 6장을 거쳐 복잡한 UI를 작성하는 7장까지의 내용을 통해 저자는 앱 작성에 필요한 기본적인 기능을 간단하지만 전반적으로 설명하고 있습니다.

다트 언어에 대한 설명이나 UI에 대한 설명은 기본적인 프로그래밍 지식이 있는 사용자라면 더 쉽게 이해할 수 있는 방식으로 서술되어 있습니다. (다트 언어는 Java Script를 대체하기 위해 2011년 발표되었지만 큰 인기를 얻지 못했습니다. 하지만 플러터에서는 실행중 컴파일인 JIT과, 런타임 이전 컴파일인 AOT 컴파일러를 둘 다 사용할 수 있어서 짧은 개발 주기와 빠른 실행 속도를 둘 다 달성할 수 있다는 점, Hot Reload를 통해 1초 내에 코드를 다시 로드해서 계속 실행할 수 있어 생산성을 향상시킬 수 있다는 점, Lock 없이 가비지 컬렉션을 할 수 있다는 점 등의 장점으로 Dart를 사용하고 있습니다. 물론 구글이 개발한 언어라는 가장 큰 이유가 있겠지만요.)

 

2부에서는 비만도 계산기, 스톱워치, 할 일 관리 앱을 만드는 과정을 설명합니다. 비만도 계산기에서는 입력값에 따라 비만도를 계산하는 과정을 통해 UI와 프로그래밍을 함께 다룹니다. 화면 전환과 데이터 전달, 계산 및 결과 표시 방법을 소개합니다. 스톱워치는 일정한 주기를 갖고 반복하는 동작을 구현하는 방법을 알아보기 위한 앱입니다. 버튼을 눌렀을 때의 UI가 변경되는 다이내믹한 처리도 포함됩니다. 할 일 관리 앱에서는 파이어베이스 서비스와 연결하여 서버 기능을 구현하고 클라우드 DB에 내용을 저장하는 앱을 만들어 봅니다.

 

전반적으로 플러터로 앱을 만들 때 필요한 사항들이 빠지지 않고 들어 있고, UI 구현과 서버 및 DB관리에 대한 내용들이 충실하게 들어 있어 실습을 통해 내용을 파악하기 편했습니다. 반면 네이티브 프로그래밍이나 리액트 네이티브와의 차이점이 간간히 언급되었더라면 더 이해하기 편했을 것 같은 아쉬움도 있습니다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."



이번 달에는 딱히 끌리는 도서가 없었던 것 같다. 그래서 크로스플랫폼으로 앱개발을 지원한다는 플러터를 한번 배워볼까하여 해당 책을 신청하였다.

개인적으로 앞부분에 환경설정 및 다트문법으로 100페이지 가량 할애한 것은 꽤나 아쉬운 부분이었다.

요즘 정적호스팅은 손쉽게 할 수 있는 세상인 만큼 이러한 내용들은 저자가 따로 간단히 문서화하여 웹상에 올려놓고 플러터쪽으로 집중했으면 좀 더 알찬 책이 될 수 있지 않았을까 하는 사족을 붙여본다.

하지만 이러한 부분을 차치하고 그밖의 프로젝트기반의 플러터 소개는 상당히 잘 짜여있었다.

특히 앱개발 경험이 없는 나조차도 스텝바이스텝으로 손쉽게 따라가며 스톱워치, 할 일 관리 앱을 만들 수 있었다. 특히 할 일 관리의 경우 CRUD를 배울 수있는 고전적이지만 효과적인 엔트리포인트이기 때문에 해당 프로젝트를 기반으로 내가 원하는 다른 프로젝트로 진행할 수 있는 발판을 마련해줄 수 있을 것 같다.

요즘 하루하루 지날때마다 새로운 프레임워크, 언어, 시스템들이 범람하고 있는데 이러한 현실에서 크로스플랫폼은 꼭 필요하다고 생각된다. 비록 지금은 네이티브급 성능을 내는 크로스플랫폼은 아직 전무하지만 플러터같은 시도가 계속되는 것은 매우 좋다고 생각한다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

** 이리뷰는 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다. **

 

 

 

TLDR;
 앱개발자가 아닌사람이 사이드 프로젝트를 할때, 혹은 회사에서 앱 개발을 할 일이 생겼을때 바로 읽은 후 바로 개발을 시작할 수 있도록 할 수 있는 내용을 담고있습니다. 특히 플러터 사용시 필요한 다트언어에 대한 요약이 굉장히 도움이 됩니다. 또한, 자주 사용되는 위젯들에 대한 정리가 잘 되어있기에 읽은 후 프로젝트를 한다면 많은 도움이 될것이라고 생각됩니다. 

 

현직 개발자부터, 개발을 배우기 시작한사람 모두 읽을만한 책이라는 생각이 듭니다. 그다지 어렵지 않은 난이도에 예제 프로젝트에 사용되는 코드에 대한 설명도 잘 되어있습니다.

 현직 개발자라면 다트와 플러터의 고급/심화 내용은 아니지만 핵심적인 내용이 들어있기 때문에 처음 플러터를 접하면서 필요한 내용을 습득하고, 이후 심화 과정으로 가기위한 좋은 입문서가 될 것이고, 개발을 배우기 시작한 사람이라면 입문자를 위한 쉬운 내용, 코드에 대한 자세한 설명이 도움이 될 것입니다.

 특히 몇가지 프로젝트를 진행하는데 이는 입문자와 개발자 모두에게 적절한 예제라는 생각이 듭니다. 저는 현재 사이드프로젝트로 앱개발을 하기 위해서 리엑트 네이티브와 플러트를 모두 보고있는중인데, 플러터를 처음 시작할때 이 책을 봤으면 좋았을거같다 라는 생각이 듭니다. 

결론을 말씀드리자면 플러터를 시작하시는 분들이라면 고민하지마시고 읽어보시길 추천합니다.


출처: https://devms.tistory.com/559 [요가하는프로그래머]

플러터 개정판 표지.jpg

 

기존에 한번 플러터 생존코딩을 읽어 본적이 있다. 이 책은 플러터2에 대응하기 위해 개정되어진 책이다.

 

이 책의  범위는 기존과  같은 구성으로 되어 있다. 1) 개발환경 구성, 2) 플러터 앱 동작방식, 3) 레이아웃 구성, 4) 화면 이동, 5)다트 언어, 6) 실습

 

이번은 플러터 2에 대응하는 버전이라 개발 환경 구성이 좀 다르다.

 

기존 플러터 1.12.13, 다트 2.7.0 버전에서 플러터2 버전과 다트 2.12.0 버전에서 모든 작업이 이루어 진다.


1장 개발환경 구성 부분에서는 앱 개발 방식을 소개하고 플러터가 어떤 개발 프레임워크인지 설명합니다. 그리고 개발 환경 구성에 대해 다룹니다. 개발 환경 구성에 대해 설명이 초보자도 이해하기 쉽게 되어 있고 구첵으로 설명이 잘 되어 있습니다.


그리고 프로젝트를 처음 생성하는 방법과 환경 구성하는 법이 쉽게 설명이 되어 있습니다.


2장 다트 언어에 대해 설명합니다. 기존 책에서 크게 달라진 부분은 없습니다. 개발에 꼭 필요한 문법과 핵심 문법을 잘 설명해줍니다. 초보자라면 눈으로만 읽지 말고 꼭 직접 실행해 보는것이 좋겠습니다.


3장 플러터의 프로젝 구조와 앱 구조에 대해 설명합니다. 샘플 앱을 분석하고 실행함으로써 구조와 동작 원리에 대해서 쉽게 접근해서 이해를 할 수 있도록 합니다. 이번 장도 기존 책과 크게 다른 부분은 없습니다. 초보자도 책에서 설명한 구조와 코드를 작 작성해 본다면 큰 어려움 없이 이번장도 이해할 수 있습니다.


4장 기본 위젯에 대하여 설명합니다. 기본 위젯을 이해하기 위해 예제를 실행하고 필요한 환경에 대해서 설명합니다. 화면 구성을 위해서는 다양한 위젯의 사용법을 알아야 하는데 자주 사용되는 위젯 위주로 설명을 합니다. 하나 하나 실습을 해본다면 큰 어려움 없이 학습할 수 있습니다.


5장 역시 기본 위젯에 대하여 설명합니다. 이번장에서는 자주 사용되는 입력용 위젯, 다이얼로그, 이벤트, 애니메이션 등에 대해 설명합니다. 기본적인 입력용 위젯부터 애니메이션을 지원하는 다양한 위젯중에서 많이 사용되는 위젯 몇가지에 대해서 실습하도록 합니다. 이렇게 기본적인 디자인 규칙에 사용되는 위젯뿐만 아니라 아이폰스러운 디자인을 위한 쿠퍼티노 디자인에 대해서도 설명합니다.


6장 에서는 새로운 화면으로 전환하거나 이전 화면으로 돌아가는것을 내비게이션이라고 하는데 이 장에서는 플러터에서 제공하는 다양한 내비게이션 사용 방법에 대하여 설명합니다. 기존에는 생략 되어진 코드에 대해서 설명이 되어 있지 않아서 살짝 불편함이 있었는데 이제는 빠진 코드에 대해서 설명이 되어 있어서 그 불편함이 사라진 부분은 좋아진듯 하다.


7장에서는 기존에 배웠던 내용을 기본으로 하여 다소 복잡한 UI를 구성해보는 장입니다. 다양한 작성법과 팁, 라이브러리를 추가하고 사용하는 방법, 스크롤 사용법 등에 대해서 설명합니다. 이번장에서는 슬라이드가 버전이 바뀐 부분으로 설명이 되어 있습니다. 이번장은 플러터 코드 작성시에 필요한 다양한 요령과 팁에 대해 자세히 학습할 수 있도록 되어 있습니다.


8장입니다. 이번 8장은 플러터2의 변경점에 대해서 설명합니다. 먼저 다트 2.12.0 버전부터 지원되는 널 안정성에 대해 다룹니다. 기존 다트에서는 널을 허용하였습니다. 하지만 바뀐 다트에서는 널을 허용하는 타입과 그렇지 않은 타입으로 구분 되어집니다. 그래서 이번장에서는  주요한 널 코드 작성법과 그에 대한 학습으로 이루어져 있습니다.  플러터2로 업데이트 되면서 기존의 안드로이드, iOS 뿐만 아니라 웹이 공식적으로 지원이 된다고 합니다. 아직 데스트톱 실행은 베타전이라고 합니다.


9장 10장 11장에서는 3가지 앱을 만들어 보면서 플러터로 앱을 개발하는 방법에 대하여 설명합니다. 변경 전과 구성은 동일합니다. 먼저 비만도 계산기 앱을 만들고 실습합니다. 단순한 앱 구성이지만 Form을 활용한 오류 검증과 입력 폼을 만들어 봄으로써 편리하다는 것을 느끼도록 합니다. 두번째 앱으로 스톱워치를 구현합니다 .스톱워치 구현을 위한 Timer 클래스 사용법과 화면을 빠르게 전환하는 법에 대해 알게 됩니다. 약간 난이도가 있습니다. 마지막으로 만들앱은 이전 앱들보다 난이도가 훨씬 높습니다. 할 일 관리 앱을 만들어 봅니다. 이번 앱으로 데이터베이스를 활용하는 법에 대해 알게 됩니다. 이번장에서 기존과는 다르게 설명 부분이 보완이 되어 있습니다. 기존과는 버전이 다르다 보니 설명이 추가 되었습니다. 


====================================================================


책을 읽어 보면서 기존 책과 어떤 부분이 달라져 있을까하고 내심 기대가 되었다. 역시나 초심자를 위한 배려가 곧곧에 보인다. 이전에는 약간 부족한 부분도 있었는데 이번 개정판을 통하여 그런 부분도 상당 부분 보완이 이루어져서 보기가 한결 편했다. 이 책은 플러터에 입문하고자 한다면 반드시 소장하고 같이 가야할 책이다. 저자의 플러터에 대한 내공이 확실히 보인다. 이번 개정판을 통하여 플러터가 더욱 발전하고 있다는 것을 느끼게 되었다.


====================================================================

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

크로스 플랫폼 툴키트(toolkit)가 개발자 커뮤니티 사이에서 떠오르고 있다.

크로스 플랫폼 앱개발 프레임워크가 지지를 얻고 있는 데에는 재사용할 수 있는 UI 블록, 반응형 관련 성능, 똑같은 코드를 다양한 플랫폼에서 사용할 수 있다는 장점 등의 이유가 있는데, 그중에서도 구글의 플러터(Flutter) 가장 많이 알려지고 있고 쓰여지고 있는 것 중 하나이다.

 

20210618_062530.jpg

 

​플러터는 오픈소스로, 안드로이드와 iOS에서 네이티브 인터페이스를 구축하기 위한 크로스 플랫폼 모바일 앱개발 프레임워크이다.

2017 구글이 선보인 플러터는 네이티브 앱에서 웹의 특성을 포함할 수 있게 해주는 것으로 앱개발 프레임워크이다.

 

플러터(FLUTTER)의 장점은 핫 리로딩(Hot reloading) 기능, 내장 위젯을 이용한 UI 구축, OEM 의존성 없음, 개발용 다트(Dart) 언어이다.

 

이 책은 기본을 빠르게 익히고 앱을 직접 만들며 필요한 기능을 알아가는 ‘입문 + 활용서’이다.

‘다트 언어 + 플러터 + 안드로이드 스튜디오 + 앱 개발’을 한 권으로 할 수 있는데,

다트(Dart) 언어와 플러터(Flutter)를 몰라도 빠르게 배워 앱을 만들 수 있는 것을 목표로 하고 있다.

 

이번에 안드로이드 스튜디오를 업데이트를 해서 플로터를 함께 깔아보았다.

일단 설치자체는 어렵지 않았다.

나는 안드로이드 개발자이기때문에 ios부분은 패스.

다트 문법을 좀 보면서 익히고 프로젝트 구조와 앱 구조를 파악하였다.

 

20210618_062715.jpg

 

일단 초보자도 배울 수 있도록 알려주고 있다.

특히 책을 보면서 쉽게 알려주고 있어서, 이해하는 것이 어렵지는 않았다.

더욱이 이 책을 보면서 예시를 따라하는데, 재밌있었다.

앱 개발에 대한 난이도, 기능, 구성요소들을 미리 파악하고 무엇을 공부하고 터득할지 보여준다.

책의 내용은 입문용에 가깝다. 내가 프로그래밍 언어를 이미 알고 있는 상태에서 하면 문법은 크게 문제가 될 거 같지 않고, 그리고 모바일 앱 개발을 해보고 싶은 사람들을 대상으로 쓰여진 것으로 보인다.

안드로이드 설치부터 하나 하나 알려주면서 책이 '아, 나도 이 정도는 해볼 만 한데?' 생각이 들게 편안하게 쓰여졌다. (그게 나다..)

왜냐하면 예전에 안드로이드 개발 맛보기를 했을 적엔 정말 할 말을 잃게 하는 경우가 많았었기에 이건 그래도 생각보다 할 만 하지 않나, 생각이 들게 했다.

다트 언어라는 게 나와 잠깐 새로운 언어를 또? 했는데 이 책은 입문자를 위해, 초보자를 위해 쓰여졌기 때문에 해당 언어에 대해 설명해주는 장이 존재한다. 독자가 겁먹지 말라고 달래고 어르고 이끌어가주는 느낌이다.

후반부에는 플러터를 전반적으로 다루었으니 실습을 해보는 장이 있다. 플러터를 마치 수학 교과서에서 배우로 수학 익힘책으로 잘 복습시키는 느낌이다.

 

안드로이드 또는 ios 개발을 해보고 싶은 사람이 좀 쉽게 입문하려면 이 책을 읽어보는 것도 좋을 것이라 생각이 든다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

지난 프로젝트에서 React-Native로 모바일 앱을 제작했다. 초기에는 정말 안드로이드와 iOS 간 동작이 하나의 코드로 이루어져 편의성이 있나..? 싶었지만 역시나 커스텀한 라이브러리들은 각각 OS에 맞춰 코딩을 해줘야 하는 불상사에.. 결국 프로젝트 중간에 iOS를 포기했던 아쉬운 경험이 있었다.. 당시 프론트엔드 담당 팀원이 '플러터'로 했으면 이런일 없다던데.. 라는 이야기를 들었고 잠시 찾아봤던 기억이 있던 중 '오준석의 플러터 생존코딩' 책의 리뷰어로 당첨되어 책을 읽으며 학습한 경험을 적어본다

 결론부터 말하자면 '초보자에게 매우 적합한 책!' 이다.

Dart 문법부터 기본 위젯들 그리고 복잡한 UI 작성까지 친절하게 순서대로 설명해준다. 초보자분들은 차곡차곡 따라가면 금방 배울 수 있을거라고 생각된다.

 

 나는 사실 가장 마지막 챕터인 '할일 관리' 앱 만들기를 따라 하면서 문법이나 플러터의 형태를 익히고, 추후 본격적으로 사용할 일이 있을때 바로 찾아볼 수 있게 익혀두었다. 이렇게 활용하기 위해 책을 미리 구매해보고 맛보는 것도 추천한다

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

플러터라는  다재다능한 플래폼에대한 학습을 시작하게 되었다.

안드로이드뿐아니라 IOS에역시 지원한다는 매리트를 가지고있다는 플랫폼으로 알고 있어 관심을 가지게 되었다.

막상 책을보면서 진해해보니 순식간에 책의 끝까지 나아갈수 있었다.

너무 가볍고 설명이 쉬운책이라 딱히 뭐라고 소개 할게 없다.

안드로이드를 처음 접하더라도 결코 어렵게 느껴지지않을정도의 아주 가벼운 내용으로 플러터에 입문 할 수 읶있도록 쉽게 정리해준듯 한다.

당연히 안드로이드를 이미 다루어 보았다면, 하루,이틀이면 책을 다 볼수 있지않을까 싶다.


다만 기본적인 내용만을 다루고 있으므로, 응용에 대해서는 좀더 다양한 실습이 필요할것으로 보인다.

대학교재로 삼기에는 좀 가볍고, 혼자 공부하기에는 더욱 가벼운 책 안드로이드가 어려운분들에 추춘한다.

fl01.jpg fl02.jpg fl03.jpg fl04.jpg fl05.jpg

오준석님의 소문난 명강의 시리즈!  

이 책은 플러터에 대한 입문 서적으로

플러터를 처음 다루거나 개발자가 아니더라도 쉽게 이해할 수 있도록 설명했다.

 

개발자인 내가 개발 업무를 하면서 느끼는 것은

환경 설정이 개발 업무의 50%인 것 같다는 것이다.

그 정도로 환경설정은 생각보다 중요한 작업이다.

 

이러한 부분에 대해서 저자의 쉽고 간결하게 설명하려는 노력이 느껴졌다.

플러터는 여러 플랫폼용 앱을 만드는 크로스 플랫폼 개발 프레임워크이다.

'다트 언어'를 별도로 배워야 하며, 안드로이드,iOS, 웹, 데스트탑용으로 개발이 가능하다.

 

다트는 구글에서 지원하는 언어이고 참고 정보도 많으니 배워도 좋을 듯 하다.

플러터 개발은 안드로이드 스튜디오, 비주얼 스튜디오 코드 둘 다 가능하지만

이 책에서는 안드로이드 스튜디오를 활용하여 설명하였다.

 

이 책의 구성은 다음과 같다.

 

[1부 플러터에 입문하기]

0장 플러터 개발 환경 준비하기

1장 생애 첫 모바일 앱 생성하기

2장 다트 문법

3장 프로젝트 구조와 앱 구조

4장 기본 위젯 I

5장 기본 위젯 II

6장 내비게이션

7장 복잡한 UI 작성

8장 플러터 2 변경점

 

[2부 플러터로 앱 개발하기]

9장 비만도 계산기

10장 스톱워치

11장 할 일 관리

 

책 완독시에는 비만도 계산기, 스톱워치, 할 일 관리 등의

간단한 앱을 만들어 볼 수 있다.

(할 일 관리 앱은 코딩테스트 시험으로 종종 나와서 로직을 익혀두면 좋다) 

 

개인적으로 장황하게 번역한 번역서 보다는 이런 쉽게 쓴 입문서를 좋아한다.

한 페이지에 내용을 빼곡히 넣지 않아 가독성이 좋아 편하게 읽을 수 있다.

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

최근에는 네이티브 보다 크로스 플랫폼을 지원하는 프레임워크로 만드는 것이 더 뜨는 추세인 거 같다. 그중에서도 요즘 가장 핫한 프레임워크는 리액트 네이티브와 플러터다. 네이티브 개발은 두 가지 언어로 따로 개발해야 하는 반면에, 리액트 네이티브나 플러터로 개발하면 한 가지 언어로 안드로이드, iOS를 둘 다 지원할 수 있다.

 

오준석의 플러터 생존코딩(이하 플러터 생존코딩)은 Dart와 플러터 입문서다. 깊은 내용보다는 얇고 넓은 지식을 담아냈다.

나는 플러터 생존코딩을 통해 Dart와 플러터 모두 처음 접했는데, Dart는 Java와 Javascript를 섞어놓은 느낌을 받았다. 어디까지나 개인적인 느낌이다.

 

안드로이드 스튜디오를 설치할 수 없어서 다트패드로 실습을 했는데, 만약 책에 나온 예제 코드를 따라 쳤을 때 에러가 뜬다면, 다트패드 하단에 Null Safety 옵션을 꺼주자. 이 기능을 끄기보단 required 혹은 ? 처리를 해주는 게 더 좋겠지만 학습하는 입장에선 그런 거까지 고려하면 힘들다. ^_ㅠ 이 부분에 관한 내용은 8장. 플러터 2 변경점에서 확인할 수 있다.

 

다트패드에서 실습한 이미지

정상적으로 동작한다! 처음에는 선언형 프로그래밍 방식이 익숙지 않아서 조금 어렵게 느껴지긴 했다. 그래도 책에서 세세하게 설명해주니, 차근차근 따라가면 크게 어렵지 않았다.

 

1부에서는 크게 보면 Dart 문법과 UI를 구성하는 위젯을 배운다. 위젯을 배우는데 그치는 것이 아니라, 배운 위젯을 활용해 7장에서 복잡한 UI 작성하는 방법도 배운다. 7장 프로젝트는 실제 서비스되는 앱에서 자주 보이는 구성을 구현하는 점이 좋았다.

 

2부 - 9, 10, 11장에서는 앞에서 배운 내용을 활용해 3가지 앱을 만든다. 9장에서는 화면 전환, 데이터 전달, 계산을 배운다. 10장에서는 일정 주기로 반복하는 동작을 구현하는 방법, 다이내믹한 UI 처리를 배우고, 11장에서는 가장 기본이 되는 할 일 관리 앱을 만든다. 이 과정에서 파이어 베이스를 이용해 클라우드에 데이터를 저장하는 방법도 배운다.

 

가볍게 플러터를 맛보고 싶은 사람에게 추천할 만한 책이다.

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

초보자도 실제로 앱을 만들 수 있게 해주는 책!

툴 설치

기초 문법

실전 예제 3개로 사용자가 실제로 앱을 만들 수 있게 해 준다!!!

 

앱을 처음 만들고자 하는 사용자에게 가장 좋은 책으로 추천한다!

앱 툴을 사용할 수 있게 해 준다.

앱을 만들 수 있도록 기초 문법을 알려준다.

예제 앱 3개를 통해 앱을 어떻게 만드는지 알려준다!

 

앱 개발자로 시작하기 가장 좋은 책이다.

바로 시작해보자~

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
소문난 명강의 : 오준석의 플러터 생존코딩(개정판)
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
소문난 명강의 : 오준석의 플러터 생존코딩(개정판)
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
소문난 명강의 : 오준석의 플러터 생존코딩(개정판)
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실