著名编程语录
一个好的程序员应该是那种过单行线都要往两边看的人。
——Doug Linder, 系统管理员
任何一个工具,它的一个最重要的、同时也是最难以做到的方面就是对那些学习使用这个工具的人在使用习惯上的影响。如果这个工具是一种编程语言,那么,这种影响——不管我们是否喜欢——将是一种思考习惯上的影响。
—— Edsger Dijkstra, 计算机科学家
抽象化是一种非常的不同于模糊化的东西 … 抽象的目的并不是为了模糊,而是为了创造出一种能让我们做到百分百精确的新语义。
—— Edsger Dijkstra
除数学外,对本土语言的异常的精通会是一个计算机程序员的最宝贵的财富。
—— Edsger Dijkstra
C语言很容易让你犯错误;C++看起来好一些,但当你用它时,你会发现会死的更惨。
—— Bjarne Stroustrup,C++语言的创始人
评论:解决问题大多数都很容易;找到问题出在哪里却很难。
—— 无名
看看目前我们的计算机编程上的这种糟糕的状态,软件开发很显然仍然处于一种黑色艺术状态,仍然毫无工程规范可言。
—— 比尔·克林顿,美国前总统
长久以来一个问题一直困扰着我,为什么有些东西如此昂贵,如此的高科技,却毫无用处,就像我知道的,计算机虽然是台笨机器,却有能力做出难以置信的智能事情,而程序员虽然是一些聪明的人,但却老是做难以置信的傻事情。他们呀,简言之,是对绝配。
—— Bill Bryson, 作家, 出自《Notes from a Big Country》
给与足够的眼球,所有的Bugs都很容易发现(例如,大量的beta测试,结对开发,所有的问题都能很快的发现和修复)
—— Eric S. Raymond, 程序员,开源软件的倡导者, 出自《The Cathedral and the Bazaar》
高质量的代码就是对程序自己最好的注释。当你打算要添加注释时,问问自己,“我如何能改进编码以至于根本不需要添加注释?”改进你的代码,然后才是用注释使它更清楚。
—— Steve McConnell, 软件工程师,作家, 出自 《Code Complete》
嘿,编译通过了!装包吧!
—— 无名
任何优秀的大软件里面都是一个优秀的小程序。
—— Charles Antony Richard Hoare, 计算机科学家
我们应该注意到,没有一个受过伦理教育的软件工程师会同意开发出“摧毁巴格达”的程序。然而基本的职业道德却可以要求他们开发出“摧毁城市”的程序,巴格达只是这个程序的一个参数。
—— Nathaniel S.Borenstein,计算机科学家
管理程序员就像是在放养一群猫。
—— 无名
用代码行数来评估程序的开发进度,就好比是拿重量来评估一个飞机的建造进度。
—— 比尔·盖茨,前微软总裁
在一种编程语言中,即使有再多的好程序被诋毁指责,也要比被说成完美无缺好 — 好的多。
—— Bjarne Stroustrup, 出自 《The Design and Evolution of C++》
程序应该是写给其他人读的,让机器来运行它只是一个附带功能。
—— Harold Abelson and Gerald Jay Sussman,计算机科学家和作者,出自《The Structure and Interpretation of Computer Programs》
真正的程序员从来不注释他们的代码。如果你做不到这样,也就说明你不能使你的程序易于理解。
—— 无名
简单是稳定的前提。
—— Edsger Dijkstra
C语言——这是一种既有汇编语言强大的功能,又有汇编语言的灵活性的编程语言。
—— 无名
最初90%的开发工作将会用去你最初90%的开发时间。剩下的10%的开发量将会用去你另外一个90%的开发时间。
—— Tom Cargill, 贝尔实验室的面向对象编程专家
对于增加一个功能点所付出的代价,你要明白的很重要的一点就是,它不仅仅指开发这个功能所消耗的时间。它同时还包括带来的额外的给以后扩展造成的困难。不错,任何的功能特性都是能实现的——只要有足够的时间。除了这些将来会出现的问题外,你最终还会使你的程序变得脆弱,最终连一个绝对简单的功能都越来越难以和现有的混乱的web结合起来。应对此问题的办法是你应只接受那些不会导致冲突的功能。
—— John Carmack, 计算机游戏开发
性能的关键是精简,而不是一堆的优化用例。除非有真正显著的效果,否则一定要忍住你那些蠢蠢欲动的小微调的企图。
—— Jon Bently 和 M. Douglas McIlroy, 同为贝尔实验室的科学家
用C写的最后的一个好东西就是舒伯特的第九交响乐。
—— Erwin Dieterich, 程序员
使用C++的问题就在于 … 这种语言有一种很大的脾气,在你想做任何事情之前你必须把所有的知识都掌握才行。
—— Larry Wall, Perl语言的开发者
开发的越早,程序花费你的时间越长。
—— Roy Carlson, 威斯康星州大学
原型的价值就在于它对你的教育,而不是代码本身。
—— Alan Cooper, 软件作者, 出自《The Inmates are Running the Asylum》
世上只有两种编程语言:一种是总是被人骂的,一种是从来没人用的。
—— Bjarne Stroustrup
世上有两种设计软件的方法。一种是尽量的简化,以至于明显没有任何缺陷。而另一种是尽量复杂化,以至于找不到明显的缺陷。
—— Charles Antony Richard Hoare
丑陋的程序和丑陋的吊桥一样:他们都容易坍塌,因为人类(尤其是工程师们)的审美定义跟人们对复杂事物的处理和理解密切相关。一种编程语言如果不能使你写出优美的代码,那它也就不能使你写出好的程序。
—— Eric S.Raymond
数周的编程能省掉你几个小时的计划时间。
—— 无名
当一种能够让程序员通过简单的英语来编程的编程语言诞生后,你会发现程序员们都不会说英语。
—— 无名