大专,书愤,南阳天气预报-节点陶艺-景德镇顶级工艺制造商,最新制陶技艺分享

频道:国内时事 日期: 浏览:242

对,你没看错,本文便是教你怎样写出让搭档无法保护的代码。(看完别打我)



一、程序命名

简单输入的变量名。比方:Fred,asdf

单字母的变量名。比方:a,b,c, x,y,z(假如不够用,能够考虑a1,a2,a3,a4,….)

有构思地拼写过错。比方:SetPintleOpening, SetPintalClosing。这样能够让人很难查找代码。

笼统。比方:ProcessData, DoIt, GetData… 笼统到就跟什么都没说相同。

缩写。比方:WTF,RTFSC …… (运用拼音缩写也相同给力,比方:BT,TMD,TJJTDS)

随机大写字母。比方:gEtnuMbER..

重用命名。在内嵌的句子块中运用相同的变量名有奇效。

运用重音字母。比方:int ínt(第二个 ínt不是int)

运用下划线。比方:_, __, ___。

运用不同的言语。比方混用英语,德语,或是中文拼音。

运用字符命名。比方:slash, asterix, comma…

运用无关的单词。比方:god, superman, iloveu….

混杂l和1。字母l和数字1有时分是看不出来的。

二、假装诈骗

把注释和代码交错在一起。

for(j=0; j

br

代码和显现不共同。比方,你的界面显现叫postal code,可是代码里确叫 zipcode.

躲藏全局变量。把运用全局变量以函数参数的办法传递给函数,这样能够让人觉得那个变量不是全局变量。

运用类似的变量名。如:单词类似,swimmer 和 swimner,字母类似:ilI1| 或 oO08。parselnt 和 parseInt, D0Calc 和 DOCalc。还有这一组:xy_Z, xy__z, _xy_z, _xyz, XY_Z, xY_z, Xy_z。

重载函数。运用相同的函数名,可是其功用和详细完成彻底没有关系。

操作符重载。重载操作符能够让你的代码变得怪异,感谢CCTV,感谢C++。这个东西是能够把紊乱代码提高到一种艺术的方式。比方:重载一个类的 ! 操作符,但实践功用并不是取反,让其回来一个整数。所以,假如你运用 ! ! 操作符,那么,有意思的事就发生了—— 先是调用类的重载 ! 操作符,然后把其回来的整数给 ! 成了 布尔变量,假如是 !!! 呢?呵呵。

三、文档和注释

在注释中说谎。你不必真的去说谎,只需在改代码的时分不要更新注释就能够了。

注释里边写废话。比方:/* add 1 to i */

只注释是什么,而不是为什么。

不要注释隐秘。假如你开发一个航班体系,请你必定要保证每有一个新的航班被参加,就得要修正25个以上的方位的程序。千万别把这个事写在文档中。

重视细节。当你规划一个很杂乱的算法的时分,你必定要把一切的详细细规划都写下来,没有100页不能罢手,阶段要有5级以上,阶段编号要有500个以上,例如:1.2.4.6.3.13 – Display all impacts for activity where selected mitigations can apply (short pseudocode omitted). 这样,当你写代码的时分,你就能够让你的代码和文档共同,如:Act1_2_4_6_3_13()千万不要注释度衡单位。比方时刻用的是秒仍是毫秒,尺度用的是像素仍是英寸,巨细是MB仍是KB。等等。其他,在你的代码里,你能够混用不同的度衡单位,但也不要注释。

Gotchas。圈套,千万不要注释代码中的圈套。

在注释和文档中宣泄不满。

四、程序规划

Java Casts。Java的类型转型是天赐之物。每一次当你从Collection里取到一个object的时分,你都需求把其转回原本的类型。因些,这些转型操作会出现在N多的当地。假如你改动了类型,那么你不必定能改动一切的当地。而编译器或许能查看到,也或许查看不到。

运用Java的冗余。比方:Bubblegum b = new Bubblegom(); 和 swimmer = swimner + 1; 留意变量间的细微差别。

从不验证。从不验证输入的数据,从不验证函数的回来值。这样做能够向咱们展现你是多么的信赖公司的设备和其它程序员

不要封装。调用者需求知道被调用的一切的细节。

克隆和复制。为了功率,你要学会运用copy + paste。你简直都不必了解他人的代码,你就能够高效地编程了。

巨大的listener。写一个listener,然后让你的一切的button类都运用这个listener,这样你能够在这个listener中整出一大堆if…else…句子,适当的影响。

运用三维数组。假如你觉得三维还不满足,你能够试试四维。

混用。一起运用类的get/set办法和直接拜访那个public变量。这样做的优点是能够极大的挫折保护人员。

包装,包装,包装。把你一切的API都包装上6到8遍,包装深度多达4层以上。然后包装出类似的功用。

没有隐秘。把一切的成员都声明成public的。这样,你今后就很难约束其被人运用,并且这样能够和其他代码形成更多的耦合度,能够让你的代码存活得更久。

摆放和阻止。把drawRectangle(height, width) 改成 drawRectangle(width, height),等release了几个版别后,再把其改回去。这样保护程序的程序员们很快就不理解哪一个是对的。

把变量改在姓名上。例如,把setAlignment(int alignment)改成,setLeftAlignment, setRightAlignment, setCenterAlignment。

保存你一切的没有运用的和陈腐的变量,办法和代码。

Final你一切的子结点的类,这样,当你做完这个项目后,没有人能够经过承继来扩展你的类。java.lang.String不也是这样吗?

防止运用layout。这样就使得咱们只能运用肯定坐标。假如你的老迈强制你运用layout,你能够考虑运用GridBagLayout,然后把grid坐标hard code.

环境变量。假如你的代码需求运用环境变量。那么,你应该把你的类的成员的初始化运用环境变量,而不是结构函数。

运用全局变量。1)把全局变量的初始化放在不同的函数中,就算这个函数和这个变量没有任何关系,这样能够让咱们的保护人员就像做侦察作业相同。2)运用全局变量能够让你的函数的参数变得少一些。

