极限编程核心价值:简单(Simplicity)

写在前面

在编写 ASP.NET Core 项目时,深感项目设计的无力感,在软件设计方面我还有很长的路要走。我一直以来都把代码当作一种艺术的存在,认为自己是个“艺术家”,其实就是个“三脚猫”。软件开发方式不精,设计模式半生不熟,自以为懂得很多,其实狗屁不是,实在不好意思说我学过软件工程,因此我打算静下心来从头开始学习。微软的 ASP.NET Core 文档给了一些很好的参考资料,我打算把他们都整理翻译出来,就先从软件开发方式开始,开发方式算是软件诞生的储备知识吧。而在敏捷开发中,极限编程算是小团队开发方式中比较有名的。

在翻译中带着学习开发方法和专业词汇的目的,使得整个过程并不枯燥,反倒有些许乐趣。翻译中最困难的其实不是词汇障碍,因为这种国外的入门文章也都是给国外菜鸟看的,反倒是如何把文章翻译的不生硬倒让我很头疼,毕竟不是专业的,有些就是英语一看就是那个意思,翻译成汉语就很别扭。还有部分文章给了名人名言,这才是最难的,读起来像石头一样硬的名句,不用想了,我翻译的,那种非常优美的,也别想了,能百度到的。如果你有什么建议的话,请留言告诉我。

极限编程系列翻译的部分不会按顺序发布,等全部翻译完了弄个目录就行了。

原文:https://deviq.com/simplicity

简单(Simplicity)

简单(Simplicity)是极限编程(Extreme Programming,XP)的核心价值之一。它为许多极限编程,敏捷(Agile)开发的原则和实践提供了指导和基础。

我们会做需要和要求的事情,但不会更多。这将最大化迄今为止所做的投资创造的价值。我们将采取简单的步骤来实现我们的目标,并减轻失败的发生。我们将创造我们引以为傲的东西,并长期保持合理的成本。 We will do what is needed and asked for, but no more. This will maximize the value created for the investment made to date. We will take small simple steps to our goal and mitigate failures as they happen. We will create something we are proud of and maintain it long term for reasonable costs. 来自 ExtremeProgramming.org

第一个精益原则(Lean Principles)是消除浪费(Eliminate Waste)。在软件开发中,浪费的一个来源是不必要的代码或功能。通过在软件中保持简单(Simplicity),我们减少了我们需要去设计、编码、测试和维护中的非核心代码和功能的数量。我们应该努力确保我们的代码遵循简单的设计原则,以便将来易于更新。

语录

  1. “简单是复杂的最高境界。” —— 达·芬奇 “Simplicity is the ultimate sophistication.” – Leonardo da Vinci
  2. “任何事情都应该尽可能做到简单,但不要过于简单。” —— 阿尔伯特·爱因斯坦 “Everything should be made as simple as possible, but not simpler.” – Albert Einstein
  3. “无论是性格、方式还是作风,事实上对于所有事物而言,简单是最为可贵的。” —— 亨利·沃兹沃斯·朗费罗 “In character, in manner, in style, in all things, the supreme excellence is simplicity.” – Henry Wadsworth Longfellow
  4. “这一直是我的一个座右铭 —— 集中和简单。简单,可以比实现复杂的东西更难。你必须花很多力气去让你的思维变得简单、有条理。但最终它的价值非常大,因为一旦你到达了那一步,你就可以撼动山脉了。” —— 史蒂夫·乔布斯 “That’s been one of my mantras — focus and simplicity. Simple can be harder than complex: You have to work hard to get your thinking clean to make it simple. But it’s worth it in the end because once you get there, you can move mountains.” – Steve Jobs
  5. “完美境地,非冗杂,而不遗。” —— 安东尼·德·圣-埃克苏佩里 “Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away.” – Antoine de Saint-Exupéry
  6. “傻瓜忽视复杂性;实用主义者忍受它;专家回避它;天才去除它。” —— 艾伦·佩利 “Fools ignore complexity; pragmatists suffer it; experts avoid it; geniuses remove it.” – Alan Perlis
  7. “简单并不先于复杂性,而是跟随它。” —— 艾伦·佩利 “Simplicity does not precede complexity, but follows it.” – Alan Perlis

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI科技大本营的专栏

一直不明白,程序员为何老加班!

今天说好的需求这样做,亲自找到他跟他确认,然后过几天,他又反悔了。说自己从没说过,要另外的实现方式。

1213
来自专栏程序员宝库

2018年3月份全球编程语言排行榜

TIOBE发布 2018 年 3 月全球编程语言排行榜,Java、C、C++ 位列前三,Python 紧随其后,PHP 依然在第七位,Ruby 重回前十,Jul...

3657
来自专栏程序人生

程序员字典:「牛逼」

昨天发了中国团队的招聘贴 新的冒险,基本要求这一页我是这么写的: ? 作为一个已经命中注定和代码打大半辈子交道的程序员,我们职业生涯的「小」目标大多是 成为一个...

42515
来自专栏IT派

【面试】我是如何在天猫、蚂蚁金服、百度等大厂面试中被拒的

本人16年毕业于普通二本院校网络相关专业,工作经验两年半,目前就职业于一家普通民营企业。 由于非985、211学历硬伤,校招进大厂的门槛远高于同届985、211...

1610
来自专栏大数据文摘

怎样匹配?6大婚恋网站帮你不再孤单

1162
来自专栏PPV课数据科学社区

为什么我们需要教小孩子编程

  现在的大多数学校,大多没有设置编程类课程。对此,我真心不能认同。所以,当“sheknows”网站要求我写点关于教小孩子写代码的内容时,我觉得这是一个好机会。...

2907
来自专栏华章科技

大数据分析公众号阅读量10万+文章标题里的秘密!

在微信公众号每天推送的文章汪洋里,有哪些文章可以突破十万+,登上热门榜,从此走上文生巅峰呢?

862
来自专栏速成应用小程序开发平台

速成应用告诉你餐饮业如何借助微信小程序线上线下优势营销?

中国的餐饮行业是朝阳行业中蓬勃发展的一种新兴古老产业。说她古老是因为自从产生了社会分工就有了餐饮业,有了从业人员,可以说伴随了整个人类社会发展的每一个阶段。说她...

1122
来自专栏新智元

【深度解析】谷歌搜索算法如何排名医疗广告?

【新智元导读】青年魏则西的不幸病逝激起了国内公众对搜索引擎虚假医疗网络广告问题的热议。提到搜索引擎,必须想到谷歌,那么谷歌是如何处理医疗广告的呢,答案是使用机器...

2987
来自专栏VRPinea

AR科普 | 连苹果都看好的AR,到底有多牛逼?

35710

扫码关注云+社区