theme: cyanosis

「回顾2022,展望2023,我正在参与2022年终总结征文大赛活动」


一、最美如初见

现在回首编程生涯,从 2017 年误触编程之门,带着兴趣和追求,一路打怪升级。近六年间,酸甜苦辣,吾成长了许多,但时间并未磨平意志,内心仍是曾经那个中二少年。吾还是要以王的姿态去审视这个世界,去分析、去理解、去掌控这小小屏幕背后的运转规律。

2017->2018 标签: 海的彼岸,有我未曾见证的风采
2018->2019 标签: 海的彼岸,吾在征途
2019->2010 标签: 向那些曾经无法跨越的鸿沟敬上——君临
2020->2021 标签: 万花过尽知无物
2021->2022 标签: 万花过尽知无物
2022->2023 标签: 万花过尽知无物


相比于大多数人来说,我是幸运的。我有足够的时间,也用了足够的时间去深耕一个领域。近三年间,无论是工作还是业余时光, Flutter 都是陪伴我最久的,我也从中汲取了丰富的知识和能力。如果说 Android 让我萌发了一颗名为 编程之心 的种子,并生根发芽。那 Flutter 就是让这株幼苗茁壮成长的土地,编程思想和逻辑控制力在此不断增强,我可以实现越来越多曾经难以完成的东西。

技术成长最快的方式是独立解决问题,并在源码中寻求乐趣。在那一道道源码迷宫中寻找蛛丝马迹;在那一次次调试中柳暗花明;在那一个个突破瓶颈的瞬间,我是成长的,也是欣慰的。在那一刻,我当之无愧是自己的王,我捍卫着王的视野,秉持着王的尊严,带着王的心愿遥望彼岸。


二、心态的转变

成为自己的王,而不是王于他人。(不要用自己的原则约束别人)

自己的王 律己,他人的王 律人。我向来是不喜欢那些 不动脑子,不懂就问 的人,以前不喜欢,现在不喜欢,未来也不会喜欢。但作为一群之主,总会看到:基础到不能再基础的语法问题、出错截图求拯救、怎么做性能优化、我该怎么实现 XXX 需求、A 和 B 哪个好,该用哪个。撂出一句话,回答看大家。

我称之为: 一句话让群主郁闷一小时的小技巧。询问大而空的问题、没有具体场景的错误、二选一问题都是没有意义的,别人不可能从一两句话中知道你的理解程度,一般人提问时并不会发表自己对问题的见解,而且只是期待答案。

我的原则是:没有什么 bug 是调试解决不了的。对于那些只是提问,未表现出对问题有所思考的人,以前我一般会建议他多动动脑子,自己查一查。有些自尊心很强的人觉得是在侮辱他,不回答就算了,干嘛摆出一副高高在上的样子。不想回答就不回答,不要对人家指指点点,这是在语言暴力。有的人一气退群,我也郁闷半天。

难道我建群的意义就是为这些问题怪答题吗?为什么有些人不能听取一丝别人的意见,觉得不想回答的就是敌人?为什么自尊心如此强的人不去自己调试研究问题?为什么我要浪费时间在这种毫无意义的心情上?为什么我会寄期望于一个 不懂就问 的人,凭我一句话就能改变他解决问题的态度,学会独立思考?为什么我必须要求所有人都像我一样喜欢思考和探索?为什么编程对于别人来说就是工作而已,我却要让别人去理解、分析?别人的问题,和我有什么关系?

最后我悟了,编程对于我来说是兴趣,对别人来说是工作。立场的不同,会导致看法的不同,人家就想知道答案,把代码跑起来、把功能实现而已,过程不重要,最好是你能把过程给实现,人家直接拿来用。你让人家研究源码?什么?研究源码!拜托,有没有搞错,有能力研究源码的人会问这问题?!!不由有些心酸...

立场不同,说再多的话都是徒劳,我已经不想改变任何人对问题求解的态度。于是我的心态转变了,大家都是迫于生活,诸多不易,没必要再添油加醋。我不是什么神,没有资格和义务解放什么黎民苍生的思想。而我可以做的,是无视一些无所谓的声音,避免无意义的争论,专注做自己的事。可以通过文字、文章分享经验,去让别人 主动 吸收、思考,而非被动指着别人说应该怎么怎么样。