配置文件。配置文件首要用于一些参数的初始化。在编程中,咱们能够让配置文件中的参数名和实践程序中的姓名不相同。

胀大你的类。让你的类尽或许地具有各种臃肿和不流畅的办法。比方,你的类只完成一种或许性,可是你要供给一切或许性的办法。不要界说其它的类,把一切的功用都放在一个类中。

运用子类。面向对象是写出无法保护代码的天赐之物。假如你有一个类有十个成为(变量和办法)你能够考虑写10个层次的承继,然后把这十个特点别离放在这十个层次中。假如或许的话,把这十个类别离放在十个不同的文件中。

紊乱你的代码。运用XML。XML的强壮是无人能及的。运用XML你能够把原本只需10行的代码变成100行。并且,还要逼着他人也有XML。(参看,信XML得永生,信XML得自傲)

分化条件表达式。如:把 a==100分化成,a>99 && a<101

学会运用分号。如:if ( a );else;{ int d; d = c;}

直接转型。如:把double转string,写成new Double(d).toString() 而不是 Double.toString(d)

很多运用嵌套。一个NB的程序员能够在一行代码上运用超越10层的小括号(),或是在一个函数里运用超越20层的句子嵌套{},把嵌套的if else 转成 [? :] 也是一件很NB的事。

长代码行。一行的代码越长越好。这样他人阅览时就需求来来回回的

不要过早的return。不要运用break,这样,你就需求至少5层以上的if-else来处理过错。

不要运用{}。不要在if else运用{},尤其是在你重量地运用if-else嵌套时,你乃至能够在其间乱缩进代码,这样一来,就算是最有经历的程序员也会踩上圈套。

琐碎的封装。比较封装一个bool类,类里边什么都做,便是一个bool.

循环。千万不可用for(int i=0; i<改成><=,运用 i–调整脚步 。

五、测验

从不测验。千万不要测验任何的犯错处理,历来也不检测体系调用的回来值。

永久不做功能测验。假如不够快就告知用户换一个更快的机器。假如你一做测验,那么就或许会要改你的算法,乃至重规划,从头架构。

不要写测验事例。不要做什么代码覆盖率测验,自动化测验。

测验是胆小鬼行为。一个英勇的程序员是底子不需求这一步的。太多的程序太惧怕他们的老板,惧怕失掉作业,惧怕用户诉苦,乃至被申述。这种忧虑惧怕直接影响了生产力。假如你对你的代码有强壮的决心,那还要什么测验呢?真实的程序员是不需求测验自己的代码的。

六、其他

你的老板什么都知道。不管你的老板有多SB,你都要严格地遵循他的旨意就事,这样一来,你会学到更多的常识以及怎么写出愈加无法保护的代码。


推翻Help Desk。你要保证你那满是bug的程序永久不要被保护团队知道。当用户打电话和写邮件给你的时分,你就不要理睬,就算要理睬,让用户重做体系或是告知用户其帐号有问题,是规范的答复。


闭嘴。关于一些像y2k这样的大bug,你要学会三缄其口,不要告知任何人,包含你的亲人老友以及公司的搭档和管理层,这样当到那一天的时分,你就能够用这个bug赚钱了。


忽悠。你会学会忽悠,就算你的代码写得很烂,你也要为其挂上GoF规划形式的标签,就算你的项目做得再烂,你也要为其挂上灵敏的标签,让整个团队和公司,乃至整个业界都开端烦躁,这样才干真实尴尬保护的代码铺平道路。

总归,咱们的标语是—— Write Everywhere, Read Nowhere

说好了,你们不打我的,究竟作业中咱们仍是得谨慎,郑重其事的嘛!

热门
最新
推荐
标签