zoukankan      html  css  js  c++  java
  • 大道至简,知易行难

    大道至简 知易行难

    复杂的事情简单去做,简单的事情重复去做,重复的事情用心去做,长期坚持,自然功成。——引言

    在老师的建议下,我利用暑假前两周的时间系统的阅读了周爱民先生的《大道至简》,这本书的宗旨正如作者在书中提到的那样,他只想写一本“阐明软件工程的思想核心”的书。这本书要让读者很容易就读明白,还要很容易就想通,还要很容易就知道:工程其实很简单,只是大家把它做复杂了。

    书中写的是作者在实践中总结的经验和道理。作者对软件工程相关的问题有许多感悟,并且能够生动的表达。这本书中最可贵的就是思想,仔细体会就有不一样的启发。我在这里列举书中的几个观点:留下历史记录,记录下自己的决策过程等,方便后来者;经验,是源于对过去的思考,而不是对过去的复制;不要压抑你团队成员的激情,他们提出自己的想法之后,要鼓励与引导,即使你认为不合理,或有错误,也要以引导的形式,或者干脆让他去犯这个“小错误”,从而让他在这个上面有更深刻的认识与印象。

    由于自己还没有接触过公司的团队合作,没有参与过大型团体项目的开发,所以对于书中提到的“团队“的认知还较为浅显,在这里只是稍微提一下自己对于”团队“的理解。一个团队不但要有远期的目标,即共同的愿景;而且对短期的目标也要清晰,即里程碑。一个团队要注重整体目标,从全局把握上,某一局部出现问题之后,要能尽快发现,并迅速调整。

    接下来我想提一下自己对于书中提及的”程序算法思想“的理解,目前我们已经系统的学习了C和C++,正处于自学JAVA阶段,对于计算机的编程语言也算是有了初步的了解。正如周爱民先生所说的那样:编程的根本——顺序,分支,循环;程序=算法+结构。所以编程的第一要务是先把事情分析清楚,事件先后的逻辑关系和依赖关系搞清楚,然后再去代码实现。积极工作和勤于思考都要占时间。算法是对一个程序的逻辑实现的描述,而结构是逻辑实现所依附的数据实体。

    大一所接触的代码虽然较为简单,但是也有了一定的编程基础,正在逐步养成自己的编程习惯,《大道至简》这本书中提到的编程思想对我们来说无疑是指路明灯。对于大的编程算法——化繁为简,循序渐进。这意味着,也许可以,从这些小单元开始,启发式的构建逐步复杂化的过程,在头脑中有自己的清晰的逻辑思路,从而能够循序渐进的学习算法,完成算法。而不是一开始就直奔大型算法而去。

    接触的编程语言多了之后,难免会将之进行比较,比较哪一种编程语言编写代码更为便利。在《大道至简》这本书中便给了我们答案:语言最重要的是设计目标。 设计目标决定了它用来做什么效率最高。而从程序员的角度来看,选择语言的标准,就是能够最高效的表达自己的思想。所以语言不分好坏,只是哪一种更适合罢了。

    总之《大道至简》这本书总结的非常好,其中的一些想法一看就是多年经验的沉淀,虽然目前自己阅历较少,不能完全理解书中的某些观点,但是对于自己的算法思想还是有了很大的改变。大道至简,知易行难,明白认知事物的规律道理是一回事,能够做到做好是另外一回事,让我们在今后做人做事过程中,时时记住并体会。

  • 相关阅读:
    python10.31
    python10.29
    python10.28
    python10.27
    python10.25
    python10.24
    python10.23
    四边形不等式与决策单调
    0x57~0x59
    0x55~0x56
  • 原文地址:https://www.cnblogs.com/zql98/p/9343648.html
Copyright © 2011-2022 走看看