
我是一位 iOS 开发者,看到 Flutter 这个高性能的跨平台 UI 开发框架越来越火,就上手学了起来。结果发现越写越喜欢,iOS 不想写了,RN 也不香了,于是决定用 Flutter 撸一个支持多端的个人项目,没想到这是掉坑的开始。
这个项目的名字叫做“购房计算器”,由于之前买二手房不清楚购房费用明细,被坑了一把,所以决定做一个项目让普通购房者也能清楚的知道自己每一分钱都花在了哪里。由于每个城市的政策和费用都有差异,所以一开始只考虑支持长沙。
Flutter 写起来是真的顺手,几天就撸了一个出来。撸出来了之后总觉得缺少什么,想来想去还得搞个后台,听说 Go 也是 Google 出的,性能也好,就用 Go 吧,又花了几天把后台接口也撸出来了,主要支持用户对购房计算结果的收藏管理。
接口接入项目后,又觉得功能太简单了,只支持常规的计算,像什么非住宅、公司购买、公司出售、土地增值税、法拍房等等都不支持啊。这时发现我已经花了不少时间了,但是这个坑还是咬着牙跳下去了。
我上网搜索资料,但是各个资料说法都有差异,不知道谁说的才对。没办法,我只好装作买房用户去咨询中介,但是中介也没有这么全面专业的(我暗暗发誓,以后做个人项目一定要避免切入自己不熟悉的非技术领域),最终在问了 N 个中介后去不动产交易中心搞清楚了税费的计算规则。
终于把长沙的功能做全了,乐滋滋的学习了 docker 把项目部署到了云服务器上。在发布前,突然在知乎上刷到了一个问答:面向对象编程的弊端是什么,里面以一段文字让我陷入了沉思:
再比如,传说中的面向对象本该大显神威的游戏领域就说流行的 WOW 吧。 这个游戏有 10 个职业,10 个种族,每个种族都有自己的几个特有种族天赋(这个种族天赋还可能根据职业有所不同,比如血精灵);每个职业有几十甚至上百种不同的技能 /法术,这些技能有近战技能,有远程技能;有的技能会对敌方造成伤害或不良状态,有的技能能给己方队友加上好的状态或治疗队友;而且很多这类技能还会根据目标的状态切换不同的效果;有些技能是单体效果,有些技能是光环效果... 别人游戏这么复杂都能搞定。 但是我这个只支持一个城市估计没什么人用把?于是果断的对客户端和后端都进行了重构,没想到 Flutter 还有词法分析框架,又乐滋滋的把项目重构了一遍,只要给我规则,火星上的房产转让我也要能算!
重构完了之后我发现我是真的掉坑里了。 我默默的掏出手机打开了房地产软件,重新开始了伪装成买家一个中介一个中介咨询的流程,最终支持了深圳的费用计算。
其中还有很多坑就不一一诉说了,太长了估计大家也懒得看。此项目现在已经上架 AppStore 和酷安,希望能给购房的人一点帮助,求轻喷,求下载。
项目地址: http://qiniu.devlxx.com/index.html

1 guolaopi May 14, 2020 建议挪到推广节点 |
2 hst001 May 14, 2020 想到一个 idea 只花了 0.3 秒,3 个小时规划一下核心功能,核心功能(超级无敌简单但是实际上没法给人用的) 3 天完成,至 1.0.0 大致可用版本用了 300 天,这就是现代产品的开发路径。 |
3 chanlk nbsp; May 14, 2020 重新定义了掉坑 |
4 encro May 14, 2020 哎呀,这个是不是可以卖用户信息。。。 |
5 hhhsuan May 14, 2020 via Android Flutter 迟早要被苹果封杀 |
6 murmur May 14, 2020 明明是小程序可以搞定的东西,你让我下 app,这推广推不动啊 |
7 putaozhenhaochi May 14, 2020 via Android 你这都是业务上的坑。跟 Flutter 半毛钱关系没有啊。 这么多数据,作为个人开发者,大佬还是厉害。 |
8 xinxing260 OP @murmur 是的,所以我说掉坑里了 |
9 xinxing260 OP @putaozhenhaochi 我一直都说 Flutter 好用顺手,是其它地方掉的坑 |
10 xinxing260 OP @guolaopi 过了时间,挪不了了~ |
11 ffLoveJava May 14, 2020 你真是标题党, 你业务上都坑,你扯框架干什么? 你这个标题 就是 Flutter 把你坑了 ,你怎么不去 UC ? |
12 LG3xFA6kpn88HxEW May 14, 2020 标题杀我,赞我等于踩楼主 |
13 whileFalse May 14, 2020 所以其实并没有坑,就是 Flutter 爽到不行 |
14 Vegetable May 14, 2020 其实楼主想说 flutter 太爽以至于又很多精力关注业务。 |
15 lancelock May 14, 2020 flutter 不还得看原生吗,我倒觉得 swiftui 挺爽的,咋没什么人用 |
16 iamben May 14, 2020 via iPhone 厉害!手动点个赞! |
17 damingxing May 14, 2020 “没办法,我只好装作买房用户去咨询中介” 就凭楼主这一句话,你已经超过 99%的程序员了。 |
18 xinxing260 OP @lancelock 不支持低版本是硬伤,用的人少代表前期学习成本和趟坑的成本也高。 另外“iOS 没有人要了”,很多人把精力分配在了跨平台上。 |
19 patsoncy May 14, 2020 |
20 yulang May 14, 2020 这不是我想要的坑哈哈哈 |
21 herozzm May 14, 2020 via Android 其实你是想推广 app 来的 废话那么多 假大空 |
22 azoon May 14, 2020 点进来发现原来是我掉坑里了。 |
23 coolmenu May 14, 2020 这个做成 app 。。。用 ionic 包装一下,其实主要就是后台计算吧? flutter 做这个也看不出什么东西呀 |
24 sardine May 14, 2020 老兄标题党啊,我也掉坑里了 |
25 40EaE5uJO3Xt1VVa May 14, 2020 你成功的浪费了我人生中宝贵的五分钟 |
26 qsmd42 May 14, 2020 va iPhone 标题党推广 吐了 |
27 izzy27 May 14, 2020 哈哈哈哈哈哈 |
28 IGJacklove May 14, 2020 老哥代码开源吗?纯学习目的想学习一下,最近也在学 flutter |
29 lancelock May 15, 2020 via iPhone @xinxing260 拉倒吧,跨平台意味着三平台 |
30 loginbygoogle May 15, 2020 via iPhone @hhhsuan 你迟早会被裁员 |
31 levelworm May 15, 2020 via Android 不错不错广告不错 |
32 fescover May 15, 2020 via Android 还是喜欢 RN |
33 laminux29 May 15, 2020 这玩意就是 excel 的事情,你做成 app 其实并不方便。 而且,这玩意最重要的是,每个地方都不同,而且很多地方每隔两三年就有大的变动,你这 app 岂不是要天天更新。 |
34 xinxing260 OP May 15, 2020 @laminux29 不可能让普通购房者搞个这样的 excel 来算。 另外更新问题不存在,我只要服务端下发配置更新计算公式就可以了。 |
35 xinxing260 OP @lancelock 不管是三平台还是 N 平台,最终还是看效率的。 |
36 xinxing260 OP @herozzm 不好意思,第一次发帖,确实是想推广,管理员已经帮我把帖子移到推广节点了。 |