标签:本书 有感 大道至简 编程 算法 软件工程
读《大道至简》有感
《大道至简》这本书的作者给我的感觉就像是在跟现代的“老子”对话一样,作者对软件工程的理解之深以及对软件工程项目管理的思考,无一不让人赞叹。周老师的知识和见识,让我感到惊讶与钦佩,改变了我对计算机领域工作者一贯的理科男的形象。
周老师一开始就已经将编程的精益用愚公移山的典故概述出来,“顺序分支和循环这是最基本的,最底层的编程”。“程序=算法+结构”,是的,这公式里面甚至都没有出现代码。
“算法是程序的逻辑实现的描述”,他这样的轻描淡写使我这样的初学者不禁感到头痛。与此同时我想到了一直耿耿于怀的递归算法——无非就是只要未达成就再跳进循环或者另一个循环。(我现在是这么想的,正确与错误需要后期的学习)
在《大道至简》这本书中,其中写到了这么一段对话:
“为什么我学了一年的编程却还是不知道怎么写程序呢?”
“你桌上的书是乱的?”
“比较整齐。”
“你既然知道如何把书分类整整齐齐地放在书桌上,那怎么没想到如何把所学的知识分类、归纳一下整整齐齐地放在脑子里呢?”
看到这里就好像我是那一个学员。而周老师的话也确实触动了我,平常所学的知识,都是按照课本上亦步亦趋的装在脑子里,有时候会混合地进行应用,此时,大脑里就会一片空白。该尝试一下分类,把既有的知识像桌子上的书整理一下,最常用的放在手边而最不常用的就放在书柜。
《大道至简》其中最详细的是周老师对于一个软件项目管理的探讨。一些章节使我接触到真实的软件公司的是生活,虽然我从这本书中窥探的只是冰山一角,但的确给我很大的触动。周老师大多是以管理者的角度来进行探讨的,这对于我一个刚刚接触软件工程的学员来说,确实有些遥远,但是想了一下,与其做一个开发人员,谁不想做一个管理者呢(至少我在读这本书的时候是这么想的)?
在一口气读完这本书之后,我的脑子里就只剩下,“语言只是工具”。我一直在思考,真正困难的是不是编程这件事情,通过读了这本书之后,我有了明确的答案:不做工具的奴隶,而做思想的主人。程序等于算法加结构,算法是解决问题的思路或者说是想法。语言只是一件工具,语言来交换和理解其他人的想法的,语言只是更方便的让我们去沟通。就像数学对于大多数人都是很难的,但它是服务于物理的一门工具。
在日常编程中,我遇到许多题做不出来,其实就是没有想到解决这个问题的想法和思路,“大多数人不知就里的使用者技巧和方法,而一旦出了问题则归咎于这些方法和技巧的不好”,“而真正的问题在于这些人并不知道这些技巧技术和方法的原理,因而不知道变通不知道回避错误。”就像书中说的那样,一个编程题写不出来,我通常会归咎于我不会使用这门编程语言里的什么什么函数,比如说像,map函数,find函数之类的。
在以后编程或者说是学习软件工程的日子里,我会时刻牢记,“语言只是一门工具”,思想和思考才是一个软件工程开发者的“大道”。
标签:本书,
有感,
大道至简,
编程,
算法,
软件工程
From: https://www.cnblogs.com/wcy1111/p/17578409.html