Flutter 中文站是 Flutter 官网的一个中文镜像,是目前最全的 Flutter 官方文档的中文翻译,目标是致力于打造 Flutter 的中文开发社区。
对于不抵触英文文档的朋友,还是建议阅读英文文档,毕竟中文站只是一些英文文档的翻译,对于最新的信息,是有一定滞后的。不过 Flutter 中文站的发布,降低了我们学习 Flutter 的成本,有兴趣的可以持续关注。
现在新技术层出不穷,如果每次出新的技术,我们都深入的研究的话,很容易分散精力。新的技术可能很久之后我们才会在工作中用得上,当学的新技术无法学以致用,很容易被我们遗忘,到最后真的需要使用的时候,又要从头来过(虽然上手会更快)。
我觉得身为技术人,针对新技术应该是持拥抱态度的,入了这一行你就应该知道这是一个活到老学到老的行业,所以面对新技术,不要抵触,拥抱变化就好了。
Flutter 明显是一种全新的技术,而对于这个新技术在发布之初,花一个月的时间学习它,成本确实过高。但是周末花一天时间体验一下它的开发流程,了解一下它的优缺点、能干什么或者不能干什么。这个时间,并不是我们不能接受的。
如果有时间,其实通读一遍 Flutter 的文档,是最全面的一次对 Flutter 的了解过程。但是如果我们只有 8 小时的时间,我希望能关注一些最值得关注的点。接下来,我们来看看,如何用 8 小时的时间,快速体验 Flutter。
1. Flutter 的技术概览
在这一步骤,你尽量通过一些文档的来了解 Flutter,知道它是基于什么来实现的、能做什么、技术边界在哪里。
2. 搭建开发环境
我们是在学习编程,学习编程最重要也是最快捷有效的方式,就是自己上手实验一番,读代码千遍,不如实际 Run 一下。
这一步一定离不开开发环境的搭建,搭建好环境之后,不如根据文档新建一个 Hello World 项目。
3. Flutter for Android
到这一步,我相信你应该有一个最简单的 Flutter 可运行的项目。Flutter 虽然是面向所有开发者的开发技术,但是 Google 尤为重视 Android 和 Web 开发的首次接触体验。
如果你正好有 Android 或者 Web 开发经验,Flutter 文档中,还有专门针对这些开发的一些概念类比。例如:Flutter 和 Android 中的 View、Intent 在 Flutter 中等价于什么?这些概念的类比,可以让你更快的在现有技术结构的基础之上,理解和掌握 Flutter。
4. Flutter 使用 Packages
Android 中,存在大量第三方库,这些库充斥了我们日常的生产项目中,在 Flutter 的开发过程中,也并不是一个人在战斗。Flutter 支持使用由其他开发者贡献给 Flutter 和 Dart 生态系统的共享软件包。例如:网络请求(http)、导航/路由(fluro)。
了解第三方包的开发和使用,有利于我们更好的理解 Flutter 的生态。
5. 与特定平台交互
Flutter 在发布之初就是想要有原生的体验,而为了在多个平台上正常使用和发布,总有一些我们功能我们需要和原生进行交互,例如在 Android 上表现为用 Dart 调用 Java/Kotlin 以及反向操作。
在国内的环境下,我们会用大量的第三方服务,例如统计服务?这些很难要求服务商为我们开发出一款 Dart 的版本,所以如果能够直接和 Java 通信,其实我们只需要自己包一层实现就好了,这也是我比较看重的一点。
6. FAQ
到这里其实已经算是基本了解和体验过 Flutter 了,接下来看看 Flutter 的 FAQ 换换脑子。
FAQ 会包含大量你现在可能会遇到的,其他的人曾经碰到过的疑问的答案,通过阅读 FAQ,能让我们更了解 Flutter。
在某个周末,花 8 个小时,快速了解和体验一下 Flutter,不值得吗?
在这 8 小时里,我们虽然放弃了很多细节,但是并不影响我们了解 Flutter 是什么。有了这个大体的印象之后,以后如果需要使用或者调研,都会快很多。
Flutter 学习资源
看到这里是不是对 Flutter 有了些许兴趣?
我这里整理了一些 Flutter 的学习资料,可以帮助你快速入门 Flutter。
1、官方文档
现阶段 Flutter 的官方文档也是比较全面的,并且都是最新的版本资料。而且阅读官方文档一定是学习新技术最稳妥的途径,
开始学习 Flutter : https://flutter.io/
如果你本身已经有 Android 的开发经验了,Flutter 也提供了针对 Android 开发人员的学习文档,它会以 Android 的角度来讲解如何使用 Flutter,所以如果你曾经学习过 Android,你将不必重新学习使用 Flutter 的所有内容。
针对 Android 开发的文档:https://flutter.io/flutter-for-android/
2、开源地址
Flutter 是完全开源的,所以你可以通过阅读源码的方式,来学习 Flutter。
Flutter Github 地址:https://github.com/flutter/flutter
3、awesome-flutter
这里感谢作者 Solido 的整理,他在 Github 上整理了关于 Flutter 的 awesome,这份文档里基本上都是英文的。不过更新的很积极,算是当前比较热门的一些技术合集了。
https://github.com/Solido/awesome-flutter
4、中文资料
Flutter 的中文资料本身就比较少,不过 CSDN 上有一个关于 Flutter 的专题,还是很全面的。
不过中文资料很多是基于之前 Alpha 版本的内容,所以可能会有些许不同,但是还是有一定的参考价值,建议最好还是直接阅读英文资料。
http://blog.csdn.net/column/details/13593.html
5、获得支持
本身 Flutter 就是开源的,如果你碰到任何问题,你可以通过以下方式与 Flutter 团队取得联系,当然你也可以通过这些方式持续关注 Flutter。
在 StackOverflow 上查找特定问题的解决方案。https://stackoverflow.com/tags/flutter
与 Flutter 的工程师以及用户进行实时聊天。https://gitter.im/flutter/flutter
阅读 Flutter 开发团队的来往邮件。https://groups.google.com/forum/#!forum/flutter-dev
去 Github 上提交 Issues。https://github.com/flutter/flutter/issues
关注 Flutter 团队的 Twitter,@flutterio。