`
zhouxwyeah
  • 浏览: 21071 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

程序员需要知道的97件事情之 ------- 简单就是美

阅读更多
本人英语抄过4级,奇烂无比,翻译这个实属蛋疼,错误是肯定有的,而且是翻不出来就只是随便猜,欢迎指出,谢谢。但愿我能够翻完我看的懂的....
    原链接:oreilly的程序员需要知道的97件事http://programmer.97things.oreilly.com/wiki /index.php/Contributions_Appearing_in_the_Book

下面是一句名言,我认为理解它,铭记在心,对于软件开发者有很好的帮助:
风格之美、和谐、优雅和优美的节奏全在于简单。 --柏拉图
我认为这一句话总结了我们软件开发者热切期望的价值。
下面描述了我们代码所努力到达的目标:
1. 可读性强 2。易于维护 3。 快速开发 4。 良好的质量
柏拉图告诉我们能达到这些质量要求就是简单。

什么是优美的代码? 这可能是一个非常主观的问题。对于美丽的理解依赖于每个人的背景。正如我们对于很多事物的立即都依赖我们自身的背景。艺术的教育背景的对于美丽的理解可能和计算机背景的差距就非常大。主修文科在软件优美方面趋向于比较软件和艺术工作,而计算机专业更加趋向讨论它的均衡性和黄金分割比之类,试着让本质接近公式之类的东西。依照我的经验,简单是唯一能够两边都符合众多参数的基础。
  回想以前那些你学习过的代码。如果你没有花大量时间去学习他人的代码,那请停止现在手中正在学习的代码,并去寻找一些优秀的开源代码来学习。我说的是真的! 搜索一些自己母语的一些知名技术专家所写的代码,然后再去学习它!

你理解了?很好,我们在哪儿?我现在找出了那些代码中和我理解相似的地方,而且我认为优美有很多共性,最主要的就是简单,我发现无论系统从整体上来是多么的复杂,那些独立的模块都保持着简单的原则。简单的对象符合单一责任原则,可以专注于函数的命名。有些人认为5到10行的简短函数式极限,但是有些编程语言很难做到这点,但是,我仍然认为达到如此简洁是逞心如意的目标。

优美代码的底线就是简单的代码。每个独立的部分尽量保持简单,和其他模块之间的关系尽量简单,负责简单的责任。让代码简单,方便测试,保持系统在更高的系统吞吐量的开发速度,这也是让我们系统更加易于维护的一个途径。

0
2
分享到:
评论

相关推荐

    测试之美(高清程序员十本必读书之一)

    就像离不开坚实的架构和优雅的代码一样,成功的软件同样离不开严谨...Rex Black揭示了在25年的时间里让利益相关者满意是一件美丽的事情 数学家John D. Cook将一种基于复杂性和完整性的经典美运用到随机数发生器的测试中

    代码之美(中文完整版).pdf

    每一章都是由一位或几位著名程序员针对某个问题给出的完美的解决方案,并且细述了这些解决方案的巧妙之处。 本书既不是一本关于设计模式的书,也不是一本关于软件工程的书,它告诉你的不仅仅是一些正确的方式或者...

    送给女朋友的精美网页

    在描述中提到的“每件事情的日期全部都改成自己的日期,图片替换成自己的图片”,这是对网页内容个性化定制的要求。在HTML中,我们可以使用`<time>`标签来插入日期,并通过JavaScript动态更改其值,以展示特定的日期...

    代码之美 Beautiful Code

    . 这本书不能被简单地归类为又一本设计模式,或者又一本用来指导事情对错的软件工程条例。相反,这本书给您提供了一个机会,让您有机会站在一些软件设计巨人的肩膀上,透过他们的视野,来看待我们身处的世界。.....

    二十三种设计模式【PDF版】

    主要是介绍各种格式流行的软件设计模式,对于程序员的进一步提升起推进作用,有时间可以随便翻翻~~ 23种设计模式汇集 如果你还不了解设计模式是什么的话? 那就先看设计模式引言 ! 学习 GoF 设计模式的重要性 ...

    一个属性设置,一次数据绑定,展现给你漂亮的图表

    Chartlet如此简单的原因还有一个,就是对于一般的程序员来说自己调配颜色、设置边框、投影等等属性来生成一幅很漂亮的图表确实是一件不容易的事情,Chartlet把最漂亮的效果和颜色都搭配好了,你只要选来用就好了,让...

    计算机经典名言.pdf

    这句话强调了好的程序员的特点,好的程序员需要具备编程能力和解决问题的能力。 知识点17: 软件的作用 好的软件的作⽤是让复杂的东西看起来简单。这句话强调了好的软件的作用,好的软件可以使复杂的东西变得简单...

    carML:carML-美味而甜美的ML方言

    不需要程序员付出太多的精神成本 “安全” 快速实施和理解 借鉴了Scala,BitC,OCaml,F#,Digamma,Yeti和PowerLogo的想法 这至少是我尝试过这种事情的第三次(可能是第五次),所以根本不要介意我。 这是我第一...

    C语言入门经典(第4版)--源代码及课后练习答案

    作者: (美)Ivor Horton 译者: 杨浩 出版社:清华大学出版社 ISBN:9787302170839 上架时间:2008-4-15 出版日期:2008 年4月 开本:16开 页码:571 版次:4-1 编辑推荐  本书是编程语言先驱者Ivor Horton的经典...

    UNIX编程艺术 - 扫描版 - 书签

    其核心思想之一就是“小即是美”,即每个程序都应该专注于做好一件事情,并做到极致。这种设计思路不仅提高了系统的稳定性和可靠性,也为用户提供了更加灵活的使用方式。例如,在UNIX中,一个简单的命令可以完成一项...

    Reverse-Mode-Automatic-Differentiation-Cpp:无需使用任何库即可在C ++中实现逆向模式自动区分的简单实现

    反向模式自动微分Cpp ... 为了使事情简单和井井有条,有一个简单的类层次结构可以帮助维护代码,它看起来像这样: Node -> This is the base class the building block of anything else (also ac

    java简易版开心农场源码-text:文本

    java简易版开心农场源码 随手记 傻大猫 20190711 你可能会发现,在日常生活中,大部分人愿意开头而不愿意收尾,九十九步都走了,就是懒得把最后一步走完。这可能是人的天性,凡事差不多就可以了,总觉得最后一点即使...

    《Linux-Unix设计思想》经典读后感10篇.docx

    1. **小既是美(Small is Beautiful)**:这一设计原则强调编写小巧、专注的程序,每个程序只做一件事情并做好。这样的程序易于维护、测试和组合,形成强大的系统。 2. **单一职责原则**:程序应专注于完成一个特定...

    c#学习笔记.txt

    c#学习笔记(1) 51099在线学习网发布 文章来源:网络收集 发布时间:2006-05-25 字体: [大 中 小] ... 1, 结构(struct) 与 类(class) ...有人说,选择C#意味着选择MS(在中国的程序员当中,这并不是件值得自豪的事...

    燕骏团队单片机C语言编程规范v3.0

    为对象起一个清晰的名字并不是简单的事情。首先能认识到名称的重要性需要有一个过程,这也许跟谭式C程序教材被大学广泛使用有关:满书的a、b、c、x、y、z变量名是很难在关键的初学阶段给人传达优秀编程思想的;其次...

    Practical Clojure.pdf

    Clojure鼓励开发者尝试在其他语言中过于复杂而通常不会尝试的事情,例如并发编程、不可变性和惰性数据结构。因为Clojure运行在Java虚拟机(JVM)之上,开发者可以继续使用熟悉的平台、库和工具。 Clojure语言中的...

    Chartlet 免费好用的.net图表控件【有Web和Win程序,可用C#.NET、VB.NET程序】

    我们让Chartlet如此简单的原因还有一个,就是对于一般的程序员来说自己调配颜色、设置边框、投影等等属性来生成一幅很漂亮的图表确实是一件不容易的事情,我们把最漂亮的效果和颜色都搭配好了(设计工作我们已经帮你...

    PHP基础教程 是一个比较有价值的PHP新手教程!

    PHPLIB就是最常用的可以提供一般事务需要的一系列基库。 - 可扩展性 就像前面说的那样,PHP已经进入了一个高速发展的时期。对于一个非程序员来说为PHP扩展附加功能可能会比较难,但是对于一个PHP程序员来说并不...

    用汇编语言对ATtiny13A进行编程-电路方案

    有时,您可能想使用微控制器来完成一些简单的事情,但不仅是ATmega328P(Arduino Uno的IC)之类的芯片,而且价格也相当昂贵。这就是为什么使用ATtiny系列的AVR芯片很棒的原因。ATtiny13A只有64个BYTES的RAM和1KB的...

    Groovy语法系列教程之字符串(三).pdf

    Groovy的设计哲学是让程序员能够用更少的代码做更多的事情,这体现在它的语法上,如无需声明变量类型、支持闭包和运算符重载等特性。 #### 字符串的种类与特性 Groovy中的字符串处理与Java有所不同,主要表现在字符...

Global site tag (gtag.js) - Google Analytics