Flutter系列(一)《开发工具准备与开发环境搭建》

1. Flutter是什么?

Flutter可以用一份代码同时生成iOS、Android两个平台下的高性能的、高保真的App

2. 为什么要用Flutter?

在Flutter的官网其实也已经给出了答案,

  • Be highly productive(提高开发效率)
    • 一份代码同时开发iOS和Android
    • 用更少的代码去干更多的事
    • 快速迭代
      • 通过热加载,在App运行时可以直接通过更改代码就能直接看到效果
      • 修复crash并且可以从从应用程序停止的地方继续进行调试
  • Create beautiful, highly-customized user experiences(漂亮、高度定制的用户体验)
    • Flutter提供了丰富的Material Design和Cupertino(iOS风格)的widget
    • 实现定制、美观、品牌驱动的设计,而不受原生控件的限制

简单的解读下,就是Flutter提供很多针对与iOS和Android平台下小组件,能够高效的、快速的跨平台开发

3. Flutter的核心原则

  • 一切皆为widget widget是Flutter应用程序的基本构建模块,可以自由组合不同的widget,而且widget还可以存储状态。单个widget的结构其实跟树差不多,如图:


    1.jpeg.png

4. Flutter VS React Native

2.jpeg

我们可以对比一下由Flutter和React Native开发的程序的区别不难发现

  • Flutter不会调用系统自带的UI组件,只需要操作系统提供一个画布(Canvas),渲染部分由应用代码和Flutter自己完成,这样的架构就减少了应用代码跟系统平台之间的性能消耗
  • React Native是把JS代码编译成JS文件,这个文件会映射到virtual DOM这个虚拟的JS数据结构中,通过bridge传递到native,然后根据数据属性设置各个对应的真实native的View

简单的说了这么多,那我们就开始愉快Flutter之旅吧!

5. 开发系统与工具选择
工欲善其事必先利其器,开发系统与工具的选择也就尤其重要了,磨刀不误砍柴工!

  • Windows还是Mac?
操作系统 价格 功能
Windows 价格亲民 无法开发iOS
Mac 价格较高 能同事开发iOS和Android
  • Android Studio还是Visual Studio Code?
    VS虽是前端的开发利器,但并不能调试Android项目,AS的话是google的亲儿子,所以在一些新特性的兼容上会比VS更快更好,包括一些调试也会更方便,所以我们选择AS作为我们的开发工具,当然官方推荐也是AS

6.开发环境的搭建
Flutter中文网已经介绍得很详细了,这里就不多做赘述。传送门

下一文章:Flutter系列(二)《如何使用Flutter插件》

你可能感兴趣的:(Flutter系列(一)《开发工具准备与开发环境搭建》)