Flutter 即学即用系列博客总结篇
前言
迟到的总结篇,其实大家看我之前发的系列博客最后一篇,发文时间是 3 月 29 日。距离现在快两个月了。
主要是因为有很多事情在忙,所以这篇就耽搁了。
今天终于可以跟大家会面了。
系列博客背景
Flutter 正式版于 2018 年 12 月 5 日正式发布。
而我所在的团队刚好想在项目新功能里面尝试 Flutter 的引入,利用 Flutter 的跨平台特性希望可以提高开发效率,因此本人作为 Android 端开发很荣幸的投入到 Flutter 学习和使用上面,并且于 2019 年 2 月 12 日的新版本发布中用到了 Flutter 开发的页面。
这边作为一名没有接触过 Flutter 的 Android 开发者记录一下 Flutter 的使用过程,帮助广大开发者揭开 Flutter 的神秘面纱,让你通过这个系列博客就能快速上手 Flutter。
Flutter 的引入有两种:
- 对旧有项目进行完全改造,变成纯 Flutter 项目。
- 以 Module 的形式引入。Android 项目和 Flutter 共存。
这边综合考虑,还是以第二种形式,即 Module 的形式引入 Flutter。
这样的考虑第一个是减少 Flutter 新技术的风险,第二个也是基于人力考虑。
基于此,进行 Flutter 开发时也遇到了一些坑,因此这边记录一下,希望各位刚刚接触 Flutter 的新手可以避开这些坑。而且通过 Flutter 即学即用系列博客,能够在现有项目下「毫无难度」的引入 Flutter。
本系列博客从 0 到 1 进行 Flutter 嵌入现有项目的讲解,通过本系列博客的学习,就算「照葫芦画瓢」也可以应对实际项目开发。
因此各位没有接触 Flutter 的开发,不管你们公司后续是否打算引入该技术。
你都可以了解一下,这样当你们公司需要用到这一块的时候,你可以脱颖而出。
毕竟,
机会是留给有准备的人
Flutter 系列博客
以下是 Flutter 系列博客,目前算是完结了。
Flutter 即学即用系列博客——01 环境搭建
Flutter 即学即用系列博客——02 一个纯 Flutter Demo 说明
Flutter 即学即用系列博客——03 在旧有项目引入 Flutter
Flutter 即学即用系列博客——04 Flutter UI 初窥
Flutter 即学即用系列博客——05 StatelessWidget vs StatefulWidget
Flutter 即学即用系列博客——06 超实用 Widget 集锦
Flutter 即学即用系列博客——07 RenderFlex overflowed 引发的思考
Flutter 即学即用系列博客——08 MethodChannel 实现 Flutter 与原生通信
Flutter 即学即用系列博客——09 EventChannel 实现原生与 Flutter 通信(一)
Flutter 即学即用系列博客——09 MethodChannel 实现原生与 Flutter 通信(二)
Flutter 即学即用系列博客——10 混淆
可能小伙伴会说,ListView 以及 http 还有其他很多知识点都没有讲。
这些之所以没有归结到系列博客,是因为我觉得你学习了系列博客之后,这些对你来说都是小菜一碟。
相信你已经具备了自学和研究的能力,所以这边不会把这些归结到系列博客。
不过小编后面还是会继续研究 Flutter,不过会归结到 Flutter & dart 系列。
正如我在知乎的两个专栏一样。
后续安排
之前在写系列博客的时候,在博客园收到了一名图书编辑的邀请,希望我写一本 Flutter 相关的书。
由于当时还在写 Flutter 系列博客,因此暂时还没应允。
后面也陆续收到其他图书编辑和公众号粉丝邀请写书。
不过自己想研究更多点 Flutter 相关的知识,因此是否会开始写书安排不好说。
还有一个小伙伴邀请参与翻译工作,这个会结合自己的时间,目前参与了一点翻译。
后续自己还会多阅读一些 Flutter 相关文章和项目。也会多看看官网文档。
有发现不错的知识点也会继续输出。
为了方便小伙伴交流,这边建了一个微信群,微信群超过 100 人之后就不能加入,不过小伙伴可以加入免费知识星球。知识星球初期限制是 50 人。超过要等通过试运营才能无限加入。如果真的超过限制了,后面开放限制这边会在公众号通知的。
不管是建微信群还是知识星球,都是提供一个学习 Flutter 的氛围给大家,希望大家不要太依赖。
遇到问题还是要优先自己解决,这样才能更快成长,能力提升才会更明显。
很多坑,没有前人踩过,你就做踩坑并解决坑的第一人。
有人帮助解决问题要感谢,如果没有解决也不要抱怨。
因为别人都要上班,都有自己的事情要忙,可能没有很多时间来解答你的问题。
微信群如下:
限时免费知识星球如下:
链接方式加入:
我正在「Flutter(限免)」和朋友们讨论有趣的话题,你一起来吧?
https://t.zsxq.com/MVrJiAY
扫码方式加入:
下面的内容涉及到广告内容,反感的可以不用往下看了。
下面的内容涉及到广告内容,反感的可以不用往下看了。
下面的内容涉及到广告内容,反感的可以不用往下看了。
好的,到这里你还往下看,说明你做好准备了,那就继续吧。
这边另外建了一个付费知识星球。
先说为什么设置 50 元以及为什么设置一年。
设置 50 元是因为知识星球最低只能设置 50 元。后续是否涨价另说。
设置一年而不是永久是因为我希望每个来知识星球学习的小伙伴能够在一年之内学习到你需要学习的方法论。
正如 Flutter 系列博客一样,教会了你基本的方法,以后你用这套方法可以自学其他的内容。
因此我希望你来到我的知识星球,一年之后就可以毕业。
当然如果你想支持我,想每一期都续费,也是可以的。
另外设置一年是为了给你一个 deadline。
你可以设想一下,假设现在有这样一个需求,给你的实现时间是永久。那么你什么时候会去实现?我估计应该是永远不会去实现。而如果现在产品跟你说这个需求这周要完成,那么你是不是会让自己动起来,在这周内交付该需求。
所以说,设置一年也是让你知道你要吸收我知识星球的方法论也是在这一年。
这样你就不会有诸如“反正我现在不看,晚点也可以看”之类的想法。
你就会珍惜这一年的时间,抓紧吸收,化为己用。
当然你说我很忙,加入之后没有时间吸收。那么你再续期一次是可以的。
你这次可以等到你时间充裕来吸收。
但是如果你说你连续两次都没有时间,那么我建议你先不要续费了,先抽时间看看时间管理相关文章。
分析为什么你没有时间,别人有。
时间,其实挤一挤就有的。
而且你没看完的话,建议你看完星球里面的内容再续费。
因为我们这个是从你加入后一年,所以先吸收完再来接收新知识。
好了,说完费用和时长,接下来说说你加入会有哪些好处。
1.学习氛围。
氛围很重要。
举几个例子:
1)为什么大学的时候很多人习惯去图书馆学习?
2)为什么现在看书很多人喜欢去图书馆看?
3)现在基本每人都有电脑,但是很多人玩游戏还是喜欢去网吧?
所以说如果进来星球的都是自律喜欢学习的小伙伴,大家每天不是划水吹水,而是分享一些自己的经验。包括但不限于技术、面试经历。这样大家或者说整个圈子的小伙伴都是充满正能量的。
2.资源。
以前我找工作的时候完全不知道竟然还可以内推。现在我进了公司,想内推,又找不到人。
所以很多时候会存在很多信息不对称的情况。
所以通过知识星球,将资源整合在一起。
有内推资源的小伙伴可以在星球里发表招聘信息,而需要求职的小伙伴也可以发布求职信息。
3.提问
星球有提问功能,因此大家可以给我提问题。
如果我知道,我会直接回答。如果我不清楚的,也会给你提供思路。最后如果我不会的,也会发到星球让小伙伴一起看看。
当然你也可以直接将问题发到星球。一些不好让别人知道的可以匿名提问。
当然你提问我不一定会回答。
不回答可能有几个,一个是问题太简单,善用搜索引擎就可以解决的。一个可能是没看到。
最后提问建议自己思考之后没有答案再提问。
4.一些独家思考
正如我公众号有些独家栏目没有同步到技术论坛一样。知识星球也有一些知识不会发到微信公众号。
说完了好处,接下来说说哪些人不适合加入:
- 觉得进来之后短时间可以爆发的。
这种事情是厚积薄发的,需要拉长时间线,而且每个人理解都不一样。因此如果你想进来就立刻有质的飞跃。那还是别进来,省的后面一直吐槽。 - 一直提问的。大事小事都提问的。50 元一年的提问服务,你告诉我哪个有,我也去购买下。这边希望教会你的是一些方法论。所以如果你有十万个为什么,而且遇到任何 bug 不假思索都要来提问的,那么你也不适合加入。
- 可能因为一两篇文章加入,然后又后悔的。建议你三思而行。我参加过知识星球,基本上你大部分时间会觉得知识星球很安静,或者你发现没有太多变化。可能一开始比较新鲜,后面觉得也就那样。这是常态,你要适应。
我希望加入的小伙伴如果觉得适合你,待个一年,充分吸收完精华就可以毕业了。
如果觉得不合适,那就有空看看之前发过的文章和其他小伙伴的分享,等到一年之后也不要续费或者推荐其他小伙伴进来了。
链接加入:
我正在「小煜爱折腾」和朋友们讨论有趣的话题,你一起来吧?
https://t.zsxq.com/MzB6qVb
扫码加入:
Flutter 即学即用系列博客总结篇的更多相关文章
- Flutter 即学即用系列博客——05 StatelessWidget vs StatefulWidget
前言 上一篇我们对 Flutter UI 有了一个基本的了解. 这一篇我们通过自定义 Widget 来了解下如何写一个 Widget? 然而 Widget 有两个,StatelessWidget 和 ...
- Flutter 即学即用系列博客——04 Flutter UI 初窥
前面三篇可以算是一个小小的里程碑. 主要是介绍了 Flutter 环境的搭建.如何创建 Flutter 项目以及如何在旧有 Android 项目引入 Flutter. 这一篇我们来学习下 Flutte ...
- Flutter 即学即用系列博客——09 MethodChannel 实现原生与 Flutter 通信(二)
前言 上一篇我们讲解了如何通过 EventChannel 实现 Android -> Flutter 的通信. 并且也看到了 Flutter 内部 EventChannel 源码也是对 Meth ...
- Flutter 即学即用系列博客——09 EventChannel 实现原生与 Flutter 通信(一)
前言 紧接着上一篇,这一篇我们讲一下原生怎么给 Flutter 发信号,即原生-> Flutter 还是通过 Flutter 官网的 Example 来讲解. 案例 接着上一次,这一次我们让原生 ...
- Flutter 即学即用系列博客——08 MethodChannel 实现 Flutter 与原生通信
背景 前面我们讲了很多 Flutter 相关的知识点,但是我们并没有介绍怎样实现 Flutter 与原生的通信. 比如我在 Flutter UI 上面点击了一个按钮,我希望原生做一些处理,那么原生怎么 ...
- Flutter 即学即用系列博客——06 超实用 Widget 集锦
本篇文章我们来讲讲一些比较常用的 Widget. 大家验证的时候使用下面的代码替换 main.dart 代码,然后在 //TODO 语句返回下面常用 Widget 示例的代码. import 'pac ...
- Flutter 即学即用系列博客——03 在旧有项目引入 Flutter
前言 其实如果打算在实际项目中引入 Flutter,完全将旧有项目改造成纯 Flutter 项目的可能性比较小,更多的是在旧有项目引入 Flutter. 因此本篇我们就说一说如何在旧有项目引入 Flu ...
- Flutter 即学即用系列博客——10 混淆
前言 之前的博客我们都是在 debug 的模式下进行开发的. 实际发布到市场或者给到用户的都是 release 包. 而对于 Android 来说,release 包一个重要的步骤就是混淆. Andr ...
- Flutter 即学即用系列博客——02 一个纯 Flutter Demo 说明
前言 上一篇文章我们搭建好了 Flutter 的开发环境. Flutter 即学即用--01 环境搭建 这一篇我们通过 Flutter 的一个 Demo 来了解下 Flutter. 开发系统:MAC ...
随机推荐
- webpack入门指南(基于webpack v4.41.2)
2019年12月5日初稿,目前webpack已经更新到v4.41.2,本文正是基于该版本,在windows8.1操作系统下进行的demo编译,适用于想入门webpack的前端开发人员. webpack ...
- oracle开启关闭日志归档
oracle归档日志开启之后,会产生大量的日志,需要定时清理以及不重要的数据库可以不开启归档模式,下面介绍一下oracle归档开启.关闭以及日志的删除:一.oracle归档日志开启及关闭1.登录服务端 ...
- CF 17E Palisection 求相交回文串个数
In an English class Nick had nothing to do at all, and remembered about wonderful strings called pal ...
- 2018HDU多校训练一 A - Maximum Multiple
Given an integer nn, Chiaki would like to find three positive integers xx, yy and zzsuch that: n=x+y ...
- 第一节:Shiro HelloWorld 实现
1.新建maven工程,pom配置maven jar包 <dependency> <groupId>org.apache.shiro</groupId> <a ...
- 使用flatbuffers
问题 张三是个java程序员,他写产生数据的程序.李四是个python程序员,他要用python处理张三产生的数据.最直观常用的方法就是张三用java把产生的数据保存成csv或者xml文件,然后李四用 ...
- Bootstrap响应式栅格系统设计
为了方便起见,我们通过1200px宽的屏幕来讲解bootstrap中container.row.col的css属性值为何这样设置的原理 在1200px屏幕中为何container的宽度设置为1170p ...
- JS系列:js节点
节点(node) 在html文档中出现的所有东西都是节点 元素节点(HTML标签) 文本节点(文字内容) 注释节点(注释内容) 文档节点(document) … 每一种类型的节点都会有一些属性区分自己 ...
- rails 5 功能新增及改变
1.ApplicationRecord 在Rails4中所有的模型都继承自ActiveRecord::Base,不过在Rails5中新引进了一个叫ApplicationRecord的类,存放在: ap ...
- 02 | Java内存模型:看Java如何解决可见性和有序性问题
什么是 Java 内存模型? 导致可见性的原因是缓存,导致有序性的原因是编译优化,那解决可见性. 有序性最直接的办法就是禁用缓存和编译优化,但是这样问题虽然解决了,我们程序的性能可就堪忧了. 合理 ...