设计与开发的四条准则–六年结晶!

从二零零四年初(高校二年级其次学期)加入学校就业信息网站,靠写代码取得第一笔收入,迄今已经近似六年。

第一条准则,第一搞清你的问题是什么。这一条守则无论是怎么夸大都不过头。在《Programming Pearls》第二版的开篇,Jon Bentley 讲的乃是,第一搞清你的问题是什么! 在你没详细、明确地定义好你的问题预先,你所做的多数工作只产出草包。这些年,曾经的最头疼的事,便是常常搞了一大堆货色,累活累死,甚或加班,最后总才发现很多事儿偏离了目标。但这么的事儿,总是在四周一遍一满处发作。

一个高级工程师,如果在接到一个问题时第一不是尽量挖到细致的文件,定义问题,并向懂得问题的人去反应,详细议论问题的定义。诚然问题定义不是那么简略,但不第一定义好问题,那就是不合格的高级工程师。

再有很多准则,基本上都是这个准则的衍生品。

第二条规约,搞清你要干吗,以及哪些先干,哪些后干,哪些基本就不需要做。简言之,便是把问题分解,列个表,排个先后顺序。这是半数以上程序员最蹩脚的一部分。高效率的性质不是捧着ThoughtWorks那本《行之有效的程序员》,而是我这条准则。我对Joel的书里印象最深刻的乃是相关用Excel列任务列表的一部分。

这条仍然是如斯主要,以致于闻名的YAGNI, (You ain’t gonna need it )仅仅是一条推断作罢。

当然,界别的基准是什么?It depends. 但是最主要的参考是,怎么做你能取得最大产出?或者你会在所谓的扩展性、顺应需求变更与可工作的代码,用户的需求其间选择。 最主要的仍是可工作的代码,能够准时 ship the beta!

记住,先列出来要干吗;其后分清先后顺序,其后出局那些可以不干的。

第三条守则,KISS。 Keep It Simple Stupid。用郭靖和杨过来譬喻,代码要像郭靖同样用最容易直接的形式精壮地工作,不需要太多的曲折。你的程序若是像杨过的人生那么复杂、聪明,早死翘翘了。你的程序要简略精壮地做活儿,思维越容易越好,效能和特征越少越好。

这一条关于设计是至关重要的,急躁的程序员们常常要在架设设计中引来形式、分层,又或者是绚烂的Ajax成效等等,完全是愚蒙停的自虐。我也是好些年后才清楚这条情理,直到嗣后开始使用Unix停的那些让无数人痴迷的工具,才真真地看到了这条守则的硕大威力。

要不一般澄清一下子,KISS 与你的程序是不是好用,是不是便于复用,非但不冲突,并且是相辅而行的。你要知道的只是你的程序应当做什么,其后努力抓好。挪用《Programming Pearls》开篇里法国大作家兼飞机设计家的话::“设计者确定其设计已经达到了圆满的基准是不能再减小任何东西”。

第四条规约,一键集成和适当的自动化测试。这条未几说了,在有条件的情况下做会受益非浅。

其余再有一些很知名的准则,比如 DRY (Don’t Repeat Yourself), 或许是由于一开始我就理解了这个情理(尤记得高等学校的时分把ASP代码提取函数,打包Head和Foot,将写HTML Table的打包验方法来依据不同的数据集打印,美愚。),感想没那么深。

六年了,好快
本文来源:
我的异常网
Java Exception
Dotnet Exception
Oracle Exception

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值