Hi,大家好,我是承香墨影!

距离 Google 在 2018 世界移动大会上发布 Flutter 的 Beta 版本,Flutter 是 Google 用以帮助开发者在 Android 和 iOS 两个平台,同时开发高质量原生应用的全新移动 UI 框架。

当时上线的官网资料,都是英文的。而经历了一个多月的整理、翻译、测试。现在 Flutter 中文站 正式上线了。

Flutter 中文站是 Flutter 官网的一个中文镜像,是目前最全的 Flutter 官方文档的中文翻译,目标是致力于打造 Flutter 的中文开发社区。

https://flutterchina.club/

对于不抵触英文文档的朋友,还是建议阅读英文文档,毕竟中文站只是一些英文文档的翻译,对于最新的信息,是有一定滞后的。不过 Flutter 中文站的发布,降低了我们学习 Flutter 的成本,有兴趣的可以持续关注。


现在新技术层出不穷,如果每次出新的技术,我们都深入的研究的话,很容易分散精力。新的技术可能很久之后我们才会在工作中用得上,当学的新技术无法学以致用,很容易被我们遗忘,到最后真的需要使用的时候,又要从头来过(虽然上手会更快)。

我觉得身为技术人,针对新技术应该是持拥抱态度的,入了这一行你就应该知道这是一个活到老学到老的行业,所以面对新技术,不要抵触,拥抱变化就好了。

Flutter 明显是一种全新的技术,而对于这个新技术在发布之初,花一个月的时间学习它,成本确实过高。但是周末花一天时间体验一下它的开发流程,了解一下它的优缺点、能干什么或者不能干什么。这个时间,并不是我们不能接受的。

如果有时间,其实通读一遍 Flutter 的文档,是最全面的一次对 Flutter 的了解过程。但是如果我们只有 8 小时的时间,我希望能关注一些最值得关注的点。接下来,我们来看看,如何用 8 小时的时间,快速体验 Flutter。

1. Flutter 的技术概览(15分钟)

在这一步骤,你尽量通过一些文档的来了解 Flutter,知道它是基于什么来实现的、能做什么、技术边界在哪里。

https://flutterchina.club/technical-overview/

2. 搭建开发环境(1小时)

我们是在学习编程,学习编程最重要也是最快捷有效的方式,就是自己上手实验一番,读代码千遍,不如实际 Run 一下

这一步一定离不开开发环境的搭建,搭建好环境之后,不如根据文档新建一个 Hello World 项目。

https://flutterchina.club/get-started/install/

3. Flutter for Android(2小时)

到这一步,我相信你应该有一个最简单的 Flutter 可运行的项目。Flutter 虽然是面向所有开发者的开发技术,但是 Google 尤为重视 Android 和 Web 开发的首次接触体验。

如果你正好有 Android 或者 Web 开发经验,Flutter 文档中,还有专门针对这些开发的一些概念类比。例如:Flutter 和 Android 中的 View、Intent 在 Flutter 中等价于什么?这些概念的类比,可以让你更快的在现有技术结构的基础之上,理解和掌握 Flutter。

https://flutterchina.club/flutter-for-android/

4. Flutter 使用 Packages(2小时)

Android 中,存在大量第三方库,这些库充斥了我们日常的生产项目中,在 Flutter 的开发过程中,也并不是一个人在战斗。Flutter 支持使用由其他开发者贡献给 Flutter 和 Dart 生态系统的共享软件包。例如:网络请求(http)、导航/路由(fluro)。

了解第三方包的开发和使用,有利于我们更好的理解 Flutter 的生态。

https://flutterchina.club/using-packages/

5. 与特定平台交互(2小时)

Flutter 在发布之初就是想要有原生的体验,而为了在多个平台上正常使用和发布,总有一些我们功能我们需要和原生进行交互,例如在 Android 上表现为用 Dart 调用 Java/Kotlin 以及反向操作。

在国内的环境下,我们会用大量的第三方服务,例如统计服务?这些很难要求服务商为我们开发出一款 Dart 的版本,所以如果能够直接和 Java 通信,其实我们只需要自己包一层实现就好了,这也是我比较看重的一点。

https://flutterchina.club/platform-channels/

6. FAQ(半小时)

到这里其实已经算是基本了解和体验过 Flutter 了,接下来看看 Flutter 的 FAQ 换换脑子。

FAQ 会包含大量你现在可能会遇到的,其他的人曾经碰到过的疑问的答案,通过阅读 FAQ,能让我们更了解 Flutter。

https://flutterchina.club/faq/


在某个周末,花 8 个小时,快速了解和体验一下 Flutter,不值得吗?

在这 8 小时里,我们虽然放弃了很多细节,但是并不影响我们了解 Flutter 是什么。有了这个大体的印象之后,以后如果需要使用或者调研,都会快很多。

这个过程中,除了开阔了我们的技术栈,其实我们更多的是锻炼我们了解新技术的心态,你今天愿意花 8 个小时了解 Flutter,下次再遇上 谁谁谁 发布的 Xxx,如果你看好它,你也愿意再花上 8 小时了解它。

你觉得呢?

今天在公众号后台回复成长『成长』,将会得到我整理的一些学习资料,也能回复『加群』,一起学习进步。

推荐阅读:

