关于code:思考如何写出让同事难以维护的代码doge
摘要概览比起什么程序员删库跑路,我更喜爱「写出让共事难以保护的代码」,因为即便不能「名垂千古」,至多VCS能够帮你「一代风流」。 本文从【程序命名&正文】【数据类型&类&对象】【管制执行流程】和【程序/结构设计】四个方面梳理了一些实在案例,置信通过这些案例你能迅速get技能:如何写出让共事难以保护的代码doge。说回正题,前几天在家左近的一个小学校旁边漫步,忽然听到某个学生说“上学期我是‘三好学生’,xxxx”。想了想,学生有“三好”,那么程序员“三好”是什么?我认为程序员的“三好”是「好用」,「难看」,「好改」。这个是说程序员的代码: 要正确且强壮,就是好用;要可读性高,易于了解,就是难看;要不便扩大和改变,就是好改;平时不少文章都在聊“三好”的正例,明天理一些「难看」的反例,心愿给读者一些启发和印象,防止编码中的一些问题,争取做个“三好程序员”吧。 一、程序命名&正文1.1教你如何挑战维护者容易输出的变量名比方:Fred,asdf单字母的变量名。比方:a,b,c,x,y,z(如果不够用,能够思考 a1,a2,a3,a4,….) 有创意地拼写错误比方:SetPintleOpening, SetPintalClosing,这样能够让人很难搜寻代码。 应用缩写和拼音比方:WTF,RTFSC …… (应用拼音缩写也同样给力,比方:BT,TMD,TJJTDS) 论正文的重要性:不然我认为是「驾校」是一类重要客户,要有独自的helper 1.2嵌入式文档之殇=正文不要自觉批改,留神了解!!!留神了解,你会发现其中的不同点…… 「留神了解」之后,意外呈现了…… 程序回忆录long~ long ago~【狼,狼,啊狗】 千万留神something切实不晓得留神什么…… 用正文保留一些机密 二、数据类型&类&对象2.1教教你怎么用数组无所不能的多维数组如果你感觉二维、三维还不足够,你能够试试四维。 认真品一品,这个排版和换行能够教你疾速数下标的办法:行号-44,比方“常驻工作城市”的下标就是25。 想分明下标了再调用所有皆对象,数组也是对象,用就是了 2.2对象?"类"觉不爱员工服务的四胞胎:俩哥哥service,俩妹妹helper; ——「木兰辞」:"四"兔傍地走,安能辨我是雌雄雄雌; 三、管制执行流程3.1开胃菜:if-else微小的processor。写一个 processor,而后让你的所有的 consumer 类都应用这个 processor,这样你能够在这个 consumer 中整出一大堆 if…else… 语句,相当的刺激。 当return和不return混淆在一起的时候,这份刺激中又多了些惊喜…… 3.2大菜:「海鲜拼盘」上面这个600行的办法让我学会了「截长图」 这是个switch-for-if-continue-return组合,很能了解「作者切实没法把break和goto加进去」的苦衷。 ——报告老师:“第四章我曾经把握了” 接下来见证陈迹的时刻…… 倡议:多来来回回的读读这段代码,有助于锤炼眼球灵活性,并且能无效抵制颈椎病 看一遍,想一下,case 0的时候返回啥? 脖子有没有难受点儿? 四、程序/结构设计认知降级GrayService是个灰度服务,corpId是企业ID,那么通过一次灰度放量,在脑壳里执行一下程序,就能够实现认知降级。 CV工程师佳作克隆和拷贝。为了效率,你要学会应用 copy + past,你简直都不必了解他人的代码,你就能够高效地编程了。 包装,包装,再包装把你所有的 API 都包装上 6 到 8 遍,包装深度多达 4层以上,以便找到足够多类似的货色。 ...