小巧的软件:随着代码量的增加,你软件的复杂度也会随之增 加,每一次调整和变动的效果都会叠加,所以让你的程序代码尽可能的保持简洁。那么抵制这种代码复杂化的最好方法就是只做小巧的软件,它也意味着更少的功 能、更少的代码和更少的浪费。小巧的软件让你放弃对未来功能的规划,将重点放在解决现在的问题上。为什么呢?因为你所担心的未来的扩展通常不会立刻到来。 开发小巧的软件会给你带来如下的好处:
- 容易管理
- 少量的代码让你的维护变得简单
- 你可以更灵活的改变功能(代码修改的成本降低)
- 更少的BUGS和更少的客户支持
让你的开发人员敢于向不合理的功能需求宣战,他们知道如何简单的实现一个合理的功能,用最好的方法。
为快乐而编码:一个快乐的程序员会是一个高产的程序员,选择那些能够让你的团队保持激情的工具,而不要选择那些符合业界标准的陈旧的工具。你的成员需要有趣的、富有挑战的、能够让人感到自豪的,能够在8小时的工作内充分感觉到快乐的方式来工作。就像 37Signals 选择了 Ruby 作为他们的开发语言,他们用最大的热情推动了 Rails 框架的发展(在此之前Ruby还默默无闻)。当然不仅仅是开发语言,一个他们喜欢的平台、应用或者是框架,都能够给他们带来快乐。只有快乐的程序员才会写出简单的、可读的代码,他们拥有清晰的思路和一流的解决方法。
倾听你的代码: 优秀的代码是简洁而清晰的,倾听你的代码,它会告诉你哪里存在缺陷、如何去实现新的功能、以及哪种是更适合你的开发模式。你的新功能真的需要数周的上千行 的编码吗?你的代码会时刻提醒你,注意他的复杂度和膨胀的速度。你应该尽量用简单的方法在一个小时之内实现需要用十小时才能搞定的复杂思路。遵循简单和廉 价的原则,避免那些复杂的实现,留意你的代码,它是你思路的最好监督者。
为你的代码买单: 通常我们理解的债务都是金钱上的,其实也有很多其他的形式,例如你的代码和设计。就像你必须拿出你收入的一部分来纳税一样,在你的代码和实际交付之后,你 也必须花时间在他们的修改和调整上面。那些糟糕的代码和不合理的设计会成为你以后维护的巨大债务,你应该只把时间花在代码的小小调整上,而不是将主要部分 的开发重新来过。所以你需要认真地对待你的每一行代码和任何一个细节上的设计,不要让他们成为你维护的负担。
使用开放的格式: 你应该使用那些开发的协议和方式来封装你的数据,例如RSS或者标准API的形式,不要为了隐藏而使用一些私有的协议,这样对谁都不好。人们可以通过 RSS来按照自己喜欢的方式查看数据的更新,第三方的开发者也能够使用你的标准API来为你写扩展的应用,这样你就可以拥有一个沟通便捷和接口灵活的系 统。千万不要认为RSS只是用作Blog或者是新闻的更新,任何数据的更新同步都可以通过它来实现,还有API,尽量使用标准的格式来封装,例如XML- RPC或者是REST协议。其实你已经有很多成功的例子可以参考了:Google Maps API 和 Flickr API ,网络上有数以百计的扩展应用是通过他们开发的接口实现的,将你的系统开放给用户和开发者,你将会获得许多意想不到的收获。
相关推荐
《Getting Real》是一本由Web应用服务先驱者37Signals撰写的书籍,它提供了一种更为聪明、快捷、简单的方式来构建成功的Web应用程序。这本书针对企业家、设计师、程序员和市场人员,尤其适合那些想要打破传统软件...
• Getting Real是关于省略所有表达现实(图表,曲线,矩形,箭头,统计图),而构 建现实。 • Getting real 是追求精炼。更少的代码量,更少的软件,更少的功能,更少的文档工作, 更少无所谓的东西(而且大部分...
Getting Real是一种软件开发的方法论,它强调构建更小型、更快速、更高质量的Web应用。其核心理念是追求精炼,意味着更少的代码、更少的软件、更少的功能和更少的文档工作。Getting Real还倡导精益开发,即保持开发...
《Getting Real》不仅仅是一本介绍软件开发方法论的书籍,它还是一本关于如何构建成功在线业务的手册。通过遵循Getting Real所提出的原则,开发者和企业家们能够以更少的时间、精力和资源创建出更高品质的产品,并在...
### Getting Real:敏捷开发的新思路 #### 一、概述 《Getting Real》是一本由37Signals出版的书籍,该书共包含16章及91篇短文,旨在为Web应用开发提供一种新的方法论——即“Getting Real”方法。这种开发方式...
详细介绍基于网络的软件公司37signals的业务,设计,编程和营销原则。 包含保持不变的见解,逆势观点和非常规的软件设计方法。
关于企业管理的好书,篇幅简短,文字精悍,内容详实,值得阅读。
Getting Started with Grunt: The JavaScript Task Runner provides you with all the information you need to become an effective Grunt power-user. You will quickly learn how to install, configure, and run...
梁劲机器学习笔记-全面简单Getting Started With MachineLearning (all in one)_部分2。详细、明了地介绍了机器学习中的相关概念、数学知识和各种经典算法。以浅显易懂的方式去讲解它,降低大家的学习门槛。因为文件...
There are a multitude of books out there to help you hone your Verification skills, as almost every Digital IC professional will tell you. The available books run the gamut of quality and ...
Getting Real by 37signals
### Getting Real by 37signals #### 知识点概览 - **Getting Real 的核心理念**:一种更快、更智能、更简单的构建成功网络应用的方法。 - **37signals**:一家美国软件公司,以其简约高效的产品设计哲学而闻名。 -...
Getting Real 是關於寫出優秀的軟體,但沒有畫地自限的必要。將這些概念套用在生活上別的領域,您或許會碰上好的結果。 Getting Real 第一章 引言 第二章 起跑线 第三章 保持精益 第四章 首要任务 第五章 挑选...