Flutter實戰 ( 簡體 字) |
作者:[荷蘭]弗蘭克·扎米蒂(Frank Zammetti) 著 | 類別:1. -> 程式設計 -> 手機程式 -> Flutter |
譯者:貢國棟 任強 譯 |
出版社:清華大學出版社 | 3dWoo書號: 53169 詢問書籍請說出此書號!【缺書】 NT售價: 400 元 |
出版日:7/1/2020 |
頁數:312 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787302556084 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:即使經過這么多年開發者們孜孜不倦的努力,創建如原生應用般外觀、體驗及功能的跨平臺移動應用依舊是一個讓人棘手的難題。你可以為各個平臺分別編寫原生代碼,并盡可能讓它們表現一致,這的確不失為使你的應用獲得原生性能和能力的好辦法。但實際上,這意味著你的應用要編寫多次,而客戶往往不太樂意為此買單! 與之相對的是,你可以基于HTML技術實現一次編碼而到處運行。但那樣的話,你將無法使用諸多本地設備能力,更別提差勁的性能表現了(誠然,有一些優化措施,但也只能減少而不是消除這些顧慮)。 由Google的天才工程師創建的Flutter平臺提供了一種只需要編寫一遍代碼(或多或少),就能在Android和iOS兩個平臺上運行一致且具備原生性能和能力的方法。在移動開發庫領域,使用現代工具和開發技術構建的Flutter為開發者提供了一種新的編程方式。 在《Flutter實戰》中,你將通過構建兩個真正的應用來學習Flutter,而非使用簡化、笨拙而又矯揉造作的例子(盡管在早期會因介紹概念而引入一些此類例子)。是的,我們將一起構建可以按自己意愿并直接應用于實踐的應用,而非進行簡單的技術演示,并且在整個過程中,你會接觸到開發過程中的各種問題,包括我曾遇到過的問題以及解決方案。這樣,你就會獲得在現實環境中使用Flutter的扎實而又真實的經驗——并借此為將來構建自己的應用做好準備。 你還將學到構建應用的一些關聯知識,如使用Node.js和WebSocket構建服務端。 除此之外,你還將學到類型截然不同的第三個應用:游戲!是的,我們將使用Flutter來構建游戲,以介紹Flutter的一些附加的、通過前兩個應用不一定得到的功能,并且為你提供從不同視角審視Flutter的機會,以拓展你的視野。 你終將掌握Flutter,且具備使用Flutter構建自己的Next Big Thing應用的能力。 在開始閱讀《Flutter實戰》之前,我建議你打開Apress網站,搜索《Flutter實戰》并下載源代碼。你將得到所需的一切代碼,而無須親自輸入!讀者也可通過手機掃描封底的二維碼下載《Flutter實戰》的源代碼。 不要忘了學習任何知識的最好方式是動手實踐,因此一定要深入代碼,修改示例代碼和應用,然后觀察相應的變化。當你讀完介紹每個應用的章節時,你應該打開源代碼并嘗試添加一兩個功能(我還會給你一些這么做的建議,為你指明方向)。 我希望你能喜歡《Flutter實戰》,并從中學到很多,這是我衷心的愿望! |
內容簡介:《Flutter實戰》圍繞Flutter的跨平臺能力及其來龍去脈展開講解。當今,移動開發領域發展迅速,Flutter是由Google公司推出的開源移動應用開發SDK,使用Flutter可以為Android、iOS和Google Fuchsia系統開發應用。 通過學習本書,你將掌握三個可直接安裝在自己的移動設備上并實際體驗的應用(個人信息管理、聊天系統和游戲)。你將扎實掌握Flutter基礎知識,并由此快速構建兩個常見應用,你還將通過學習構建游戲項目,從完全不同的角度了解Flutter的強大功能。通過構建這三個應用,你將了解現實世界中發生的問題,并通過相關提示及技巧掌握解決辦法,所有這些都將使你的Flutter學習高效且充滿樂趣! 本書將使你掌握使用Flutter構建應用的能力,進而可以自行構建更高級的應用。完成本書的學習后,你將站在更高的起點并且能夠做好充分準備,在Flutter開發領域從容應對任何挑戰。本書是學習Flutter不可錯過的經典作品。 |
目錄:第1章初識Flutter1 1.1在深淵中沉思1 1.2透過名字這一表象3 1.3Dart:眾神的語言4 1.4擁抱微件7 1.5 言歸正傳:Flutter的優劣對比11 1.6 無須多言,向Flutter進發吧13 1.7 FlutterSDK14 1.8AndroidStudio14 1.9(不那么)經典的“Hello,World!”應用15 1.10熱重載:你會喜歡上它的23 1.11Flutter應用的基本結構24 1.12其他一些“隱藏的”細節27 1.13小結28 第2章Dart核心技術29 2.1必知必會29 2.1.1沒有注釋:關于注釋的一切30 2.1.2萬物皆可變:變量32 2.1.3物以類聚:數據類型34 2.2當單個值不夠用時:使用枚舉39 2.3是什么類型:關鍵字as和is40 2.4順序執行:流程控制(及邏輯)結構41 2.5一無所有:void43 2.6操作符44 2.7將結合點分類:Dart中的面向對象46 2.8讓函數變得有趣55 2.9斷言58 2.10超時了:異步58 2.11保持安靜:庫(及可見性)59 2.12凡事總有例外:異常處理61 2.13生成器62 2.14元數據64 2.15泛泛而談:泛型64 2.16小結66 第3章你好Flutter,第一部分67 3.1微件速覽67 3.1.1布局微件68 3.1.2導航微件78 3.1.3輸入表單類微件87 3.1.4對話框、彈窗、消息微件100 3.2小結108 第4章你好Flutter,第二部分109 4.1微件樣式109 4.1.1Theme微件和ThemeData109 4.1.2Opacity微件111 4.1.3DecoratedBox微件111 4.1.4Transform微件112 4.2動畫和過渡113 4.2.1AnimatedContainer113 4.2.2AnimatedCrossFade微件114 4.2.3AnimatedDefaultTextStyle微件116 4.2.4其他微件117 4.3拖放117 4.4數據視圖119 4.4.1Table微件119 4.4.2DataTable微件121 4.4.3GridView微件123 4.4.4ListView和ListTile微件125 4.5其他微件127 4.5.1CircularProgressIndicator(CupertinoActivityIndicator)和LinearProgressIndicator微件127 4.5.2Icon微件128 4.5.3Image微件130 4.5.4Chip微件131 4.5.5FloatingActionButton微件133 4.5.6PopupMenuButton微件134 4.6常用API136 4.6.1核心Flutter框架庫136 4.6.2Dart庫138 4.6.3其他(支持)庫140 4.7小結141 第5章FlutterBook,第一部分143 5.1我們在構建什么143 5.2啟動項目145 5.3配置和插件145 5.4UI結構147 5.5應用的代碼結構148 5.6起跑線148 5.7一些全局工具類151 5.8關于狀態管理153 5.9從簡單的開始:便簽156 5.9.1起點:Notes.dart157 5.9.2模型:NotesModel.dart158 5.9.3數據庫層:NotesDBWorker.dart160 5.9.4列表頁:NotesList.dart165 5.9.5輸入頁:NotesEntry.dart171 5.10小結179 第6章FlutterBook,第二部分181 6.1搞定這一切:任務181 6.1.1TasksModel.dart181 6.1.2TasksDBWorker.dart182 6.1.3Tasks.dart182 6.1.4TasksList.dart183 6.1.5TasksEntry.dart185 6.2定個日子:約會187 6.2.1AppointmentsModel.dart187 6.2.2AppointmentsDBWorker.dart188 6.2.3Appointments.dart188 6.2.4AppointmentsList.dart188 6.2.5AppointmentsEntry.dart196 6.3伸出你的手:聯系人198 6.3.1ContactsModel.dart198 6.3.2ContactsDBWorker.dart199 6.3.3Contacts.dart199 6.3.4ContactsList.dart199 6.3.5ContactsEntry.dart204 6.4小結210 第7章FlutterChat,第一部分:服務端211 7.1我們要構建的是什么211 7.2Node212 7.3保持通信暢通:socket.io215 7.4FlutterChat服務端代碼218 7.4.1兩個狀態和一個對象相遇219 7.4.2消息鉤子221 7.5小結230 第8章FlutterChat,第二部分:客戶端231 8.1Model.dart231 8.2Connector.dart234 8.2.1服務端消息函數237 8.2.2客戶端消息函數239 8.3main.dart241 8.4LoginDialog.dart245 8.5Home.dart250 8.6AppDrawer.dart251 8.7Lobby.dart254 8.8CreateRoom.dart257 8.9UserList.dart262 8.10Room.dart265 8.10.1聊天室功能菜單266 8.10.2主界面內容269 8.10.3邀請或踢出用戶272 8.11小結276 第9章FlutterHero:一款Flutter游戲277 9.1故事起源277 9.2基本布局278 9.3目錄結構與組件源文件279 9.4配置:pubspec.yaml280 9.5GameObject類281 9.6GameObject類的擴展:Enemy類286 9.7GameObject類的擴展:Player類287 9.8一切開始的地方:main.dart291 9.9主游戲循環和核心游戲邏輯296 9.9.1起始296 9.9.2首次初始化297 9.9.3Flutter動畫簡介298 9.9.4重置游戲狀態300 9.9.5主游戲循環302 9.9.6檢查碰撞305 9.9.7隨機定位對象307 9.9.8轉移能量307 9.10控制:InputController.dart310 9.11小結312 |
序: |