发布于2026-07-21 阅读(0)
扫一扫,手机访问
在软件开发领域,有两种截然不同的编码方式,我们姑且称之为“被动编程”和“主动编程”。它们代表了两种对程序员角色的理解,也直接影响了开发效率和产品质量。
先说被动编程。这听起来有点像是“流水线工人”的工作模式,往往出现在对日外包这类项目中。据说日本公司那边会发来一份极其详细的文档,细到什么程度?文档里会明确规定一个页面里列表要显示哪些信息,一页多少条记录,表单里放多少控件,甚至每个控件的ID、类型、大小、位置等等,都写得一清二楚。
当然,这只是听说,毕竟我没亲眼见过这么极端的文档。但假设真的存在这样的文档,那对于执行编码的程序员来说,就是典型的“被动编程”。说白了,你只需要照着文档的指示,一行一行地把代码敲出来,几乎没有一点自由发挥的空间。对于很多程序员来说,这恐怕是件很郁闷的事——在别人的框框里憋屈着,而这框框可能还不太宽裕。相比之下,.NET框架的框框就显得宽裕多了。
这种模式带来的问题也很明显:程序员会不会因此进步缓慢,甚至被限制住思维?写了一年、两年,翻来覆去还是那点东西,思想也慢慢被磨没了。万一哪天没了文档,自己是不是就不会写程序了?
不过,被动编程也有它的优点。文档一旦写好,实现基本就不需要担心了。更重要的是,人员变动不会成为大问题,谁来了都得按这个文档写,代码风格统一,一个人写的代码另一个人也能看懂,不会出现“天书”现象。
与被动编程相对的,是“主动编程”。在这种模式下,文档只说明要实现的功能,以及使用的数据库表(或实体类。目前依然是面向数据库编程,所以数据库设计还是需要由有经验的几位同事事先确定好)。此外,还会约定编码方式、格式、风格和代码规范。剩下的事情,就交给程序员自己去理解和发挥了。
这样一来,程序员就有了很大的发挥空间。他们需要思考更多的问题和场景,这本身就是一种锻炼和成长。当然,这种模式也有一个明显的缺点:代码完成的质量,很大程度上取决于程序员个人的能力、经验以及对项目的理解程度。如果团队里有人水平参差不齐,那结果可能就会不太可控。
上一篇:【编程的感受】
下一篇:命令式编程与函数式编程
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8