我花了 8 小时,"掌握"了一下 Flutter | Flutter 中文站上线的更多相关文章

  1. 花了2小时写bug

    程序员的工作,写bug,修bug,改bug 写了2小时逻辑关系,没写明白 比昨天多了一个返回上一层的功能 也很简单,清除下数组内容即可 emm..明天继续深究吧 dic = { "植物&qu ...

  2. 这个菜鸟花几个小时写的 DEMO 被码云推荐上首页 ?

    写在最前     没有接触过 AntV 的诸位看客可通过这篇不成文的文章稍作了解.最近 病毒猖獗,遂抽空做了一个相关小 DEMO.数据可视化方面的使用的是 AntV F2,前端框架使用 Vue 快速成 ...

  3. python 正则匹配中文(unicode)(转)

    由于 需求原因,需要匹配 提取中文,大量google下,并没有我需要的.花了一个小时大概测试,此utf8中文通过,特留文.    参考: http://hi.baidu.com/nivrrex/blo ...

  4. 转 对菜鸟开发者的叮咛:花一万个小时练习Coding,不要浪费一万小时无谓地Debugging

    原文见http://blog.jobbole.com/74825/ Coding 之于科技的重要性不言可喻,也不再是软体工程师的专利,医师.律师.会计师.护理师.金融从业人员,甚至是听起来摸不着边的政 ...

  5. Uber选拔专车司机:五年以上驾驶经验 两小时视频培训

    摘要:说起当时下流行打车软件Uber的司机,还得从春节前在上海一次打车说起.那几天,记者在上海某商场逛到打烊时间,大包小包拎着袋子根本腾不出手拦出租车,而商场门口的出租车临时停靠点更是挤满“血拼”而归 ...

  6. 如何在一小时内更新100篇文章?-Evernote Sync插件介绍

    上一篇"手把手教你制作微信小程序,开源.免费.快速搞定",已经教会你如何快速制作一个小程序,但作为资讯类小程序,内容不可少,并且还需要及时更新. 但是,如果让你复制粘贴,可能还需要 ...

  7. 【半小时大话.net依赖注入】(一)理论基础+实战控制台程序实现AutoFac注入

    系列目录 第一章|理论基础+实战控制台程序实现AutoFac注入 第二章|AutoFac的常见使用套路 第三章|实战Asp.Net Framework Web程序实现AutoFac注入 第四章|实战A ...

  8. 实验十四 团队项目评审&课程学习总结(葛进花201671010413)

    实验十四 团队项目评审&课程学习总结 项目 内容 这个作业属于哪个课程 软件工程 这个作业的要求在哪里 实验十四 作业学习目标 1)掌握软件编码实现的工程要求 2) 反思总结课程学习内容 任务 ...

  9. 从Script到Code Blocks、Code Behind到MVC、MVP、MVVM

    刚过去的周五(3-14)例行地主持了技术会议,主题正好是<UI层的设计模式——从Script.Code Behind到MVC.MVP.MVVM>,是前一天晚上才定的,中午花了半小时准备了下 ...

随机推荐

  1. Linux下mysql的常用操作

    Linux下mysql的常用操作: 显示数据库 show databases; 选择数据库 use 数据库名; 显示数据库中的表 show tables; 显示数据表的结构 describe 表名; ...

  2. 基于Multiple treatment的营销评估算法

    营销是发现或挖掘准消费者和众多商家需求,通过对自身商品和服务的优化和定制,进而推广.传播和销售产品,实现最大化利益的过程.例如,银行可通过免息卡或降价对处在分期意愿边缘的用户进行营销,促使其分期进而提 ...

  3. alpha-咸鱼冲刺day5-紫仪

    总汇链接 一,合照 emmmmm.自然还是没有的. 二,项目燃尽图 三,项目进展 !!!QAQ可以做到跟数据库交互了!!!!先来撒花花!(然后继续甲板) 四,问题困难   日常啥都不会,百度真心玩一年 ...

  4. C语言博客作业—数组

    一.PTA实验作业 题目1:简化的插入排序 1. 本题PTA提交列表 2. 设计思路 (1)定义n,number,i,j,temp; (2)输入n; (3)定义数组a[n+1]; //把所有的数都放入 ...

  5. 每日冲刺报告——Day4(Java-Team)

    第四天报告(11.5  周日) 团队:Java-Team 成员: 章辉宇(284) 吴政楠(286) 陈阳(PM:288) 韩华颂(142) 胡志权(143) github地址:https://git ...

  6. aws中的路由表

    参考官方文档: 由表中包含一系列被称为路由的规则,可用于判断网络流量的导向目的地. 在您的 VPC 中的每个子网必须与一个路由表关联:路由表控制子网的路由.一个子网一次只能与一个路由表关联,但您可以将 ...

  7. WPF自学入门(十)WPF MVVM简单介绍

     前面文章中,我们已经知道,WPF技术的主要特点是数据驱动UI,所以在使用WPF技术开发的过程中是以数据为核心的,WPF提供了数据绑定机制,当数据发生变化时,WPF会自动发出通知去更新UI. 我们不管 ...

  8. EasyUI中Tabs添加远程数据的方法。

    tabs加载远程数据: $(function () { $("#btnquery").click(function () { if (!$("#tcontent" ...

  9. [JCIP笔记] (三)如何设计一个线程安全的对象

    在当我们谈论线程安全时,我们在谈论什么中,我们讨论了怎样通过Java的synchronize机制去避免几个线程同时访问一个变量时发生问题.忧国忧民的Brian Goetz大神在多年的开发过程中,也悟到 ...

  10. python 字符串和字典

    一.字符串操作 name = "my name is \t {name} and i am {year} years old" 1.首字母大写 print(name.capital ...