이 글은 개발언어 스터디를 목적으로 작성한 개인적인 기록이다.
정리를 안해두니까 어디서 봤는지 찾기가 힘들어서,
조금 귀찮지만 나를 위해 정리해 두기로 했다.
그리고 정리를 하면서 읽으면 더 정확히 이해할수도 있을테니...
(도서구입: 교보문고 영등포점 바로드림 2021.03.10)
이 책을 보기 전에 봤던 책은 아래의 2권,
입문서로 보기에 적합하지만,
플러터 2.0 지난 2021년 3월에 발표되었고
플러터가 분기단위로 버전업하고 있음을 감안하고 책을 골라야 한다.
오준석의 플러터 생존 코딩 - 교보문고
앱을 만드는 ‘완벽한 준비’에 시간을 낭비하지 마세요. 이 책은 기본을 빠르게 익히고 앱을 직접 만들며 필요한 기능을 알아가는 ‘입문 + 활용서’로서 여러분의 시간을 아껴줍니다. ‘다트
www.kyobobook.co.kr
안드로이드 앱 개발에 딱 맞는 플러터와 다트 입문 - 교보문고
플러터는 크로스플랫폼 환경을 지원해 코드 하나로 안드로이드와 iOS 앱을 한번에 개발할 수 있게 해주는 프레임워크다. 기존의 크로스플랫폼 지원 앱과 달리 네이티브한 성능이 개선되었으며,
www.kyobobook.co.kr
[인터넷 강의]
플러터 개발자 커뮤니티에서 강력 추천하는 온라인 강의 과정
"안젤라 유" 의 "The Complete 2021 Flutter Development with Dart" 를 수강했다.
유데미에도 동일내용으로 제공되고 있지만 아래 원본 강의가 조금 더 싸다.
The App Brewery
Learn to code and become an app developer even if you are a complete beginner
www.appbrewery.co
내가 수강한 과정은 아래 그림의 오른쪽 강의이다.
2021.2월에 2주간 풀코스 완주후 플러터 기본개념을 익힐 수 있다.
플러터 개발팀과 공식 협업하여 제작하였기 때문에 기본기를 익히기에 최적이고,
자세하고 친절한 설명 적절한 예제와 미션으로 이루어져 있다.
다루는 내용은 시중에 나온 입문서적의 3~4권 분량은 충분히 될듯 싶다.
강의 타이틀에 2021년이라고 되어 있지만 2019년 기준으로 제작되어,
오래된(deprecated) 소스와 패키지가 포함되어 있다.
영국식 영어라 귀에 잘들어오지만 한글자막은 없다.
그리고 국내 유튜버 "코딩셰프 강의"도 있으니 참고하자.
코딩셰프
향후 대세가 될 플러터를 단계별로 맛있게 학습하실 수 있습니다!
www.youtube.com
위의 내용과 함께 학습을 위해 빼놓을 수 없는 스터디 소스는
플러터 공식문서와 영상들이다.
특히, 한글로 된 코드랩스는 필수 flutter-ko.dev/docs/codelabs
Codelabs
Codelabs help you quickly get started programming Flutter.
flutter-ko.dev
여러 스터디 소스가 많지만 Doit! 시리즈를 도서를 또 선택한 이유는 실전적인 구성이 맘에 들었기 때문이다.
'안젤라 유' 과정 수강후 기본적인 내용은 익혔다 느꼈지만 실전에 나서기에는 아직 뭔가 좀 부족한 느낌이 있다.
그래서 이 책을 보고나서 실전 개발에 나서보려고 생각중이다. 플러터 2.0 출시 직전 1.22.5버전 시점에 나온 도서,
"플러터 앱 프로그래밍"! 이 책 끝내고 실전 돌입!
이 책의 소스코드 깃허브: github.com/rollcake86/doitflutter
01. 플러터 시작하기
p.15, 16
플러터 등장배경
배경구글은 자바 대체위해 새로운 언어 코틀린(Kotlin) 개발, 애플은 기존 오브젝트-C 대신 스위프트(Swift) 언어를 밀고 있다. 각 모바일 운영체계에 맞는 언어로 개발한 앱이 '네이티브 앱'.
하지만 똑같은 앱을 두 번 개발해야하는게 피곤해서 웹앱, 프로그레시브 웹앱(PWA)과 하이브리드 앱이 등장했고, 페이스북은 여러 운영체제에서 동작하는 앱 개발 프레임워크인 리액트 네이티브를 만들었다. 동일한 자바 스크립트가 다리 역할을 해서 두 운영체제에서 실행할 수 있게 연결해준다. 이 스크립트 언어는 기존 네이티브 앱 개발자들에게 익숙하지 않았다.
플러터는 Dart라는 언어를 사용하는데 기존 자바나 C# 같은 컴파일 언어의 특성과 문법을 가지고 있어서 기존 개발자들을 끌어들였다.
p.17, 18 플러터의 구조
화면을 구성하는 프레임워크는 Dart로 개발하고, 플러터의 코어 '엔진'은 C와 C++로 작성하고 Dart 컴파일, 화면 렌더링, 데이터 통신, 시스템 이벤트 처리를 수행한다. 맨 아래 임베더 계층은 크로스 플랫폼으로 동작하도록 모바일 운영체제별 네이티브 언어로 뷰를 만들어 화면에 보여준다. 안드로이드 앱은 자바, C, C++언어로 만들고, iOS앱은 오브젝트-C, C++언어로 만든다. 그리고 리눅스와 윈도우 앱은 C++언어로 만든다.
국내 사례, 판도라TV가 만든 KM Player, 네이버 지식인, 사람인(점핏), G9bon 앱 등이 플러터로 만들었다.
p.20
플러터는 화면을 그릴 때 스키아(skia) 엔진을 이용한다. 초당 60프레임 이상 속도로 전체 화면을 업데이트 하기 때문에 네이티브 앱과 속도 차이가 거의 없다. 스키아는 오픈소스 2D 그래픽 엔진으로 크롬, 안드로이드 등에서 사용한다.
구글 I/O 2019에서 Dart를 기반으로 만든 차세대 운영체제인 푸크시아(Fuchsia)를 공개적으로 언급.
플러터는 웹, 데스크탑, Embedded 기기까지 확장한다고 발표
01. 플러터 시작하기의 나머지 부분은 생략한다. 설치 및 환경설정
02. 다트를 알면 플러터가 보인다 - Dart 문법연습하는 부분이지만 어차피 계속 나올 내용이므로 패쓰.
끝
'플러터 스터디' 카테고리의 다른 글
Doit! 플러터 앱 프로그래밍 스터디(2) (0) | 2021.03.20 |
---|