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源代码;二、在源码基础上修修改改,改成你要的效果,试着做个小应用;三、格物致知,系统学习,实践与理论结合。
01
AppFlowy
GitHub(40K+):
https://github.com/AppFlowy-IO/AppFlowy
AppFlowy是一个免费的开源笔记工具,专为创意思维而设计。是Notion.io的一个开源替代方案,支持使用Markdown语法、动态表、检查表。还提供了一个响应式看板视图。
AppFlowy可以安装在Linux、Windows和macOS等操作系统上。也可以使用Docker安装。AppFlowy前端开发使用的是Flutter,而后端使用的是Rust。
02
Fwitter
GitHub(3.4K):
https://github.com/TheAlphamerc/flutter_twitter_clone