zoukankan      html  css  js  c++  java
  • 大道至简第一章读后感

    在这个飞快旋转的世界,每个人都有不同的角色。作为程序员,我们必须要掌握编程的精髓,要意识到,我们所做的每一个决定都是一个折衷-这就是编程的本质,要想成为优秀的程序员 ,就要理解这些折衷的本质,并且在我们编写的代码中都善加处理。

    《大道至简》这本书是一本编程佳作,是一本闪烁思考光芒的技术散文集,值得细细品味。

    作者引入愚公移山的故事。愚公,两千多年前,集项目组织者,团队经理,编程人员,技术分析师等于一身的工程名家。愚公移山看似是愚蠢的工程,实际上是经过深思熟虑的,他移山的目标非常明确,选择了一个井然有序,可以实现的技术方案,叙述了整个工程的实现顺序,描述了可能存在的分支结构,描述了完成整个工程所必需的循环结构,作为优秀的程序分析师,愚公论述了这个问题的可能性,在愚公的论述中,我们看到了编程的根本:顺序,分支和循环,通过简单的编程实现,这就是编程的精义。

    会编程吗?作为编程初学者,大部分人把这作为了智力考评,其实只是每个人都习惯为自己贴上不会的标签,世上无难事只怕有心人,掌握了精髓,没有你不会的。当你熟悉了一门语言之后,你会发现,编程语言只有喜欢与不喜欢的问题,没有会不会的问题。任何的一门语言,你都可以在两周内掌握并开始熟练编程。因为任何的一门语言,他们的底层函数库都是那么的相似,而他们API都是那样的依赖于操作系统。A语言里有的,B语言里也基本都有。

    通常而言,语言的差别主要表现在适用范围上。一些语言适合做数值处理,小数点后可以精确到原子级,而小数点前则可以表达到宇宙之无穷;另一些语言则适合做图形处理,它的底层函数库比其它语言可以快上十倍或数十倍;还有一些语言则适合于做网页,要用它来做一个通讯薄软件都将是史无前人的挑战。

    程序编程作为一种行为,只知道其逻辑方法就可以了。所谓编程实际上是把一件事情交给计算机去做,你认为这件事该如何做,就用“程序语言”的形式描述给计算机。如果你原本就不明白如何去做,那么你也不要期望计算机去理解你想要做什么。

    所以编程的第一要务是先把事情分析清楚,把事件先后的逻辑关系和依赖关系搞清楚,然后再去代码实现。时刻记住:程序=数据+算法,算法是对一个程序的逻辑实现的描述,而结构是逻辑实现所依附的数据实体。只要开发人员将这个程序的算法设计出来了,把结构描述出来了,那么程序就已经定型了。

    编程是简单的,我们是什么样的人,取决于我们选择做什么样的人,选择做一个优秀的程序员,并为之努力,天下没有不付出的收获。

  • 相关阅读:
    「日常训练」More Cowbell(Codeforces Round #334 Div.2 B)
    「日常训练」Battle Over Cities
    「日常训练」湫湫系列故事——设计风景线(HDU-4514)
    「日常训练」Caterpillar(POJ-3310)
    python压缩解压文件
    python图像处理
    python删除文件或者目录
    python循环执行程序的装饰器
    python中logging模块的使用
    python中yield迭代器
  • 原文地址:https://www.cnblogs.com/qianxia/p/4821720.html
Copyright © 2011-2022 走看看