关于我使用开源框架的一些教训

前言不重要:几年前为了开发和猫聊APP,我找了两个同事一起做,我包后端 PHP 开发和产品和 UI,另外两个同事分别是andriod 和 ios 开发,由于没有什么钱和前途,过了没多久两个同事都没什么开发,可能登录界面都没有写完,只是单纯的给他们建立了 github 的仓库;找他们之前我就弄完产品和 UI 了,然后我就开始开始着手开发后端的接口,因为我一直都主要是php开发,也做了好几年了,但是早期那时候只是做一些简单的网页,会一点 html\css\jquery ,会一点 php 、mysql、memcache、mvc 框架开发,后面接触了APP开发,但是还是负责后端接口开发,用的也是 php\mysql\redis;因为和猫聊是一个聊天的 APP,所以要使用 websocket ,很早就知道 swoole 了,swoole 支持 websocket,但是没有使用过,swoole 和普通的 php mvc 框架还是 挺大不一样的,整个运行模式都不一样,文档看了很久也看不太懂,因为自己基础不好,平时做的也是简单的业务,接触一样新的计数,看文档总是头晕脑胀的,后面就找了一个 Easyswoole 框架,开始开发,这个框架不错,文档容易理解,写的人话,然后就根据文档去实操了,总的用起来都还好,能顺手,没遇到太大的困难,所以很快没多久我就把后端的接口写完了。由于两个同事都基本没开始做,所以我就准备开始自己学 APP 端的开发了,了解到有 flutter 开发,可以一套代码生成多端的应用包,就开始学习 flutter 文档了,然后就开始找框架,准备开始开发,看到有一个 fish redux 框架,阿里巴巴的闲鱼出品的框架,也不太懂,感觉至少是国内一线大公司的框架吧,就开始用了。

接下来就是这个flutter 和 fish redux 框架给我的教训了

fish redux 文档也不好,也刚接触 flutter,完全看不懂底层,就模仿例子,开始开发页面了,用起来感觉挺麻烦的,但是感觉有点像 mvn 那样的框架有分层,页面也比较清晰,就接着使用了,用着的过程中,经常遇到很多问题,比如 adapter,store,global store,websocket,sqllite,oss对接,应用消息通知对接,微信支付对接,不知道刚了多少个夜晚,差点猝死几次,也刚出了一头白发,可能三年都有吧(下班回家兼职写和周末写),总算把第一版开发完成,然后自测什么的,备案什么的,总之困难重重,一辈子也遇不到这么多的困难阿,心太累了。

我也分不清是 flutter 的锅还是 fish redux 的锅,现在都四五年了,我也还是分不清楚

但是事情还没有完。flutter 开始升级了,越来越多的版本,flutter的包版本也一直更新,一直到空安全,很多的包也要空安全了,但是 fish redux 停止更新了,不支持 空安全,fish redux 框架团队他就不维护这个框架了,我也就卡在这里,要上不能上,很难受,我也没有能力去修改底层支持空安全阿,页面写了几十个,也不可能全部重写了,太累了,github issue 上面一堆在骂街的,我曾经试着升级 flutter 版本几次,后面都失败了,几个月前,又有新的页面要开发,我就想着要不在当前代码基础上,我换一个 flutter bloc 框架,新的页面使用 bloc框架,但是 bloc 框架又要求 flutter 版本是空安全的,我又试着去升级fish redux,在 github 上面看见有人给了底层修改,我也开始试着弄了,试着好像有点行,我又开始刚起来了,又刚了几个月,直到一小时前好像算成功了,自测没有发现问题。

但是事情还没有完。新的页面要用 flutter bloc 框架,但是我还没有开始开发,我都不知道要怎么在原有的基础上开发,接下来有空就先看看 bloc 的文档吧,希望一些能简单顺利,我不想要遇到其他困难了。

原本兴致勃勃的开发和猫聊,结果到头来上线两三年这个 APP 没人使用,一分钱没赚着,还刚了无数的夜晚,白了一头发,真是不值当阿,就应该做一些简单的,来钱快的,干嘛为难自己,人生还是快乐比较重要,写什么J吧代码,干*1000。

总结一下:

1:简单最重要,复杂的问题简单化,不要用难度高的,没这个脑子

2:不要用国产的,不维护更新,出了问题没地解决,熬死自己

3:使用成熟的,文档齐全的

4:快乐最重要,赚不到钱,没有必要去刚

5:慎重的选择,选择比努力重要

6:⚠️警告自己,不要全部自己干,干不完

7:干*100000000

8:多思考

9:应该没有什么要补充的了,有的话我会在后面接着补充

暗夜魔王 的头像

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注