# Introduction
## 關于講師
講師:尹彬<br/>
就職于:[青島前途軟件技術有限公司](http://www.yinbin.ink)<br/>
博客地址:[http://www.yinbin.ink](http://www.yinbin.ink)<br/>
擁有10年軟件編程經驗,目前主要從事:項目管理、技術管理、系統架構師工作。
## PDF版本下
[http://docs.yinbin.ink/flutter_in_action/Flutter從入門到精通0.1.pdf](http://docs.yinbin.ink/flutter_in_action/Flutter從入門到精通0.1.pdf)
## 在線視頻教程
TODO
## 適用人群
適合立志于從事高質量移動應用開發的同學。
不限于:原生android、ios APP開發者,H5 App開發者,RN、Weex開發者。
## 課程概述
** 此文檔是《Flutter從入門到精通》(連載)視頻教程的配套課件。**
課程目錄預覽如下:
```
章節1 Flutter之初印象
課時1 Flutter App開發介紹
課時2 Flutter Windows開發環境搭建
課時3 Macos開發環境搭建
課時4 Hello Flutter
課時5 FAQ
章節2 Flutter基礎知識
課時1 Flutter框架概覽
課時2 Widget基礎知識
課時3 Flutter原理-架構圖
課時4 Flutter原理-滑動魔法
章節3 開發工具
課時1 使用Flutter IDE
課時2 使用熱重載
課時3 測試應用
課時5 調試應用
課時5 檢查(Inspect)用戶界面
課時6 Android構建發布
課時7 IOS構建發布
課時8 升級安裝的Flutter
課時9 格式化代碼
章節4 使用設備和SDK API
課時1 Fluter pub包管理器
課時2 使用packages
課時3 開發packages
課時4 平臺特定的代碼
課時5 文件讀寫
課時6 網絡和Http
課時7 JSON和序列化
課時8 數據共享InheritedWidget
章節5 基礎 Widgets
課時1 Container
課時2 Row
課時3 Column
課時4 Text
課時5 RaisedButton
課時6 FlutterLogo
課時7 Placeholder
課時8 了解盒子約束
章節6 Material - app結構和導航
課時1 Scaffold
課時2 Appbar
課時3 BottomNavigationBar
課時4 TabBar
課時5 TabBarView
課時6 MaterialApp
課時7 WidgetsApp
課時8 Drawer
章節7 Material - 按鈕
課時1 RaisedButton
課時2 FloatingActionButton
課時3 自定義FloatActionButton
課時4 FlatButton
課時5 IconButton
課時6 PopupMenuButton
課時7 ButtonBar
章節8 Material - 輸入框和選擇框
課時1 TextField
課時2 處理文本輸入
課時3 Checkbox
課時4 Radio
課時5 Switch
課時6 Slider
課時7 Date&TimePickers
章節9 Material - 對話框、Alert、Panel
課時1 SimpleDialog
課時2 AlertDialog
課時3 BottomSheet
課時4 ExpansionPanel
課時5 SnackBar
章節10 Material - 信息展示
課時1 Image
課時2 資源和約束
課時3 Icon
課時4 Chip相關
課時5 Tooltip
課時6 DataTable
課時7 Card
課時8 LinearProgressIndicator
章節11 Material - 布局
課時1 ListTile
課時2 Stepper
課時3 Divider
章節12 布局組件 - 單個子元素
課時1 Container
課時2 Padding
課時3 Center
課時4 Align
課時5 FittedBox
課時6 AspectRatio
課時7 ConstrainedBox
課時8 Baseline
課時9 FractionallySizedBox
課時10 IntrinsicHeighht
課時11 IntrinsicWidth
課時12 LimitedBox
課時13 Offstage
課時14 OverflowBox
課時15 SizedBox
課時16 SizedOverflowBox
課時17 Transform
課時18 CustomSingleChildLayout
課時19 如何構建布局
章節13 布局組件 - 多個子元素
課時1 Row
課時2 Column
課時3 Stack
課時4 IndexedStack
課時5 Flow
課時6 Table
課時7 Wrap
課時8 ListBody
課時9 ListView
課時10 CustomMultiChildLayout
課時11 LayoutBuilder
章節14 文本組件
課時1 Text
課時2 RichText
課時3 DefaultTextStyle
課時4 如何自定義字體
課時5 style練習
章節15 資源組件
課時1 Image
課時2 Icon
課時3 RawImage
課時4 Assetbulde
章節16 表單組件
課時1 Form
課時2 FormField
課時3 RawKeyboardListener
章節17 動畫組件
課時1 了解flutter動畫
課時2 AnimatedContainer
課時3 AnimatedCrossFade
課時4 Hero
課時5 AnimateBuilder
課時6 DecoratedBoxTransition
課時7 FadeTransition
課時8 PositionedTransition
課時9 RotationTransition
課時10 ScaleTransition
課時12 SizeTransition
課時13 SlideTransition
課時14 AnimatedDefaultTextStyle
課時15 AnimatedLsitState
課時16 AnimatedModalBarrier
課時17 animatedOpacity
課時18 AnimatedPhysicalModel
課時19 AnimatedPositioned
課時20 AnimatedSize
課時21 AnimatedWidget
課時22 AnimatedWidgetBaseState
章節18 交互模型組件
課時1 了解flutter手勢
課時2 LongPressDraggable
課時3 GestureDetector
課時4 DragTarget
課時5 Dismissable
課時6 IgnorePointer
課時7 AbsorbPointer
課時8 Navigator
課時9 路由和導航
課時10 WillPopScope
課時11 Scrollable
課時12 如何添加交互
章節19 樣式組件
課時1 Padding
課時2 Theme
課時3 MediaQuery
章節20 繪制和視覺效果組件
課時1 Opacity
課時2 Transform
課時3 DecoratedBox
課時4 FractionalTranslation
課時5 RotatedBox
課時6 ClipOval
課時7 ClipPath
課時8 ClipRect
課時9 CustomPaint
課時10 BackdropFilter
章節21 異步組件
課時1 Futurebuilder
課時2 StreamBuilder
章節22 可滾動的組件
課時1 ListView
課時2 NestedScrollView
課時3 GridView
課時4 SingleChildScrollView
課時5 Scrollable
課時6 Scrollbar
課時7 CustomScrollView
課時8 Notification
課時9 NotificationListener
課時10 ScrollConfiguration
課時11 RefreshIndicator
章節24 國際化
課時1 官網國際化方法
課時2 Pub庫flutter_i18n
章節25 文件操作和網絡訪問
課時1 文件操作
課時2 Http請求-HttpClient
課時3 Http請求-Dio package
課時4 WebSocket
課時5 使用Socket API
課時6 Json轉Model
課時7 Json轉Dart Model工具
章節26 Cookbook
課時1 設計基礎
課時2 Images
課時3 Lists
課時4 處理手勢
課時5 導航
課時6 網絡
章節27 常用pub類庫
課時1 shared
課時2 path_provider
課時3 WebView
課時4 gps
課時5 web_socket_channel
課時6 video_player
章節28 設計模式
課時1 rxdart
課時2 scoped_model
課時3 flux
課時4 dartea mvu模式
課時5 mvvm模式
章節29 練習例子
課時1 構建聊天界面
課時2 Http Json構建列表界面
課時3 Stream構建界面
課時4 Stream轉Model例子
課時5 動畫例子
課時6 模擬物理動畫
課時7 攝氏華氏轉換例子
課時8 計算器例子
課時9 天氣應用
課時10 ScopedModel多Page例子
課時11 嵌入Tab到Scroll例子
課時12 記住State例子
章節30 從零開始實現一個GithubAPP
章節31 從零開始實現一個音樂播放APP
章節32 Fluter框架探秘
Flutter之foundation庫
Flutter之painting庫
Flutter之animation庫
Flutter之gestures庫
Flutter之rendering庫
Flutter之widgets庫
Flutter之cupertino庫
Flutter之material庫
```
## 版本
| 序號 | 修改內容 | 撰稿人 | 修訂時間 | 版本號 |
|---|---|---|---|---|
| 1 | flutter課程大綱 | 尹彬 | 2018-12-13 | V0.1 |
- Introduction
- Flutter之初印象
- Flutter App開發介紹
- Flutter Windows開發環境搭建
- Macos開發環境搭建
- Hello Flutter
- FAQ
- Flutter基礎知識
- Flutter框架概覽
- Widget基礎知識
- Flutter原理-架構圖
- Flutter原理-滑動魔法
- 開發工具
- 使用Flutter IDE
- 使用熱重載
- 測試應用
- 調試應用
- 檢查Inspect用戶界面
- Android構建發布
- IOS構建發布
- 升級安裝的Flutter
- 格式化代碼
- 使用設備和SDK API
- Fluter pub包管理器
- 使用packages
- 開發packages
- 平臺特定的代碼
- 文件讀寫
- 網絡和Http
- JSON和序列化
- 數據共享InheritedWidget
- 基礎 Widgets
- Container
- Row
- Column
- Text
- RaisedButton
- FlutterLogo
- Placeholder
- 了解盒子約束
- Material - app結構和導航
- Scaffold
- Appbar
- BottomNavigationBar
- TabBar
- TabBarView
- MaterialApp
- WidgetsApp
- Drawer
- Material - 按鈕
- RaisedButton
- FloatingActionButton
- 自定義FloatActionButton
- FlatButton
- IconButton
- PopupMenuButton
- ButtonBar
- Material - 輸入框和選擇框
- TextField
- 處理文本輸入
- Checkbox
- Radio
- Switch
- Slider
- Date&TimePickers
- Material - 對話框、Alert、Panel
- SimpleDialog
- AlertDialog
- BottomSheet
- ExpansionPanel
- SnackBar
- Material - 信息展示
- Image
- 資源和約束
- Icon
- Chip相關
- Tooltip
- DataTable
- Card
- LinearProgressIndicator
- Material - 布局
- ListTile
- Stepper
- Divider
- 布局組件 - 單個子元素
- Container
- Padding
- Center
- Align
- FittedBox
- AspectRatio
- ConstrainedBox
- Baseline
- FractionallySizedBox
- IntrinsicHeighht
- IntrinsicWidth
- LimitedBox
- Offstage
- OverflowBox
- SizedBox
- SizedOverflowBox
- Transform
- CustomSingleChildLayout
- 如何構建布局
- 布局組件 - 多個子元素
- Row
- Column
- Stack
- IndexedStack
- Flow
- Table
- Wrap
- ListBody
- ListView
- CustomMultiChildLayout
- LayoutBuilder
- 文本組件
- Text
- RichText
- DefaultTextStyle
- 如何自定義字體
- style練習
- 資源組件
- Image
- Icon
- RawImage
- Assetbulde
- 表單組件
- Form
- FormField
- RawKeyboardListener
- 動畫&Motion組件
- 了解flutter動畫
- AnimatedContainer
- AnimatedCrossFade
- Hero
- AnimateBuilder
- DecoratedBoxTransition
- FadeTransition
- PositionedTransition
- RotationTransition
- ScaleTransition
- SizeTransition
- SlideTransition
- AnimatedDefaultTextStyle
- AnimatedLsitState
- AnimatedModalBarrier
- animatedOpacity
- AnimatedPhysicalModel
- AnimatedPositioned
- AnimatedSize
- AnimatedWidget
- AnimatedWidgetBaseState
- 交互模型組件
- 了解flutter手勢
- LongPressDraggable
- GestureDetector
- DragTarget
- Dismissable
- IgnorePointer
- AbsorbPointer
- Navigator
- 路由和導航
- WillPopScope
- Scrollable
- 如何添加交互
- 樣式組件
- Padding
- Theme
- MediaQuery
- 繪制和視覺效果組件
- Opacity
- Transform
- DecoratedBox
- FractionalTranslation
- RotatedBox
- ClipOval
- ClipPath
- ClipRect
- CustomPaint
- BackdropFilter
- 異步組件
- Futurebuilder
- StreamBuilder
- 可滾動的組件
- ListView
- NestedScrollView
- GridView
- SingleChildScrollView
- Scrollable
- Scrollbar
- CustomScrollView
- Notification
- NotificationListener
- ScrollConfiguration
- RefreshIndicator
- 國際化
- 官網國際化方法
- Pub庫flutter_i18n
- 文件操作和網絡訪問
- 文件操作
- Http請求-HttpClient
- Http請求-Dio package
- WebSocket
- 使用Socket API
- Json轉Model
- Json轉Dart Model工具
- Cookbook
- 設計基礎
- Images
- Lists
- 處理手勢
- 導航
- 網絡
- 常用pub類庫
- shared
- path_provider
- WebView
- gps
- web_socket_channel
- video_player
- 設計模式
- rxdart
- scoped_model
- flux
- dartea mvu模式
- mvvm模式
- 練習例子
- 構建聊天界面
- Http Json構建列表界面
- Stream構建界面
- Stream轉Model例子
- 動畫例子
- 模擬物理動畫
- 攝氏華氏轉換例子
- 計算器例子
- 天氣應用
- ScopedModel多Page例子
- 嵌入Tab到Scroll例子
- 記住State例子
- 從零開始實現一個GithubAPP
- 從零開始實現一個音樂播放APP
- Fluter框架探秘
- Flutter之foundation庫
- Flutter之painting庫
- Flutter之animation庫
- Flutter之gestures庫
- Flutter之rendering庫
- Flutter之widgets庫
- Flutter之cupertino庫
- Flutter之material庫