三、达成成就:七剑合璧

2022 年对我来说最重要的成就是完成了 Flutter 框架层的探索,七本小册也终于合璧。从语法基础到布局、绘制、手势、动画、渲染机制,展示了一个全方位的 Flutter 世界。完成了一个相对完整的 Flutter 框架基础体系的介绍,是从入门必备手册。基本上每本小册都有读第二遍或第三遍的价值:

| 小册名称 | 发布时间 | 代码仓库 | 售价(RMB) | | ------------------------------------------------------------ | -------------- | ------------------------------------------------- | --------- | | 《Flutter 绘制指南 - 妙笔生花》 | 2020年11月11日 | idraw | 3.28 | | 《Flutter 手势探索 - 执掌天下》 | 2021年05月13日 | itouch | 3.5 | | 《Flutter 动画探索 - 流光幻影》 | 2021年07月09日 | ianim | 3.5 | | 《Flutter 滑动探索 - 珠联璧合》 | 2022年02月10日 | iscroll | 3.5 | | 《Flutter 布局探索 - 薪火相传 》 | 2022年03月30日 | ilayout | 3.5 | | 《Flutter 渲染机制 - 聚沙成塔 》 | 2022年04月27日 | irender | 3.5 | | 《Flutter 语言基础 - 梦始之地 》 | 2022年09月14日 | idream | 3.5 |

目前小册的总销量已经破万了,也受到了普遍的好评,看到自己的产物被别人认可还是很欣慰的。可以看出这七本的售价是非常低的,但积少成多,我用稿费配了一个台式电脑,来更好地码字,这也算一种正反馈循环。另外,有很多人教我该如何靠知识赚钱,比如提高价格,或制作视频课去卖。

我现在还没有到靠贩卖知识来 养家糊口 的地步,也不用担心我会穷到饿死。这七本算是为爱发电,一方面给自己一个深入探索源码的机会;二方面将得到的知识通过文字传达给更多人,减少他们的理解门槛;三方面降低购买的门槛,也能让更多人有机会接触 Flutter 技术的熏陶;四方面为了回馈掘金社区,丰富小册生态。

为己、为人、为技术、为社区,四者在过程中都是满意的,是一个 正反馈循环 ,何乐不为。相当于每个人在阅读小册时,请我喝了瓶可乐,我也没有太大的心理负担,文笔写得也可以随意一些,读者也会给予更多的包容。比如一些错别字、小错误等,不会有人破口大骂:老子花钱买的,就给我看这?


四、其他系列作品

除了小册之外,在掘金签约专栏中,还有一个小系列 《 Flutter 知识进阶 - 异步编程》 从浅入深,全面介绍了异步相关的知识,是进阶知识中非常重要的一环。算是掘金资助的文章,读者可以 免费观看 。每篇都是四五千字的体量,质量算是上乘的:

  • 【Flutter 异步编程 - 壹】 | 单线程下的异步模型
  • 【Flutter 异步编程 - 贰】 | 详细分析 Future 类的使用
  • 【Flutter 异步编程 - 叁】 | 初步认识 Stream 类的使用
  • 【Flutter 异步编程 - 肆】 | 异步任务状态与组件构建
  • 【Flutter 异步编程 -伍】 | 深入剖析 Future 类源码实现
  • 【Flutter 异步编程 -陆】 | 探索 Dart 消息处理与微任务循环
  • 【Flutter 异步编程 - 柒】 | 深入剖析 Stream 机制源码实现
  • 【Flutter 异步编程 - 捌】 | 计算耗时? Isolate 来帮忙
  • 【Flutter 异步编程 - 玖】 | 学习 Stream 的元素转换操作
  • 【Flutter 异步编程 - 拾】 | 探索 Stream 的转换原理与拓展

另外,本年度在 6 月 份的掘金日更文章活动中,为了一个电饭锅,研究了一些 Flutter 中的 flame 游戏。更好那时候也是 I/O 2022 后, 官方用 Flutter 写的弹球小游戏【pinball】,让我产生了一些兴趣:

