如何写出无法维护的代码?
作者:网络转载 发布时间:[ 2014/1/8 11:55:46 ] 推荐标签:编程 代码
使用C的变种数组。myArray[i] 可以变成*(myArray + i) 也可以变成 *(i + myArray) 其等价于 i[myArray]。再看一个函数调用的示例,函数声明:int myfunc(int q, int p) { return p%q; } 函数调用myfunc(6291, 8)[Array];
长代码行。一行的代码越长越好。这样别人阅读时需要来来回回的
不要较早的return。不要使用goto,不要使用break,这样,你需要至少5层以上的if-else来处理错误。
不要使用{}。不要在if else使用{},尤其是在你重量地使用if-else嵌套时,你甚至可以在其中乱缩进代码,这样一来,算是有经验的程序员也会踩上陷阱。
使用宏定义。宏定义是混乱C/C++代码的佳利器。参看 老手是这样教新手编程的。
琐碎的封装。比较封装一个bool类,类里面什么都做,是一个bool.
循环。千万不可用for(int i=0; i
测试
从不测试。千万不要测试任何的出错处理,从来也不检测系统调用的返回值。
永远不做性能测试。如果不够快告诉用户换一个更快的机器。如果你一做测试,那么可能会要改你的算法,甚至重设计,重新架构。
不要写测试案例。不要做什么代码覆盖率测试,自动化测试。
测试是懦夫行为。一个勇敢的程序员是根本不需要这一步的。太多的程序太害怕他们的老板,害怕失去工作,害怕用户抱怨,甚至被起诉。这种担心害怕直接影响了生产力。如果你对你的代码有强大的信心,那还要什么测试呢?真正的程序员是不需要测试自己的代码的。
其它
你的老板什么都知道。无论你的老板有多SB,你都要严格地遵照他的旨意办事,这样一样,你会学到更多的知识如何写出无法维护的代码来的。
颠覆Help Desk。你要确保你那满是bug的程序永远不要被维护团队知道。当用户打电话和写邮件给你的时候,你不要理会,算要理会,让用户重做系统或是告诉用户其帐号有问题,是标准的回答。
闭嘴。对于一些像y2k这样的大bug,你要学会守口如瓶,不要告诉任何人,包括你的亲人好友以及公司的同事和管理层,
忽悠。你会学会忽悠,算你的代码写得很烂,你也要为其挂上GoF设计模式的标签,算你的项目做得再烂,你也要为其挂上敏捷的标签,只有学会像中国Thoughtworks的咨询师那样去忽悠,你才能学会更炫更酷的方法,让整个团队和公司,甚至整个业界都开始躁动,这样才能真正为难维护的代码铺平道路。
这个文档中还有很多很多,实在是太TMD强大了,大家自己去看看吧。有精力有能力的朋友不妨把其翻译成中文。
总之,我们的口号是――
Write Everywhere, Read Nowhere

sales@spasvo.com