`
nychen2000
  • 浏览: 87772 次
  • 性别: Icon_minigender_1
  • 来自: ...
社区版块
存档分类
最新评论

软件设计的终极哲学是什么呢

阅读更多
我曾经两次开发过Workflow产品,第一次开发完成后,发现产品非常不令人满意,剧多拼凑成分,也发现设计模式的重要性。

一两年之后,再次设计开发同类产品,貌似设计模式用得熟了,系统架构也好多了。但是在设计方面还停留在只可意会不可言传的阶段,讲不太清楚背后的深刻哲理。


那么软件设计背后的终极哲学是什么呢?

分享到:
评论
7 楼 ft28143 2009-09-27  
我觉得软件设计的哲学可以用一句简单的话来概括就是:抽象加业务实现的合理人性化。

这句话很别扭,呵呵,希望各位拍砖。
6 楼 ningmenglovesoft 2009-09-27  
知道世界最伟大的作品是谁写的吗?老子的《道德经》,几千字概括了世界上的一切。软件的终结设计哲学请参考《道德经》,我也不知道,哈哈,飘过
5 楼 lchj 2009-09-27  
作为中国人,总读过几句道德经的开篇的话吧,道可道,非常道。真正的道是说不出来的,真正的设计终极哲学也是无法用言语表达的。你看面向对象的那一大堆术语,新人看他个几百遍都领悟不了的,即使了解了也理解不了,即使理解了,也掌握不了,即使掌握了,也无法形成设计自觉。
而且,软件是用二进制翻译现实世界的活计,你对世界有多少认识,你就对软件设计有多少认识,同样,你对软件设计有多少认识,你就对世界有多少认识。你能用一种模式来解释世界么?
记得代码大全说,设计是个险恶的问题,所谓险恶的问题就是除非你自己做过一遍,你才能知道其中有多少风险;古人说不识庐山真面目,只缘身在此山中。要通晓设计,还真得靠经验,不管是前任的经验,还是自己的经验。不管是书上的经验,还是实践的经验。可惜总会我们不知道、不认识的,我们永远只是通宵已知的已知和已知的未知,而无法通晓未知的未知。
4 楼 treblesoftware 2009-09-27  
是简单。。。。。
3 楼 treenode 2009-09-27  
王小波 写道

古人曾说:天不生仲尼,万古长如夜;但我有相反的想法。假设历史上曾有一位大智者,一下发现了一切新奇、一切有趣,发现了终极真理,根绝了一切发现的可能性,我就情愿到该智者以前的年代去生活。这是因为,假如这种终极真理已经被发现,人类所能做的事就只剩下了依据这种真理来做价值判断。从汉代以后到近代,中国人就是这么生活的。我对这样的生活一点都不喜欢。
2 楼 nychen2000 2009-09-27  
我自己突然想到一句话,很老土的话,大家准备好砖头。

软件设计就是:把软件系统需要完成的工作(即需求)合理地进行职责分配,分配到各个子系统、模块等等。

那么,何谓合理?
1 楼 numen_wlm 2009-09-27  
我等还未到那个境界,所以依然是只可意会,不可言传

相关推荐

    计算机程序设计语言的终结

    ### 计算机程序设计语言的发展趋势与终极思考 #### 核心观点解析 本文探讨了一个有趣且富有挑战性的议题——计算机程序设计语言的发展趋势及其可能达到的终点,并提出一个引人深思的观点:面向对象编程可能是程序...

    Qt 页面切换终极资料

    在IT领域,特别是软件开发中,Qt是一个非常流行的开源跨平台应用程序框架,它基于C++,为开发者提供了丰富的API和工具来创建用户界面和...同时,深入理解Qt的设计哲学和C++编程,将使你在软件开发的道路上更进一步。

    C程序设计语言(第二版,中文版)

    本书的内容由8个章节和4个附录组成,涵盖了C语言的基础知识和进阶知识点,旨在帮助读者不仅掌握C语言的基本语法和结构,而且能够理解C语言的设计哲学和实践技巧。这样的内容安排使得它非常适合大专院校的师生以及...

    高考终极压轴卷——语文(新课标I卷).doc

    7. **系统思维**:“阴阳五行”哲学思想在饮食中的应用,反映了系统性思维,这在系统分析、软件架构设计中同样重要,需要考虑各元素间的相互关系和平衡。 8. **健康与科技**:“食医结合”理念在现代IT行业也有体现...

    开源主机、服务和网络监控平台Nagios终极探

    这种设计哲学使得Nagios成为一个轻量级的框架,可以根据用户需求通过扩展插件来实现各种复杂的监控场景。 Nagios的报警功能同样依赖于外部系统或插件来完成,这使得其自身保持了专注于核心功能——监控。这种设计...

    虚拟现实技术的发展及其思考.pptx

    60年代,Ivan Sutherland的"速写板"系统和"终极显示"报告为虚拟现实技术奠定了基础。70年代,虚拟现实之父Jaron Lanier的"人工实在"系统和数据手套的发明,进一步推动了技术的发展。80年代至90年代,虚拟现实开始...

    开源世界旅行手册(Ubuntu教程第二版)

    关于UNIX文化,作者在书中详细介绍了UNIX的设计哲学,包括它为什么不仅仅适合计算机专家,还阐述了反对使用Windows的理由,以及如何完全使用GNU/Linux进行工作。这部分内容使读者能够更好地理解UNIX精神,并且学习到...

    我将努力变得更轻(外二首)

    例如,苹果公司的产品设计哲学就强调“少即是多”,即以最少的设计元素提供最优的用户体验。 3. 庖丁解牛的比喻与软件开发流程 庄子在《庖丁解牛》中描述了一位厨师解牛的高超技艺,其中“以无厚入有间”,可以被...

    基于用户行为的数据分析与挖掘.pdf

    基于用户行为的数据分析与挖掘是一个涉及数据采集、存储、处理、分析和挖掘等多个环节的复杂过程,其目的是通过深入分析用户的上网行为模式,以期找出提升用户体验、优化产品设计、增加业务转化率等商业价值。...

    python经典入门资料

    Python的设计哲学强调代码的可读性,使用英语中的关键字而不是标点符号。它支持多种编程范式,包括面向对象、命令式、函数式和过程式编程。 2. Python的特性:Python因其可读性和简洁的语法而广受欢迎,它允许...

    Practical Vim Edit Text at the Speed of Thought.

    - **Vim的思维方式**:讲解Vim背后的设计理念及其对提高工作效率的影响。 - **高效工作模式**:分享如何通过Vim实现快速编码和高效文本处理的经验。 #### 读者反馈精选 多位软件工程师和技术专家分享了他们阅读本书...

    Git 魔法-PDF

    Mercurial是另一个流行的分布式版本控制系统,与Git相似但有着不同的设计哲学。 **Bazaar** Bazaar是另一个DVCS,由Canonical公司发起,用于Ubuntu项目。 **我偏爱Git的原因** Git因其高性能、灵活性和强大的...

    2013年CIO需要知道的八句格言

    - **背景与理解**:Salesforce CEO马克·贝尼奥夫提出的这一观点反映了当时软件设计的趋势——更加注重用户体验和社会互动性。他主张企业软件应当像社交网络一样直观易用。 - **实践意义**:这意味着CIO需要关注软件...

    Git Magic(英文版)

    回顾了Git的开发背景和历程,了解其设计哲学和创新之处。 ### 八、Git的局限 #### 微软Windows 指出了Git在Windows系统下的兼容性和性能问题,为用户提供了解决方案。 #### 不相关的文件 讨论了如何处理项目中的...

Global site tag (gtag.js) - Google Analytics