因此出炉了 【 Flutter&Flame 游戏专栏】,写了 29 篇文章作为 第一季 的游戏初探索。因为是日更,每篇文章篇幅不是太长,难度不大,写着玩着也非常有趣。但感觉热度不高,本身工作离游戏十万八千里,暂时没有太深入探索游戏方面的打算,以后看情况是不是要出第二季。

  • 【Flutter&Flame 游戏 - 壹】开启新世界的大门
  • 【Flutter&Flame 游戏 - 贰】操纵杆与角色移动
  • 【Flutter&Flame 游戏 - 叁】键盘事件与手势操作
  • 【Flutter&Flame 游戏 - 肆】精灵图片加载方式
  • 【Flutter&Flame 游戏 - 伍】Canvas 参上 | 角色的血条
  • 【Flutter&Flame 游戏 - 陆】暴击 Dash | 文字构件的使用
  • 【Flutter&Flame 游戏 - 柒】人随指动 | 动画点触与移动
  • 【Flutter&Flame 游戏 - 捌】装弹完毕 | 角色武器发射
  • 【Flutter&Flame 游戏 - 玖】探索构件 | Component 是什么
  • 【Flutter&Flame 游戏 - 拾】探索构件 | Component 生命周期回调
  • 【Flutter&Flame 游戏 - 拾壹】探索构件 | Component 使用细节
  • 【Flutter&Flame 游戏 - 拾贰】探索构件 | 角色管理
  • 【Flutter&Flame 游戏 - 拾叁】碰撞检测 | CollisionCallbacks
  • 【Flutter&Flame 游戏 - 拾肆】碰撞检测 | 之前代码优化
  • 【Flutter&Flame 游戏 - 拾伍】粒子系统 | ParticleSystemComponent
  • 【Flutter&Flame 游戏 - 拾陆】粒子系统 | 粒子的种类
  • 【Flutter&Flame 游戏 - 拾柒】构件特效 | 了解 Effect 体系
  • 【Flutter&Flame 游戏 - 拾捌】构件特效 | ComponentEffect 一族
  • 【Flutter&Flame 游戏 - 拾玖】构件特效 | 了解 EffectController 体系
  • 【Flutter&Flame 游戏 - 贰拾】构件特效 | 其他 EffectControler
  • 【Flutter&Flame 游戏 - 贰壹】视差组件 | ParallaxComponent
  • 【Flutter&Flame 游戏 - 贰贰】菜单、字体和浮层
  • 【Flutter&Flame 游戏 - 贰叁】 资源管理与国际化
  • 【Flutter&Flame 游戏 - 贰肆】pinball 源码分析 - 项目结构介绍
  • 【Flutter&Flame 游戏 - 贰伍】pinball 源码分析 - 资源加载与 Loading
  • 【Flutter&Flame 游戏 - 贰陆】pinball 源码分析 - 游戏主菜单界面
  • 【Flutter&Flame 游戏 - 贰柒】pinball 源码分析 - 角色选择与玩法面板
  • 【Flutter&Flame 游戏 - 贰捌】pinball 源码分析 - 游戏主场景的构成
  • 【Flutter&Flame 游戏 - 贰玖】pinball 源码分析 - 视口与相机

另外,还有很多普通文章,比如绘制方面、组件介绍方面就不一一列举了。可以看出本年,我更倾向于写一些 成体系 的文章。可能有人看我一年输出的文章非常多,会担心我是不是没有时间享受生活,您可别瞎操心了。其实一年时间是很长的,合理利用时间,有灵感时思如泉涌,一气呵成,本身就是一件非常爽快的事。你看文章都觉得累,但我写文章非常享受,我并不是为了写而强迫写。晚上一边写些简单的文章,一边看动漫,也是件乐事。

了解我的,都知道我是个资深 阴阳师 玩家,偶尔会直播打打斗技 (虽然没人看)。由于现在的号几乎巅峰了,平时也就随便玩玩,不会占用太多时间。


五、开源项目: FlutterUnit 和 ComposeUnit 和 RegExpo

【FlutterUnit】 目前已经趋于完善了,目前主要是更新Flutter 版本是,确保项目的可运行。 2022 年 有两次重要更新:

