百科问答小站 logo
百科问答小站 font logo



为什么说读代码比写代码难? 第1页

  

user avatar    网友的相关建议: 
      

becausetheydontcasesensitiveanddontknowanythingaboutminusorunderline();


user avatar   feng-dong 网友的相关建议: 
      

首先,就不说写的烂的代码了。只说写的好的代码。写的好的代码,依然是很难阅读的。

写的好的代码,一般是遵循一些原则。而这些原则,很难从最后的代码中反推出来。这些原则一般都是 declarative knowledge。而我们看到的代码大多是 imperative code。即使是 functional program 或者 declarative language 的 code,一般也是用低级的抽象来描述高级的原则。

举一个类比。目前体育比赛中很多规则的修改,都是借鉴以往比赛中,一些旧规则导致比赛比较沉闷,或者被运动员钻空子的经验教训。但是单单去看这些规则,你无法反推出来它们是为了避免什么情况。

所谓的「读懂写的比较好的代码」,一般是从代码以外的途径了解作者的意图。然后再掌握作者贯彻这些意图的一些基本习惯。

遵循原则的代码已经如此难以阅读,事实比这个还糟糕。任何原则应用于具体问题,都有例外。所以在任何代码中,都有遵循原则的代码和例外的代码。好的代码只是减少后者的比例,而无法完全杜绝。




  

相关话题

  c++怎么在1到n这些数中随机产生k(k<n)个?当然,k个数互不相等。有什么比较好的写法吗? 
  win32程序如何获取设备上下文绘制的内容? 
  在校学生深入学习QT后会不会找不到比较好的工作? 
  为什么 Python(或 Ruby、Perl 等)没有取代 Bash 成为系统 Shell? 
  为什么学了一个学期的c语言,感觉一直都是在用代码去做一些简单的数学题,没有什么实际用途? 
  学C++之前需要先学C吗? 
  怎么用一行代码让老板开除你? 
  想在业余时间刷leetcode,配合什么书籍/课程/视频网站一起刷leetcode的效率最高? 
  计算机(CS)专业大学生怎样平衡绩点和编程能力? 
  为什么说读代码比写代码难? 

前一个讨论
RSS Reader 还有希望吗?
下一个讨论
「我们不知道哪辆校车里的孩子将来会是美国的总统」这句是哪位美国总统说的?





© 2025-04-15 - tinynew.org. All Rights Reserved.
© 2025-04-15 - tinynew.org. 保留所有权利