大道至简读后感信2005-3胡奕成

大道至简这本书讲解了一些软件工程的思想,此书一共八个章节,其中每个章节都有好几个小节,思路清晰,让我对编程有了更进一步的认识,对算法也有了点认识,相信这对今后的学习会有帮助。正如本书的书名所说的,世界“虽变化万端,而理为一贯”,所谓达到很简单 ,只是人们把它复杂化了,而作者把这本书通过简单的话使道理通俗易懂。在这本书中,由于我只学过学C与C++,所以这本书很多地方我还未能理解,但还是有一些感受。

  在第一章编程的精义中, 作者引用了愚公移山的故事,把愚公看做工程名家,讲出了他在移山过程中的一些工程名家的思想。有“虽我之死,有子存焉”的分支结构,也有“子又生孙,孙又生子;··· ···子子孙孙,无穷匮也”的循环结构等。之后周先生又说除了先天智障或后天懒惰者都可以学会写程序。告诉我们要勤于练习,不要懒惰。还讲出了程序=算法+结构,勤奋的同时也要努力思考。并告诉我们各种语言各有各的特点。 “愚公移山”虽然是一个可执行的程序。但是只靠“凿”的话,效率肯定不会太高。而李冰却积薪而烧之,不仅效率高,而且相对于愚公的“凿”来说,劳动力度可以说是大大的减少了。这就是“懒人创造了方法”。在我看来,愚公的方法类似程序设计中的面向过程,而李冰的方法类似于程序设计中的面向对象。我们先学习的C语言,然后才学习的C++。c语言是面向过程的语言,c++是在c语言基础上增加了面向对象的部分。我以为是我先入为主的概念,所以即使学习了面向对象,但我还是偏爱通过面向过程的方法来解决问题,即使大多数时候面向过程比面向对象要麻烦些。在一些问题中,如果脑子中没有刻意的想到“类”,我就容易直接忽略,记得当时我的“剪刀石头布”、“下棋”这两个游戏类都没有用类来封装,我又把这两个程序重新写了一遍。但是这过程中,我自己是明显觉得用类封装的方法不如之前的顺手,因为过程中出现了几处错误,经过了好几次调试才出来,直到这时,我意识到我喜欢用面向过程来解决问题,与其说是先入为主,不如说是因为我根本就没有掌握类的使用。而这个类的使用或许就是所谓“懒人的方法”。在我们这个阶段,程序还没那么复杂,所以或许类的优势没那么明显,但是,以后的工程中动辄就几万行代码,这个时候在通过面向过程来解决就是非常不明智甚至是愚蠢的行为了。所以掌握面向对象是非常重要的,从现在开始,我就主要锻炼这方面的能力。要求能熟练的掌握并运用类这一捷径。这也是这本书给我最大的教训与反思,也是我最大的收获。

 

上一篇:解决移动端1px边框问题的几种方法


下一篇:[Bzoj1003][ZJOI2006]物流运输(spfa+dp)