ango Admin。这些工具的特点就是可以用 1% 的时间完成 80% 的功能,刚开始用的时候都直呼这就是未来。然而 Neal Ford 发现了“#last10%rule",就是最后的 10% 会付出非常大的代价,而用户总是需要 100% 的功能。
这是为什么?难道无脑复制粘贴代码,一个文件写1000行才是优秀程序员的特质吗?我们有理想有追求,难道是错吗?
理想没有错, 方式方法 错了。
不要误会我,我不是站在你们的对立面。本人绝对是铁杆的语法糖制匠。只是有的时候,人们需要跳出原有的思维习惯,才能意识到认知的盲点。
误区一:一厢情愿的抽象
在 《代码写得不好,不要总觉得是自己抽象得不好》 中我已经说过了。业务逻辑,界面长相,绝大多数时候都是产品经理说了算。不恰当的说,你们程序员不过是产品经理手里的笔。这虽然让人难以接受,但的确是大部分人的真实日常。
当我们看到两个地方差不多的时候。不要一厢情愿的抽取公共代码,消除重复。首先要和产品经理达成一致,这个在业务上就应该是保持一致的。当一个产品有一群产品经理的时候,他们或者她们经常因为彼此不拉齐想法,同样的列表筛选功能可能会搞出五花八门的做法来。这个时候就需要用 UI 设计师等角色去横向拉齐。
总之先要把需求的源头给按住了。而不是在需求的下游,用可复用抽象代码来兜底。这也是《领域驱动开发》要求客户,产品经理,程序员能够更多的交流,更多的形成共识的原因。
误区二:在调用栈上找不到自己的代码
很多人会把 Django Admin 这样的 CRUD 代码生成,归咎为代码是生成的。但其实问题并不是出在代码是生成的,问题出现在“调用栈上找不到自己的代码”:当我们看到抛出一个异常,然后在 stack trace 里一行行找,找不到自己写的代码。为什么会出现这样的现象?
假设起初我们写了三个方法
(编辑:南通站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|