什么是好代码?怎么写好代码?

要想写出好的代码,你一定要牢记以下内容:

  • 可读性——不只是你,还有你身边与你合作的其他开发者
  • 可维护性——让你的代码在修改的时候很简单
  • 简洁性——不要让你的代码看上去毫无必要的复杂
  • 效率性——尽可能的让你的代码获得最快的运行速度
  • 明确性——如果你的代码能够做到不解自明,在大多数时候,你根本无需为其配备说明文档。在为方法和属性命名的时候,做到尽可能的合理。把长的代码进行拆分。不要复制/粘贴代码块。

一、什么是好代码?

CUPID 就是从特质的角度来定义的,它尝试用一组助记词来指示好代码所具备的一组特质,并希望这组特质是最重要的特质。

  • 可组合特质(Composable):主要体现在精巧的接口、可体现意图的代码、最小依赖三个方面;
  • Unix 哲学(Unix):一个程序应该做一件事,并将其做好;
  • 可预测性(Predictable):1. 与期望一致的行为;2. 输出确定的结果;3. 内部行为可观测;
  • 符合惯例的(Idiomatic):通常团队会自己定义一些惯例,比如用什么工具,如何缩进等。借助各种语言的代码检查;
  • 基于领域的(Domain based):代码应该用问题空间的语言来写,这样就能让代码的读者更容易的理解。问题空间语言即领域语言。

二、好代码怎么写?

在编码前,需要做好需求分析和系统设计。而这两项工作是经常被大量软件工程师忽略或轻视的环节。

在编码时,需要编写代码和编写单元测试。对于“编写代码”,读者都了解;而对于“编写单元测试”,有些软件工程师就不认同了,甚至还有人误以为单元测试是由测试工程师来编写的。

在编码后,要做集成测试、上线,以及持续运营/迭代改进。这几件事情都是要花费不少精力的,比如上线,不仅仅要做程序部署,而且要考虑程序是如何被监控的。有时,为了一段程序的上线,设计和实施监控的方案要花费好几天才能完成。

三、去哪找好代码?

读论文的时候会附带代码,或者去github这样的网站也有很多开源项目,大家可以找想要的方向或者感兴趣的代码看。

四、看哪些书?

最后再推荐两个相关的文档:

“好的代码本身就是最好的说明文档。” — Steve McConnell

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值