第一次是 桌面端移动端 分支的合并,融为了一套代码: 【FlutterUnit 桌面分支合并,一套代码 - 五端通行】

| 桌面端 | 移动端 | | ------------------------------------------------------------ | ------------------------------------------------------------ | | | |


第二次大更新是为 移动端 制定了 标准风格。后期,打算也为 桌面端 也打造一个标准风格,现在桌面端是有些非主流。

| 主页 | 搜索 |组件详情| | --- | --- |--- | | | ||


悄无声息地 ComposeUnit

另外,可能很多人不知道,我已经 偷偷地 实现了 Compose 版 【ComposeUnit】 的基础功能。从零基础学习 Compose 到完成目前版本的 【ComposeUnit】,只花了不到一个星期的 业余 时间。想当年 Flutter 七天的初遇可是花了整整七天,有了 FlutterKotlin 的基础,其实 ComposeUnit 入门几乎是无缝切入。

| - | - |- | | --- | --- |--- | | | ||

由于只是尝鲜,并未打算深入研究 Compose ,所以点到为止,并未声张,选择悄悄开源。完成这个 【ComposeUnit】 已经可以算是入门了,未来是否继续,视情况而定:

| - | - |- | | --- | --- |--- | | | | |


孕育中的 RegExpo

RegExpo 是在 2022 年初的一个灵感,启初是为 状态管理 的分析而设计的。因为简单的小demo 很难看出 状态管理 的价值,复杂的项目牵涉过多,介绍起来比较麻烦介。RegExpo 作为一个小型项目,包含着很多数据状态间的依赖关系,很适合作为一个 过渡阶梯 。另外,它还兼具了正则表达式地高亮匹配功能,有一定的可玩性。

RegExpo 的实现过程,包括正则表达式的使用,将会在新小册中详细介绍。目前已经基本完稿,预计在年前可以上线,敬请期待。 该新项目支持桌面端移动端,以及暗亮模式的切换,效果如下:

| 桌面端 - 亮色|移动端 - 亮色 | | --- | --- | | | |

这个项目在未来也会开源,供大家学习和体验。到时候会正式发文说明,还望多多支持:

| 桌面端 - 亮色 |移动端 - 暗色 | | --- | --- | | | |


六、展望 2023 年

下面,来到最后环节,对 2023 年 的展望。首先 2023 年的标签仍是:

2023->2024 标签: 万花过尽知无物

这句取自 2017年11月1日,我所作的 《萧宁》 一诗的第三句:


对于明年也没有什么明确的计划,随遇而安吧。好好工作,好好生活,继续在编程之路上前行。现在也经常需要和音视频打交道,明年大概率会专注于音视频方面,并探索其在Flutter 中的应用。现在我对 Flutter 框架层的理解算是比较深入了,接下来也是时候关注一下 性能优化 方面的东西,主要就是这两个方面。


最后:疫情三年,没到什么地方旅游过,立个 flag:

如果 2023 年疫情结束,我要去北京看看长城 。

