编程珠玑笔记(5)-数据决定程序结构

  在这一章节中,作者通过几个不同的事例叙述了数据结构和程序之间的关系,中心思想只有一个:我们应当采取更好的数据结构,起码不是显然不适合这个程序的数据结构,以此来使得程序的编写得到简化,并获得其他的诸多好处。至于这样做是否值得,作者的答案显然是肯定的。

  • 原理总结
  •   各个事例的精髓是一致的:“能用小程序实现的,就不要编写大程序”。
      本章集中讨论了数据结构对软件的一个贡献:将大程序缩减为小程序。数据结构设计还有许多其他正面影响,包括节省时间和空间、提高可移植性和可维护性。

      程序员在节省空间方面无计可施时,将自己从代码中解脱出来,退回起点并集中心力研究数据,常常能有奇效。(数据的)表示形式是程序设计的根本。

      下面是退回起点进行思考时的几条原则。

      使用数组重新编写重复代码。     冗长的相似代码常常可以使用最简单的数据结构——数组来更好地表述。

      封装复杂结构。     当需要非常复杂的数据结构时,使用抽象术语进行定义,并将操作表示为类。

      尽可能使用高级工具。     超文本、名字-值对、电子表格、数据库、编程语言等都是特定问题领域中的强大的工具。

      从数据得出程序的结构。     本章的主题就是:通过使用恰当的数据结构来替代复杂的代码,从数据可以得出程序的结构。万变不离其宗:在动手编写代码之前,优秀的程序员会彻底理解输入、输出和中间数据结构,并围绕这些结构创建程序。

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注