Flutter入门

Flutter实战电子书
Flutter中文网
Flutter 常用命令行
bug: 修复命令行不可用的问题
备注:最近在琢磨学习Flutter,主要是参考学习上面资料,首先表示大神辛苦整理表示感谢,下面多是参考上面总结类似于笔记,便于后续参考。

  1. 原生开发和跨平台开发对比
  • 原生开发的优点:
        * 原生系统控件渲染ui样式,性能高,动画流畅,滑动手势等比较好处理,整体用户体验好。
        * 系统提供了全部功能访问的api,可以直接访问,比如摄像头,定位等功能
  • 原生开发缺点:
        * 开发成本高,每一个平台都是专有系统和api开发都需要专业人员开发,多平台涉及到的产品测试资源也多,提升了整个产品的研发成本
        * 版本更新周期长,一版功能由研发到测试再到发布上线审核通过跨的周期比较长,已不太适合当前移动互联网快速发展和功能快速迭代更新。
  • 相对比跨平台开发则是将原生优缺点颠倒过来,多数功能跨平台,原生平台更多是支撑作用,节省开发成本,跨平台多数支持热更新,无需发版,提升版本迭代功能,同样缺点就是不能直接访问系统某些功能,渲染也不是原生控件直接渲染导致用户体验很差。

即原生技术优缺点整理:
* 使用系统ui绘制引擎,性能好,动画流畅,手势事件响应快,用户体验好
* 系统提供全部终端特别是硬件功能api,比如摄像头,定位,各种传感器等
* 开发成本高,开发周期相对跨平台要长
跨平台的优缺点:
* 项目大部分功能一套代码搞定,相应的原生平台提供支持作用,即跨平台机制。
* 多数跨平台支持热更新,版本迭代相对于原生迭代的快
* 开发成本相对比较低,开发周期也相对比较快
* 不能彻底抛弃原生,需要原生提供支持
* 性能达不到原生的效果

  1. 当前跨屏技术实现及其对比
  • 当前跨平台开发技术下面三种:原生+h5(js),原生控件+js,自研UI引擎+原生三种,下面是大神整理的三种的区别,直接复用:


    跨平台技术对比
  • 多数项目中使用最多的是第一种实现,第二种实现以fc的react native框架居多,第一种更多的也是webview渲染页面,js和native通信,虽有框架好像用的也不多,当前主要是介绍第三种(个人对rn研究也不深),所以前两种就不深入介绍,有兴趣可以找其他文档或者上面参考文章。
  1. Flutter特性
  • flutter样式层实现不依赖与原生系统控件,自研2d样式绘制引擎skia,跨平台而且高性能
  • flutter是基于dart开发语言研发的,dart语言具有多种研发模式:静态编译(java)和动态编译(js),开发阶段可以动态编译解释方式提升测试,发包可以使用静态编译方式在运行时比着js这样边解释边执行语言更快执行,具体如下:
        如上开发效率高
        
    高性能
        快速分配内存
        
    类型安全
        开发文档及其问题平台齐全,有助于开发学习
        
    针对dart语言,刚入门,上面都是大神文章总结的,后续学习过程中比对。

即Flutter的优势:
* 跨平台,支持ios和Android两个平台开发
* 自研ui引擎skia,Dart作为runtime,text作为文本排版引擎,不依赖于原生系统ui,ui性能比较高
* 支持开发过程中热更新提升开发效率
* 当前flutter发布到3.0,系统还不够完善开发生态也不够完善。
Flutter 使用场景:

  • 跨平台:ios,Android,web
  • 脚本和服务端(Dart语言)
  1. Flutter框架层级结构


    flutter框架层级
  • 如图所示,可以将其层级看做三层:底层的具体实现引擎,中层的底层实现封装,上层的对外研发封装,项目开发也多是使用上层的框架封装等。
  1. Flutter环境搭建
  • 环境搭建主要是mac+Androidstudio,其他参考大神文章。
  • 安装flutter
        * 去flutter sdk 官网下载对应包,并解压到对应的安装文件夹。
        * 配置path路径,将flutter安装包中的bin等配置到mac系统path文件中。类Android java配置,方便命令行和ide使用
        * 命令行校验是否安装成功
  • Androidstudio配置
        * 安装对应的flutter插件和dart插件
        * 类Android工程创建,注意点:是否支持ios和kotilin都是创建过程中的可选项。
  • 备注mac配置path命令的方法
        * 命令行:open .bash_profile 打开命令行文件
        * 在文件中按照先前的配置配置好对应的命令
        * source 。bash_profile 保存命令行文件
  1. 第一个Flutter app
  • 按照上面步骤可以很方便的Android studio中创建出flutter工程,功能层级如下:


    flutter工程层级结构
  • Android studio确实是很强大的一个ide,大大简化了ndk和flutter的开发流程,提升了开发效率。
  • 如图所示,只是简单标识一下层级结构,存个印象,后续会根据深入学习更进一步深入flutter工程的每一个层级。
  1. Flutter常用的命令行命令
    • flutter clean:清理flutter工程
    • flutter upgrade:升级flutter sdk及其对应的工具
    • flutter channel:查看当前通道sdk的的信息
    • flutter build: 组建工程
    • 其他对应的命令行参考文章或者命令行 flutter help 获取帮助
    • 配置完路径后可能存在不能使用命令的问题需要同意一下Android的协议。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,907评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,987评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,298评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,586评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,633评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,488评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,275评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,176评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,619评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,819评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,932评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,655评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,265评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,871评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,994评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,095评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,884评论 2 354

推荐阅读更多精彩内容