知无涯,行者之路莫言终 [- 编程之路2022 -]相关推荐

  1. 知无涯,行者之路莫言终 [- 编程之路2018 -]

    零.前言 2017年标签:"海的彼岸,有我未曾见证的风采" 2018年标签:"海的彼岸,吾在征途" 2019年标签:"向那些曾经无法跨越的鸿沟敬上-- ...

  2. 看完知乎轮子哥的编程之路,我只想说,收下我的膝盖...

    点击上方"Datawhale",选择"星标"公众号 第一时间获取价值内容 作者:vczh 来源:https://dwz.cn/sWwZoQEl vczh,本名陈 ...

  3. 1. 我的自学编程之路

    我是真正零基础开始学Python的,从一开始的一窍不通,到3个月后成功搭建了一个动态网站(没有用任何框架).相比于计算机大牛,我更加知道一个小白将会遇到什么坑,遇到哪些难点.我把我的学习过程写在下面, ...

  4. 【专业造轮子】 一位大神的编程之路,让我大吃一惊

    vczh,本名陈梓瀚,因知乎的个人信息介绍上写有 "专业造轮子",所以江湖人称 "轮子哥". vczh 大学时代就在微软实习,毕业后即加入微软.开始时是在微软上 ...

  5. 基于python的modbus协议编程_通往未来的网络可编程之路:Netconf协议与YANG Model

    近年来,随着全球云计算领域的不断发展与业务的不断增长,促使网络技术也不断发展,SDN技术应运而生,从最初的基于Openflow的转发与控制分离的核心思想,人们不断的去扩展SDN的外延,目前,人们可以达 ...

  6. 一个体育生的编程之路

    (一)打字与考盘算机等级 记得小学时,学校里有个老师会用电脑,当时觉得电脑是个很神奇的高科产品.后来咱们学校得到浪潮捐献的一台电脑,看见那个老师在用电脑玩扑克牌.这是我第一次见到电脑长啥样. 高中时有 ...

  7. 我的编程之路:「懒惰」是程序员最大的美德

    首先给大家介绍一下自己吧 大家好,我是 justjavac,一名全栈工程师,目前正在出版<代码之谜>.熟悉我的人可能知道我还有一个中文昵称「迷渡」,取「雾失楼台,月迷津渡」之意,一般用在豆 ...

  8. 43岁老程序员的编程之路,我是如何做到退休的?龙叔真的退休了吗?

    大家好,我是龙叔,今年43岁,做了18年的程序员,去年我还在公司任职CTO,今年就不上班退休在家里了,很多人可能会比较好奇,四十多岁退休是怎么做到的?退休之后我在干些什么? 很多粉丝都问过我这些问题, ...

  9. 行业律师的IT编程之路

    于国富是北京市盛峰律师事务所的主任律师,同时也是一位计算机编程爱好者.他将自己的专业与个人爱好很完美地结合在一起,开创了一条适合自己的成功之路.<程序员>杂志专访北京市盛峰律师事务所主任律 ...

最新文章

  1. 盘点路由协议之RIP协议及IGRP协议
  2. 第三天2017/03/30(上午:二级指针的(输入)内存模型:(共三种模型))
  3. 在家办公怎么弄?华为云DevCloud宝典一看就懂——迭代开发篇
  4. ik做尾巴摆动 maya_【周六幸福时刻】故事分享:小蝌蚪尾巴怎么没了
  5. python测网络连通性_网络工程师如何在ensp模拟器上玩python自动化配置交换机。...
  6. 计算机专业基础融合,【计算机专业论文】计算机专业产教融合转型发展模式探析(共2546字)...
  7. 微软开放技术发布开源 Jenkins 插件以将 Windows Azure Blob 服务用的开作存储库
  8. php开源Plogger用法
  9. TensorFlow基础笔记(6) 图像风格化实验
  10. 语言用符号打印出落叶的图案_普通语言学概要(第一章第二节,语言是符号系统)...
  11. 毕业设计——英文文献下载
  12. Matlab 读取欧空局*.N1卫星遥感图像
  13. 计算机软件过期黑屏怎么办,Adobe flashplayer过期怎么办
  14. 1个损坏的数据库情况
  15. 超级生产力的背后是强大的技术实力 央媒点赞小米“黑灯工厂”
  16. Code for city 黑客松大赛——万元大奖等你来拿
  17. 敏捷领导力系列介绍--全景领导力LCP的学习心得
  18. 为什么学python十大理由-python用于什么
  19. Easy Mock 的使用
  20. yolov7 姿态识别-人体骨架-实时检测

热门文章

  1. 【MySQL】数据库完整性和安全性
  2. 一些触动心灵的英文短句,句句有格调,每天都要读一遍!
  3. 轻松卸载nodejs和npm
  4. pod install/update 卡住
  5. 襄阳职业技术学院计算机专业宿舍,2021年襄阳职业技术学院新生宿舍条件和宿舍环境图片...
  6. 深入理解DBOW3算法(一)
  7. AdaBoost算法详细介绍
  8. 全球与中国2,2,2-三氯乙醇市场现状及未来发展趋势
  9. 2011年国外最受欢迎的15个Torrent网站
  10. ctr多少正常_亚马逊点击率多少算正常?如何提升亚马逊CTR