初闻其名,《大道至简》,大多人都会觉得这是一本满腹人生哲理的书籍,作者洋洋洒洒的谈论大道理,其实不然,作者以古典文化为引,以作者的所思所想为线,启蒙了我作为一个软件工程初学者的实践思想。

愚公虽愚,却向我们展示了如何完成一个看似庞大的工程,那就是一步一步的分而治之,回想自己大一的学习生活,确实遇到过比较繁杂的程序,那时候一心想的是这太复杂了,可能完成不了,可是当自己真正静下心来去慢慢分析程序该如何一个部分一个部分、一句一句的往下写,分析清楚各部分之间的关系时,运用合适的方法,问题便变得越来越简单,以至于最后消失。作者所言极是:“所以编程的第一要务是先把事情分析清楚,事件先后的逻辑关系和依赖关系搞清楚,然后再去代码实现。”当我们脑海里都还是一团雾水的时候,想要写出正确的程序那恐怕不太现实。

诚然,一百万行代码是可以写在一个文件里的,像极了初学c++的我,即使知道头文件和源文件可以分开写,但还是愿意把它们安置在一个文件里,可是久而久之发现如果程序出错误了,找到那个位置或许需要鼠标或者键盘操作好多次,便慢慢接受并习惯了分开写程序的一些不同部分,更何况是一百万行,这样只不过是白白的浪费时间,降低了工作的效率。将程序的各个层次结构清晰的划分开,可以减少开发过程中不必要的麻烦,使程序更便于查看与修改。

在现在的我看来,软件的意义是要给人以完美理想的功能以及美好的使用体验,一个好的软件的产出不单单只是程序员们工作的结果,更重要的是软件开发者对软件需求者需求的理解,要想做好一个软件,项目团队中各组织结构间明确分工,各司其职,高效配合是必不可少的。作为开发软件的人,需要明确需求者的需求,从而给出其满意的结果。明确需求时高效的沟通是极其必要的,也要注意方式方法,用客户易于接受和理解的方式进行沟通,这样才能使客户对其需求表达的更加清楚,也利于软件开发者的工作。沟通也要有目的性的,带着问题去沟通的,而不是随意的交流感情,聊项目以外的事情,那样只会浪费彼此的时间。总之,明确目的,开发的方向才能正确,如果连开发的目的都没有搞清楚的话,还指望做出满意的产品简直是痴人说梦。

作者还赘述了一些管理方面的内容,诸如项目经理,BOSS,开发经理在工程的过程中担当了一个怎样的角色,应该如何去发挥自己的职能,不要害怕产生矛盾,而要注重如何解决这些矛盾。

道,规律也,大道之行也,大道至简。本书没有过多的方法,全部是思想的结晶,参悟还需我们在以后的实践中去慢慢体会。

