`

编程的哲学思想

阅读更多

     编程上的那点事情儿

 

  我相信编写程序人人都可以学会,但是,编好程序。确实不是一件容易的事情。下面我们就谈谈编程这件事情上的哲学和思想,换句话说:就是编程上面的原则。

    (1)让每个程序做好一件事情。如果有新的任务,就重新开始,不要往源程序中加入新的功能而搞得复杂(除非,非这样做不可)

    (2)假设每个程序的输出都会成为另一个程序idea输入,哪怕那个程序还是未知的。

    (3)输出中不要有无关的信息干扰。避免使用严格的分栏格式和二进制格式输入。不要坚持使用交互式输入。

    (4)尽可能早的将设计和编译好的软件投入使用。哪怕是操作系统也不例外,理想情况下,应该是在几星期内。对拙劣的代码别犹豫,扔掉重写。

    (5)你无法断定程序会在什么地方消耗时间。问题经常出现在想不到的地方,所以别急于胡乱找个地方改代码,除非你已经证实了问题所在。

    (6)估量。在你没有对代码进行估量,特别是没有找到最耗时间的那部分之前,别去优化速度。

    (7)花俏的算法在n很小时通常很慢,而n通常很小。花俏的算法的常数复杂而大。除非你确定n足够大,否则不要用花俏的算法。

    (8)花俏的算法容易出现bug。而且比简单的算法更加难以维护。

    (9)数据压倒一切。如果已经选择了正确的数据结构并且把一切都组织得井井有序,正确的算法也就不言自明了。程序的核心是数据结构,而不是算法。

看到上面的这些,作为程序猿的你是不是有一些独特的感悟。在编写程序的同时,多想想程序中的哲学是很重要的。要作为一个工程师而不是一个只会写代码的coder。

编程思想----是慢慢养成的一种编程习惯。多看大牛的东西,总是没错的。故而推荐大家一本书《Java编程思想《软件工程思想点我下载

跟多技术资源猛戳这里

编程之路其修远兮,做一个思想者吧。刚把得。。。。

分享到:
评论

相关推荐

    软件接口的哲学思考与开发实例

    统一的软件接口模型,为什么需要接口?接口的定义是什么?让我们站在哲学高度来认识接口。

    C++编程思想:C++的内在哲学原则

    这本书从哲学的高度,深入浅出的阐述了C++的编程思想,包括对象、继承、虚函数等等概念,让人从现实世界的真切感中理解抽象世界的概念。

    Python 模块 1_模块化编程理念_什么是模块_哲学思想.mp4

    Python 模块 1_模块化编程理念_什么是模块_哲学思想.mp4

    哲学家就餐(死锁与非死锁解法)(图形界面)

    在 windows 环境下,利用高级语言编程环境(限定为 VS 环境或 VC 环境或QT)调用 CreateThread 函数哲学家就餐问题的演示。要求:(1)提供死锁的解法和非死锁的解法;(2)有图形界面直观显示哲学家取筷子,吃饭,...

    UNIX编程艺术1~3试读

    《UNIX编程艺术》主要介绍了Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的Unix编程大师、开源运动领袖人物之一Eric S.Raymond倾力多年写作而成。包括Unix设计者在内的多位领域专家也为...

    编程之道 Geoffrey James

    行哲学性思考、有十多年工作经验的程序设计师--Geoffrey James 之手。 在本书中,作者以一种幽默、辛辣的眼光审视着发生在程序设计室里的各种各样 的小故事,并运用东方的哲学体系进行深层次的思考和理解,即...

    解析极限编程:拥抱变化(原书第2版)

    《解析极限编程:拥抱变化 原书第2版 》介绍了XP背后的思想 它的根源 哲学 情节等 它将帮助读者选择是否在项目中使用XP时做出明智的决策 《解析极限编程:拥抱变化 原书第2版 》的另一个目的是帮助那些已经在使用XP的...

    哲学家就餐:Java多线程实例图形版

    哲学家就餐是一个经典的Java多线程编程的实例,这是图形版。涉及到线程同步与互斥,临界区访问问题以及避免死锁的方法。    哲学家就餐:有五个哲学家绕着圆桌坐,每个哲学家面前有一碗面,两人之间有一支筷子,...

    编程之道-----(中文版)

    您将要读到的《编程之道》一书便是出息美国的一位善于进行哲学性思考、有十多年工作经验的程序设计师--Geoffrey James 之手。 "When you have learned to snatch the error code from the trap frame, it will be...

    解析极限编程 拥抱变化.z01

     这本书介绍了xp背后的思想——它的根源、哲学、情节等。它将帮助读者选择是否在项目中使用xp时做出明智的决策。本书的另一个目的是帮助那些已经在使用 xp的读者更好地理解它。 对程序员而言,xp做出的承诺是他们...

    解析极限编程 拥抱变化.zip

     这本书介绍了xp背后的思想——它的根源、哲学、情节等。它将帮助读者选择是否在项目中使用xp时做出明智的决策。本书的另一个目的是帮助那些已经在使用 xp的读者更好地理解它。 对程序员而言,xp做出的承诺是他们...

    解析极限编程-拥抱变化(原书第2版).中文版

     这本书介绍了xp背后的思想——它的根源、哲学、情节等。它将帮助读者选择是否在项目中使用xp时做出明智的决策。本书的另一个目的是帮助那些已经在使用 xp的读者更好地理解它。 对程序员而言,xp做出的承诺是他们...

    《编程之道》

    他以一种幽默、辛辣的眼光审视着发生在程序设计室里的各种故事,并运用东方的哲学思想进行深层次的思考和理解。本书语言优美、比喻生动,叙述了这些看似简单但蕴含深奥道理的故事。 本书配以中英文对照,使从事...

    《UNIX编程艺术》(Eric S·Raymond[美] 著,姜宏、何源、蔡晓俊 译)

    本书主要介绍了Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的Unix编程大师、开源运动领袖人物之一Eric S. Raymond倾力多年写作而成。包括Unix设计者在内的多位领域专家也为本书贡献了宝贵的...

    编程之道Geoffrey James

    美国是个软件工业和程序设计水平处于世界依靠地位的国家, 我们是不是可以从 那里借鉴点什么呢?您将要读到的《编程之道》一书便是出息美国的...行哲学性思考、有十多年工作经验的程序设计师--Geoffrey James 之手。

    UNIX编程艺术

    《UNIX编程艺术》主要介绍了Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的Unix编程大师、开源运动领袖人物之一Eric S. Raymond倾力多年写作而成。 PDF格式,22M。

    贝叶斯方法与概率编程初步

    介绍贝叶斯的哲学思想与意义,即通过观察新发生的现象来更新对某一事件发生的可信度做出判断

    Unix编程艺术

    本书主要介绍了Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的Unix编程大师、开源运动领袖人物之一Eric S. Raymond倾力多年写作而成。包括Unix设计者在内的多位领域专家也为本书贡献了宝贵的...

    The Tao Of Programming —— 编程之道

    行哲学性思考、有十多年工作经验的程序设计师--Geoffrey James 之手。 在本书中,作者以一种幽默、辛辣的眼光审视着发生在程序设计室里的各种各样 的小故事,并运用东方的哲学体系进行深层次的思考和理解,即进行...

    Unix编程艺术.pdf

    unix是什么,它是一个操作系统,汇聚了很多黑客的智慧,他是一个开放,自由,KISS,单一的系统 它包含了一些哲学基础 模块原则:使用简洁的接口拼接的部件 清晰原则:清晰透明,容易理解 组合原则:这个基于模块原则...

Global site tag (gtag.js) - Google Analytics