Flutter是Google開源的跨平臺前端應用開發框架,使用 Dart 作為開發語言,只需要開發一套代碼庫就可以構建多平臺應用,支持移動應用、Web、桌面和嵌入式平臺等終端應用開發。它開源、免費,擁有寬松的開源協議,特別適合用于商業項目。近年來Fluter憑借其快速開發能力、豐富漂亮的UI設計、高性能、高可擴展性設計等優勢,獲得了開發者的青睞。可以說前景一片美好。
在開發過程中,Flutter應用程序在VM中運行,在VM之上運行,代碼隨時更改,不需要完全重新編譯。發布之后,Flutter應用程序被編譯為機器代碼,可以在Intel x64、ARM等架構上運行。
Flutter被設計成一個可擴展的分層系統。包括:Embedding、Engine、Framework,三層,FrameWork層的每一部分都是可選和可替換的。
架構如下圖所示:
目前Flutter與React Native都是原生前端應用開發的佼佼者,互有優劣。如果追求快速搭建一個APP,又有Java或者javascript的開發基礎,我想Flutter值得考慮選擇。
話不多說!以下是學習Flutter開發的一些漂亮的Flutter開源應用程序以及一些學習資源。
開源項目
回想過去,我在學習一個框架或者一個語言的時候總是喜歡從例子入手。可能模仿是人類的天性,就像嬰兒學會說話的過程,他的每一次開口都是在模仿他的父母。
對于有一定開發語言基礎的Flutter初學者來說,快速入門的路徑可以是:一、Clone源代碼;二、在源碼基礎上修修改改,改成你要的效果,試著做個小應用;三、格物致知,系統學習,實踐與理論結合。
AppFlowy
GitHub(40K+):
https://github.com/AppFlowy-IO/AppFlowy
AppFlowy是一個免費的開源筆記工具,專為創意思維而設計。是Notion.io的一個開源替代方案,支持使用Markdown語法、動態表、檢查表。還提供了一個響應式看板視圖。
AppFlowy可以安裝在Linux、Windows和macOS等操作系統上。也可以使用Docker安裝。AppFlowy前端開發使用的是Flutter,而后端使用的是Rust。
02
GitHub(3.4K):
https://github.com/TheAlphamerc/flutter_twitter_clone
這是一個功能齊全的仿Twitter應用。技術棧包括:Firebase auth、real-time、Firestore Database和 Storage等。
03
Immich
GitHub(21.3K):
https://github.com/immich-app/immich
Immich是一個用于備份照片或者視頻的免費開源應用,服務端采用Next.js框架開發,技術棧包括TensorFlow、PostgreSQL、Redis和Nginx等,前端基于Flutter,支持Android和iOS系統。
04
https://github.com/janoodleFTW/timy-messenger
這是一個開源的Flutter群組群消息應用程序,包括很多功能,如:多個群組(類似于Slack中的Teams)、群組內的多個開放或私人頻道、分享照片和照片集、表情符號消息等。
05
Authpass
https://github.com/authpass/authpass
AuthPass是一個使用Flutter開發的完全免費開源的密碼管理器。支持多個平臺運行,可以與KeePass完全兼容(KeePass是原始的開源密碼管理器)。
06
Musify
GitHub(1.2K):
https://github.com/gokadzev/Musify
Musify是一個開源的自由音樂應用程序,基于Flutter開發。
主要功能包括:
在線歌曲搜索與推薦
支持流媒體播放
支持下載
支持數據導入導出,且永遠不會丟失
添加帶有鏈接的自定義播放列表
支持播放本地歌曲
高品質mp3 / m4a / flac格式播放
歌詞支持
無廣告
無需費用
內置更新程序
支持14種語言
07
Butterfly
https://github.com/LinwoodCloud/Butterfly
Butterfly是一款用Flutter編寫的尖端筆記軟件。它提供了許多類似應用程序中沒有的出色功能。用戶可以輕松地手寫筆記。具有友好的用戶界面,易于組織管理筆記。支持Windows、Linux、macOS、Web (PWA)、Web (Self-hosted)等平臺。
08
Liso
https://github.com/Liso-Vault/app
Liso App是一個開源的去中心化私有數據庫,主要專注于安全地存儲私人信息和文件。主要使用Dart語言和Flutter框架編寫。
09
Wger
https://github.com/wger-project/flutter
Wger是一個免費的開源運動和健身助手,適用于健身專業人士和團隊。該項目的后端是用Python寫的rest服務。
后端源碼地址:https://github.com/wger-project/wger
10
Habo
https://github.com/xpavle00/Habo
Habo是一個很棒的習慣養成應用程序,使用Flutter開發,具有簡單、友好的用戶界面。
11
Timecop
https://github.com/hamaluik/timecop
Time Cop是一個簡單的時間跟蹤應用程序,適用于Android和iOS設備。支持離線模式,不跟蹤或使用廣告腳本。該應用程序使用Dart語言基于Flutter開發。
12
Weight Tracker
https://github.com/MSzalek-Mobile/weight_tracker
Weight Tracker是一個簡單的體重跟蹤應用程序。但是這個項目已經好多年沒有更新了。
13
WhatTodo
https://github.com/burhanrashid52/WhatTodo
WhatTodo是一個很小的待辦事項和任務列表管理應用程序。它旨在每天跟蹤用戶的任務。可以添加項目、標簽和到期日到任務中,也可以對這些信息進行排序。這也是一個多年前的項目了。
14
OpenFoodFacts
https://github.com/openfoodfacts/smooth-app
這是一個食品溯源的Flutter應用程序。旨在通過流暢的用戶體驗和時尚的用戶界面向廣大用戶展示Open Food Facts的力量。
15
Spooky
https://github.com/juniorise/spooky-mb
Spooky是一個極簡的Flutter應用程序,可以寫故事、日記、筆記、日記、待辦事項等。
16
AirDash
https://github.com/simonbengtsson/airdash
AirDash是一款允許用戶在手機、PC和Mac之間共享大型文件的工具。它適用于Windows、Linux、macOS和Android。AirDash默認支持大于2GB的文件,并且不包含任何廣告或第三方腳本。
17
QuitSmoke
https://github.com/trizin/Quit-Smoke-App
QuitSmoke是一款戒煙應用程序。可以跟蹤戒煙進度,并監控節省了多少錢,避免了多少香煙傷害,以及已經戒煙多久了。該應用程序還具有一個倒計時,可以跟蹤戒煙后身體健康的各個方面的改善情況。
學習資源
Flutter官方網站:
https://flutter.dev/learn
Flutter中文社區:
https://www.flutterchina.club/
Flutter中文網:
https://flutter.cn/learn
Flutter中文教程:
https://juejin.cn/s/flutter%E4%B8%AD%E6%96%87%E6%95%99%E7%A8%8B
一些好用的免費教程網站:
https://codewithandrea.com/tutorials/
https://www.kodeco.com/
https://flutterawesome.com/netflix-clone-by-using-flutter/
https://medium.com/flutterfever
各種Flutter開發視頻教程:
https://github.com/iampawan/FlutterExampleApps
GoogleFlutter視頻教程:
https://developers.google.com/learn/pathways/intro-to-flutter?hl=zh-cn
Flutter教程:
https://github.com/londonappbrewery/Flutter-Course-Resources
Flutter組件:
一系列登錄屏幕、插件、加載器和小部件,具有吸引人的UI,使用Flutter構建,隨時可用于您的應用程序。
https://github.com/samarthagarwal/FlutterScreens
Flutter庫、工具、教程、文章等等:
https://github.com/Solido/awesome-flutter
各種Flutter的UI模板:
https://github.com/mitesh77/Best-Flutter-UI-Templates
各種Flutter例子:
https://github.com/flutter/samples
該文章在 2023/11/21 15:30:26 編輯過