`

对于开发人员,“极简原则”需要修正,请看“新极简原则”

阅读更多
有天去参加一个新产品发布会,听厂商的技术带头人讲到了“极简原则”,说到一句“能一句代码实现的,就不用两句代码”,听了之后,先是很感兴趣,继而深入思考这个问题。

我认为这句话说的有问题,对于做设计而言,如果把这个原则中的“能”改为“应”,才是一句完美的原则,可以用以指导各种类型的设计和开发。


“简单”是一种做事情的风格和方法,不是目的和目标。在科学界人们也更倾向于简单,尽量少的假设和外部条件,用简洁公式表达的概念和原理;界面设计上,简单清爽,给用户更好的体验,给用户以方便。这都是一种好的做法。


但是对用户来说,要得不仅仅是简单,如果仅是简单,为啥房子有锁,房间又有锁,屋子里重要的抽屉还有锁,麻烦吗?但是这是必须的,因为要安全。

另外,我们看《红楼梦》,洋洋洒洒,为啥不缩水简化成一篇呢?其实说白了,有些意思,适合用简短的方式描述,而有些,又不得不用很多篇幅来描述;有些内容,一个字一个词足以,有些内容,需要从多个角度多方描述。


编程有何尝不如是?能一句代码完成,但不一定是“应”一句话描述,这就是核心问题。

回到编程的最高境界,如疱丁解牛,要顺乎天理;而编程,则是要顺着业务和逻辑。怎样知道应当一句代码实现还是两句呢?这就要通晓业务和计算机的运转方式,用计算机语言来描述业务。

设计也是一样,该当复杂则复杂,该当简单则简单。


从这个角度来看,“极简原则”是对前些年设计和开发过于复杂化的一个进步,但是近年来,很多人迷信这个原则,设计师和程序员都以省事和简单作为自己的原则,事事凑合,垃圾产品一堆,也是不争的事实。设计师和程序员都应该是面对复杂问题和复杂度,解决复杂的问题,让用户简单的使用,完成业务。



新极简原则:

设计:应一个模块实现的,就不用两个模块;
编码:应一行代码实现的,就不用两行代码。



4
5
分享到:
评论
9 楼 windshome 2014-05-28  
感谢诸位。

我觉得设计师也罢,程序员也罢,判断什么时候“应”什么样子,是体现自身功力和价值的地方。
8 楼 houxinyou 2014-05-28  
“能”改为“应”,改的太合适的,一个字,把所有的弊端去掉,所有的优点体现出来
7 楼 Tyrion 2014-05-27  
josico 写道
看那些链式编程 看那些多层嵌套加无线递归
程序很简单,写给计算器和上帝看的


有意思的话题,我觉得链式调用挺好的啊,多层嵌套倒是让人挺不爽的,我每次碰到都有重构的冲动。
6 楼 windshome 2014-05-27  
vision2000 写道
编码:应一行代码实现的,就不用两行代码。


-------
如果是一个很复杂,很冷门,自创的公式,还不如多些步骤,多点代码写,在执行效率没那么严格要求的情况下,代码的可阅读应该要最高,用猪都能看懂的代码实现复杂的逻辑,也是大牛



老兄说得非常对。

“应”这个字,就是体现代码外部特性(正确性、业务要求)和内部特性(可读性、可延续性)的要求的。
5 楼 windshome 2014-05-27  
刚从外边回来,看到这么多朋友捧场,感谢!

其实,我的意思是不在于代码多和少,做到恰如其份,很好的表述出需求,体现出设计来就可以了。

盲目追求减少代码行数是个误区。
kanen001 写道
less is more



编程和文学在风格这件事上可以类比。都是用一种语言,讲述一件事情或若干件事情,
Lagunarock 写道
另外,我们看《红楼梦》,洋洋洒洒,为啥不缩水简化成一篇呢?
==========================
窃以为,这个类比不恰当。编程和文学是两回事,不应类比。
现在的软件工程,可维护性也是要重点考虑的。精简只是衡量代码的其中一项标准,可读性也需要考虑。
为了精简,使代码晦涩难懂,不可取。代码不仅机器读,更多的时候是其他的开发人员阅读。



一孔之见,希望大家各抒己见来谈淘。




4 楼 kanen001 2014-05-27  
less is more
3 楼 Lagunarock 2014-05-27  
另外,我们看《红楼梦》,洋洋洒洒,为啥不缩水简化成一篇呢?
==========================
窃以为,这个类比不恰当。编程和文学是两回事,不应类比。
现在的软件工程,可维护性也是要重点考虑的。精简只是衡量代码的其中一项标准,可读性也需要考虑。
为了精简,使代码晦涩难懂,不可取。代码不仅机器读,更多的时候是其他的开发人员阅读。
2 楼 josico 2014-05-27  
看那些链式编程 看那些多层嵌套加无线递归
程序很简单,写给计算器和上帝看的
1 楼 vision2000 2014-05-27  
编码:应一行代码实现的,就不用两行代码。


-------
如果是一个很复杂,很冷门,自创的公式,还不如多些步骤,多点代码写,在执行效率没那么严格要求的情况下,代码的可阅读应该要最高,用猪都能看懂的代码实现复杂的逻辑,也是大牛

相关推荐

    大模型应用开发极简入门:基于GPT-4和ChatGPT.zip

    大模型应用开发极简入门:基于GPT-4和ChatGPT.zip

    极简模式快速构建企业信息管理系统的开发平台【v5.158】

    【标题】"极简模式快速构建企业信息管理系统的开发平台【v5.158】"揭示了这个软件工具的核心特性,即它提供了一种高效且简洁的方式,帮助企业快速搭建基于Web的信息管理系统。这种开发平台可能包含了一系列预先设计...

    极简模式开发工具安装程序v.5.221版

    "极简模式开发工具安装程序v.5.221版"是一款专为快速开发企业信息系统设计的专业软件,它简化了开发流程,让开发者能够更高效地构建个性化系统。这款工具集成了前端开发和后端服务,尤其适用于熟悉Java和Javascript...

    极简主义生活方式ppt模板.rar

    6. 极简主义设计原则:在制作PPT时,极简主义的设计原则也非常重要。简洁的布局、清晰的文字、有限的颜色选择和有目的的图像使用,都能帮助观众更好地理解和记住内容。 7. 实践极简主义的步骤:模板可能会提供一...

    极简单行阅读器-摸鱼神器

    1. **简洁界面**:极简单行阅读器的界面设计遵循极简主义原则,去除多余的功能和元素,仅保留最基础的阅读必需品。这样的设计有助于减少视觉干扰,使用户能够更专注于文章内容。 2. **文本渲染**:软件对于文本的...

    极简云源码开源.zip

    极简云已经开源 解绑卡密 查询卡密 总体来说还是很完善的 对接例子网盘里有 用户注册需要配置邮箱 上网页QQ邮箱标准版开启SMTP 然后生成授权码 后台发信邮箱里填就对了 实在不会配置邮箱的 可以下载网盘里的reg....

    极简按键V1.0.87.zip

    这对于那些需要重复输入相同字符串或进行连续按键的游戏和应用来说,尤其实用。 此外,该软件还允许用户设定按键的执行时间间隔。这是一项非常关键的功能,因为它可以帮助用户避免因为过快的按键频率导致的问题,...

    极简云商业版 开源源码下载

    简化版的云商业源码已经以开源形式发布了,现在可以解绑卡密和查询...请确保您使用的是php7.0和mysql5.6+版本。 导入数据库后,请修改数据库文件config.php。 后台网址为域名/admin,后台账号为admin,密码为123456。

    极简网盘系统源码 v1.1.zip

    直接上传到服务器php环境即可,不需要数据库,既可搭建...3.后台登录请查看软件中的安装必看 极简网盘系统源码 v1.1更新日志 修复部分链接失效的问题! 极简网盘系统源码截图 相关阅读 同类推荐:站长常用源码

    极简主义在APP界面设计中的原则探讨.pdf

    通过直观性、体验性、色彩性和导向性原则的综合运用,极简主义设计理念能够提升APP的功能性和审美价值,满足现代用户对于APP界面设计的高标准和严要求。设计师在遵循这些原则的同时,还需要不断地学习和创新,以确保...

    极简单行阅读器.zip

    "极简单行阅读器"是一款专为用户打造的轻便型阅读工具,其设计目标是提供简洁、高效的阅读体验。从描述中我们可以看出,这款应用具备单行阅读模式,允许用户自定义背景颜色,同时也支持浏览网页内容,可以说集成了...

    baidu 百度极简桌面版

    3. **极简设计**:界面设计遵循极简主义原则,去除冗余元素,使用户界面更加清爽,操作更加简便。用户可以轻松聚焦于搜索本身,不受干扰地获取信息。 4. **云端本地一体化**:百度极简桌面版通过打通云端和本地数据...

    极简云网络验证系统开源源码

    极简云验证,多样化应用管理方式,多种项目任你开发,分布式应用开关,让您的应用开发更简单,完美实现多用户多应用管理。 支持多应用卡密生成: 卡密生成 单码卡密 次数卡密 会员卡密 积分卡密 卡密管理 卡密长度 ...

    极简浏览器

    极简浏览器

    一个非常极简风的IE升级界面UI

    3. **用户体验(UX)设计原则**:极简主义设计遵循UX原则,如一致性、反馈、容错性和效率,确保用户能快速理解和操作界面。 4. **浏览器历史与竞争**:IE作为早期的主导浏览器,随着Chrome、Firefox等现代浏览器的...

    时装与极简主义-论文.zip

    然而,每个地区对于极简主义的诠释和实践都可能带有本地文化的烙印,形成多元化的极简风格。 综上所述,《时装与极简主义》这篇论文全面剖析了极简主义在时装领域的理论与实践,揭示了其深远的社会、文化和环保意义...

    极简PPT模板

    标题中的“极简PPT模板”指的是以简洁、清晰为主要设计风格的PowerPoint演示文稿模板,这种风格通常追求少即是多的原则,避免过多的颜色、装饰元素和复杂的设计,以提高观众对信息的理解和记忆效率。在商业报告、...

    ORACLE极简版客户端.zip

    Oracle极简版客户端是一款专为轻量级使用场景设计的数据库连接工具,它以其小巧的体积(约30MB)和简易的安装、卸载流程,成为那些不需要完整Oracle数据库功能,但需要进行数据查询、管理的用户理想选择。...

    极简云验证商业版已经开源源码

    极简云商业版已经开源 解绑卡密 查询卡密 总体来说还是很完善的 对接例子网盘里有 用户注册需要配置邮箱 上网页 QQ 邮箱标准版开启 SMTP 然后生成授权码 后台发信邮箱里填就对了 实在不会配置邮箱的 可以下载网盘里...

    大方极简黑灰PPT模板下载.rar

    描述中提到的“一份极简风格的幻灯片模板,黑灰配色,简约时尚大气”,这表明这个PPT模板设计遵循了极简主义原则,以黑灰色调为主,旨在为用户创建专业且不失现代感的演示文稿。极简风格在设计中强调简洁、清晰和...

Global site tag (gtag.js) - Google Analytics