KISS原则就是Keep It Simple and Stupid. 简单是软件设计之美, 简单的设计使得软件产品易于开发, 易于维护. 简单代表着高质量, 少加班, 每个人都希望自己的工作是简单的.
在KISS原则之外, 应该有一个更重要的原则: Useful. 满足需求是一切产品的低限. 也许需求本身也应该KISS, 简单的需求意味着底成本, 高效率. 可惜客户有时候很难克制自己的欲望. 也许站在客户角度看见的KISS和我们开发者眼中的KISS不完全是一个概念. 有人说: 好的设计是客户做出来的, 开发者其实只是在帮助客户做设计.
Keep It Simple and Stupid, 最难的在于Keep. 一个人做一个Simple的设计并不难, 难的是让这个设计在需求变化的过程中保持简单. Keep是关键, Keep的时间就是这个设计的生命. 当一个产品无法再Keep Simple的时候, 维护就变的越来越困难, 渐渐的无法加入任何变化, 他的生命也就快结束了. 升级意味着重新做一个.
Keep Simple就是要抵抗需求的变化, 一开始的需求总是比较简单, 比如这样: 设计一个汽车驾驶程序, 他会在遇到红灯的时候停下来, 绿灯的时候向前进.
方案一:
if red_light then
stop()
else if green_light then
go()
end if
这是一个简单的需求, 给出的解决方案也很简单. But, 如果遇到这样的情景: 红灯已经亮了, 但是车前面有个人正在过马路, 他走的很慢. 这个时候当然不能go, 应该按响车喇叭, 等他走过去. 方案一必须要修改:
if red_light then
stop()
else if green_light then
if people_ahead then
ring()
else
go()
end if
end if
现实的情况仍然可能发生变化, 比如: 前面尽管是绿灯, 但是横向路口一辆救护车开过来, 或者前面有一个路牌"道路维修请绕行"......种种情况, 其结果就是要在原来的if-else里面加上一个新的判断.
这是一个Simple的设计, 但是很难Keep Simple. 当这个代码片断不断增加, 长度突破500行的时候, 任何相关的需求变更都是一场恶梦. 在软件开发中更复杂的情况我想大家都遇到过.
分享到:
相关推荐
【KISS原则】 KISS原则,全称为“Keep It Simple, Stupid”,中文译为“保持简单,愚蠢”。这是一个设计、编程、管理乃至生活中的通用准则,旨在倡导简洁、直观和高效的设计理念。在信息技术领域,KISS原则被广泛...
高度模块化, 遵循 KISS原则的区块链开发框架
汉堡原则及KISS原则分享.doc
KISS原则——设计与沟通的黄金法则 在当今社会,信息的呈现与交流无处不在。无论是在商业演示中,还是日常的沟通中,我们都在不断地寻找最有效的方式来传递和接收信息。在众多的设计原则中,KISS原则,即“保持简单...
基于KISS原则的高度模块化区块链开发框架.zip
【KISS原则】 KISS原则,全称为“Keep It Simple, Stupid”,中文译为“保持简单,愚蠢”。这个原则强调在设计和开发过程中,应尽量使事物保持简洁,避免不必要的复杂性。KISS原则源于工程设计领域,后来广泛应用于...
读书笔记:高度模块化, 遵循 KISS原则的区块链开发框架
高度预测,遵循KISS原则的区块链开发框架 官方网站和文档: : 官方插件库: : 典型案例: : chain33背后故事: 视频教程: 感谢 bug奖励 我们影响bug评价4个等级(不会奖励人民币,等值虚拟资产)。只有影响...
KISS原则倡导简洁的设计,避免不必要的复杂性。在设计过程中,应追求简单、直观的解决方案,以降低理解和维护的成本。无论是用户界面、系统架构还是日常生活,简单往往能带来更好的用户体验和更高的效率。如苹果...
内容概要:本文档探讨了软件开发中系统设计的思想和技术准则,旨在帮助开发者和工程师们构建... 3.3.2 KISS原则 3.3.3 帕累托法则 3.3.4 泰斯勒定律 3.3.5 根因分析法则 3.3.6 康威定律 4. 设计目标 5. 设计的意义
"SimpleAdminBundle:使用 KISS 原则提供 Simple Admin" 这个标题表明我们讨论的是一个名为 SimpleAdminBundle 的开源软件组件,它遵循了 KISS(Keep It Simple, Stupid)原则,旨在为用户提供一个简洁易用的后台管理...
9. **KISS(Keep It Simple, Stupid)原则** - 保持设计尽可能简单。复杂的系统往往更容易出错,且更难以理解和维护。 10. **DRY(Don't Repeat Yourself)原则** - 不要重复代码。相同的逻辑或数据应在一处定义...
Kiss模板遵循“Keep It Simple, Stupid”的原则,强调内容的纯粹性和易读性。它的设计目标是让用户专注于博客文章本身,减少不必要的视觉干扰,提供一个简洁、舒适的阅读环境。Kiss模板通常采用淡色调,配以清晰的...
3. **KISS(保持简单,傻瓜)原则**:设计应尽可能简洁,避免不必要的复杂性,以提高代码可读性和可维护性。 4. **DRY(不要重复自己)原则**:避免代码重复,通过重用和模块化来提高代码复用性。 5. **SOLID原则*...
- **极简设计**:KISS遵循“少即是多”的原则,界面简洁,没有多余的功能,让使用者可以专注于核心的启动和搜索功能。 - **高效搜索**:内置快速搜索功能,用户可以通过输入关键词找到所需应用,无需浏览多个屏幕。...
9. **KISS(Keep It Simple, Stupid)原则**:保持设计简洁明了。避免不必要的复杂性,使得代码更容易理解和维护。 10. **DRY(Don't Repeat Yourself)原则**:尽量避免重复的代码。如果同一段代码在多个地方出现...
“kiss-latex-mindset”遵循“Keep It Simple, Stupid”的原则,旨在提供一个直观易用的LaTeX环境,通过简化配置和使用直接的命令,减少不必要的抽象层次,让使用者更专注于内容创作。它的主要特性包括: 1. **...
6. **迪米特法则**:也称为最少知道原则,一个对象应该尽量少地了解其他对象的内部细节,只与直接的朋友通信。 7. **合成/聚合复用原则**:优先使用对象组合,而不是继承来达到复用的目的。组合比继承具有更高的...
设计原则如SOLID原则、KISS原则、DRY原则和YAGNI原则可以帮助开发者编写出更加灵活、可维护和易于扩展的代码。而设计模式则提供了经过验证的解决方案,可以解决软件开发中常见的问题。无论是创建型模式、结构型模式...