編程名言集錦
- C.A.R. Hoare, The 1980 ACM Turing Award Lecture
There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies and the other way is to make it so complicated that there are no obvious deficiencies.
有兩種軟件設計的方式:一種是使它足夠簡單以致于明顯沒有缺陷,另一種則是使它足夠復雜以致于沒有明顯的缺陷。
- E.W.Dijkstra
The computing scientist's main challenge is not to get confused by the complexities of his own making.
計算科學家的主要挑戰是不要被他自己造成的復雜性搞糊涂了。
- Gordon Bell
The cheapest, fastest, and most reliable components are those that aren't there.
最廉價,最快速,并且最可靠的部件是那些還沒被使用的。
One of my most productive days was throwing away 1000 lines of code.
我最多產的一天拋棄了1000行代碼。
When in doubt, use brute force.
若無把握,暴力破解。
- Jeff Sickel
Deleted code is debugged code.
需要調試的代碼都應該刪除。
- Brian W. Kernighan, P. J. Plauger
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
調試的難度兩倍于一開始的寫代碼。因此,如果你盡可能巧妙地編寫代碼,根據定義,說明你還不具備足夠的智商來調試它。
- Brian W. Kernighan
The most effective debugging tool is still careful thought, coupled with judiciously placed print statements.
最有效的調試工具是靜下心來仔細思考,輔之審慎地放置打印語句。
- Brian W. Kernighan
Controlling complexity is the essence of computer programming.
計算機編程的本質是控制復雜度。
- David Gelernter
Beauty is more important in computing than anywhere else in technology because software is so complicated. Beauty is the ultimate defence against complexity.
相比其他技術領域,美對于計算來說更為重要,因為軟件超乎尋常的復雜,而美是對復雜性的一種終極防御。
- Doug Gwyn
UNIX was not designed to stop its users from doing stupid things, as that would also stop them from doing clever things.
UNIX并不會阻止用戶干蠢事,因為那樣也會阻礙用戶做些聰明的事情。
- John Carmack
If you're willing to restrict the flexibility of your approach, you can almost always do something better.
限制方法的靈活性幾乎總會讓你把事情做得更好。
- John Osterhout
A program that produces incorrect result twice as fast is infinitely slower.
結果不對,程序再快都頂個屁用。
- Geer et al.
The central enemy of reliability is complexity.
可靠的最大敵人是復雜。
- Edsger W. Dijkstra
Simplicity is prerequisite for reliability.
簡單是可靠的先決條件。
- Peter Deutsch
The Eight Fallacies of Distributed Computing
Essentially everyone, when they first build a distributed application, makes the following eight assumptions. All prove to be false in the long run and all cause big trouble and painful learning experiences.
- The network is reliable
- Latency is zero
- Bandwidth is infinite
- The network is secure
- Topology doesn't change
- There is one administrator
- Transport cost is zero
- The network is homogeneous
分布式計算的八大謬誤
實際上,每個人,當他第一次構建分布式應用時,都會作出如下八個假設。長遠來看,這些假設都被證明是錯誤的,并且都造成了巨大的麻煩和沉痛的經驗教訓。
- 網絡可靠
- 零延遲
- 帶寬無限
- 安全網絡
- 拓撲不變
- 有個管理者
- 傳輸代價為零
- 網絡同構
- Jon Bentley, Doug Mcllroy
The key to performance is elegance, not battalions of special cases.
性能的關鍵是優雅,而不是大堆的特殊情況。
- Bill Gates
Measuring programming progress by lines of code is like measuring aircraft building progress by weight.
以代碼行數來衡量程序設計的進度,就好比以重量來衡量飛機的制造進度。
- John Johnson
First, solve the problem. Then, write the code.
首先,解決問題。而后,編寫代碼。
- Ken Thompson
You can't trust code that you did not totally create yourself.
你不能信任不是完全由你自己寫的代碼。
- Sean Parent
Good code is short, simple, and symmetrical - the challenge is figuring out how to get there.
好的代碼,短小、簡潔,并且勻稱 - 而真正的挑戰在于弄清如何達到這些目標。
- Voltaire
The best is the enemy of the good.
追求完美是優秀軟件的敵人。
- Dr. Pamela Zave
The purpose of software engineering is to control complexity, not to create it.
軟件工程的目標是控制復雜度,而不是增加復雜性。
- Olin Shivers
I object to doing things that computers can do.
我反對去做那些計算機可以做的事情。
- merb motto
No code is faster than no code.
沒有什么代碼會比沒有代碼速度更快。
- Dave Parnas
As a rule, software systems do not work well until they have been used, and have failed repeatedly, in real applications.
一般說來,軟件系統只有得到實際應用,并且經歷多次失敗,才能工作得很好。
- RnRS
Programming languages should be designed not by piling feature on top of feature, but by removing the weaknesses and restrictions that make additional features appear necessary.
程序語言的設計不應該是特性的堆疊,而應該去除那些使得額外的特性顯得必要的弱點和局限。
- Ryan Singer
So much complexity in software comes from trying to make one thing do two things.
軟件中如此多的復雜性皆來自于想在做一件事的同時多做幾件事。
(未完待續)
來源: http://blog.xiayf.cn/2015/06/02/programming-quotes/