读<大道至简>--软件工程实践者的思想有感的更多相关文章

  1. 大道至简---软件工程实践者的思想------------java伪代码形式读后感第一章

    import.java.大道至简.*; 1.编程的精义----愚公移山 /* 原始需求的产生:惩山北之塞,出入之迂 项目沟通的基本方式:聚室而谋曰 项目的目标:毕力平险,指通豫南,达于汉阴 技术方案: ...

  2. 阅读《大道至简第一章》读后感(java伪代码)

    大道至简讲述的是软件工程实践者的思想,书的第一章引用了著名的----愚公移山这一历史故事,向我们讲述了编程的精义.汤问篇中所述的愚公移山这一事件,我们看到了原始需求的产生---“惩山北之塞,出入之迂” ...

  3. 大道至简(第五i章)读后感

    大道至简(第五章)读后感 再一次在不想看的情况下读大道至简第五章,一个项目的实现中,“过程”与“工程”是同一个概念吗?答案自然是否定的.“过程”是一个确定的模板,而“工程”是有一个目的的实现在里面. ...

  4. 《大道至简》第三章读后感+ppt课后作业

                   大道至简读后感 ——第三章团队 古人云“三人为众”,众则是指团体或团队.对于一个团队而言,重要的是凝聚力,大家能在一起把拳头握紧那么产生的力量就不紧紧是能以1+1=2 来 ...

  5. 《大道至简-Team》

    已经学习了<大道至简>两章,我们了解了编程的本质和“懒人”造就了方法.书中没有提供给我们编程的技巧,捷径,而是从别的方面为我们讲解了编程的精义.第三章就为我们引入了“团队”这个概念. 我们 ...

  6. [转载]大道至简!!!从SAP HANA作为SAP加速器的方式,看ERP on HANA的春天

    I AM A ABAPER! 科技的进步,一定会使一些东西变得越来越精简! 大道至简!!! 文章很好!!!!!!!!!!! -------------------------------------- ...

  7. Strurts(四)——从Struts原型模拟看大道至简(含实例下载)

    首先,需要再次声明的是:struts是web层的框架.在介绍struts的第一篇文章就已经有了论述,如果不使用struts框架同样可以进行开发,但是需要在Servlet里面写大量的“if……else… ...

  8. java伪代码 大道至简第一章

    import.java.大道至简.*; //一·编程的精义 import.java.编程的精义.*; public class BIANCHENGDEJINGYI { if(愚公死了) 愚公的儿子,孙 ...

  9. 大道至简第一章和java理论学时第一节。感受。

    这周上了本学期的第一节java课程.课件上说了一些学习java的基本思想.举了个“愚公移山”的例子.这可能就像刚接触一门新的语言,来练习输出“HelloWorld”一样,已成惯例. “愚公移山”的这个 ...

随机推荐

  1. 如何在WPF控件上应用简单的褪色透明效果?

    原文 https://dailydotnettips.com/how-to-create-simple-faded-transparent-controls-in-wpf/ 使用OpacityMask ...

  2. VSCode 设置 CPP 代码风格

    VSCode 设置 CPP 代码风格 按 Ctrl+, 打开设置,输入 format 找到. { BasedOnStyle: Google, IndentWidth: 4 }

  3. macbook Air安装OS系统,提示“请插入电源适配器”,实际已插电源却检测不到

    在重做Mac系统时需要插电源是众所周知的,但在同意协议之后,选择安装盘下一步时提示“请插入电源适配器”??WTF! 明明电源已经插上了却检测不到......气绝 解决方案:按住组合件"shi ...

  4. qt 中lineEdit->setText()输出double

    在qt中需要将获取到的double 值在ui界面上显示出来,便于观察.但是lineEdit控件的setText()要求的参数是string. 所以我们先要进行转化,将double 转化为string. ...

  5. oracle函数 COALESCE(c1, c2, ...,cn)

    [功能]返回列表中第一个非空的表达式,如果所有表达式都为空值则返回1个空值 [参数]c1, c2, ...,cn,字符型/数值型/日期型,必须类型相同或null [返回]同参数类型 [说明]从Orac ...

  6. Spring读取配置文件,地址问题,绝对路径,相对路径

    Spring在读取配置文件时,是相对于bin,或者WEB-INF的: “applicationContext.xml”就是找bin或WEB-INF及子文件夹下的文件: “/res/applicatio ...

  7. C. Tokitsukaze and Duel 前缀维护

    枚举每一个连续的K的第一个位置,如果是先手胜利,那么前[1 , i-1 ]和[ i+k , n ]区间要么全是0,要么全是1 如果能够平局,那么肯定是[1,i-1],以及[ i+k , n]中有两种情 ...

  8. visual studio 2013 修改mvc5的视图模板

    C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffol ...

  9. 防止SyntaxHighlighter.js的闪烁闪一下的方法

    SyntaxHighlighter.js是一个代码高亮的JS插件,使用也很简单,但是由于是浏览器段执行JS代码来着色,会出现视觉上闪一下的效果.比如你的20行代码网页打开显示高度为100px,但是Sy ...

  10. 在字符串中查找id值MySQL

    PHPmyadmin中sql语句 SELECT * FROM `hz_article_type` WHERE FIND_IN_SET( 5, items_id ) LIMIT 0 , 30 结果: S ...