文件类型 内容:
模板调用标记: |
.rar |
语言 内容:
模板调用标记: |
简体中文 |
软件类型 内容:
模板调用标记: |
国产软件 |
授权方式 内容:
模板调用标记: |
共享软件 |
操作系统 内容:
模板调用标记: |
软件等级 内容:
模板调用标记: |
3 |
官方网址 内容:
模板调用标记: |
演示网址 内容:
模板调用标记: |
软件大小 内容:
模板调用标记: |
0.3 MB |
软件地址 内容:
模板调用标记: |
普通下载普通下载 |
详细介绍 内容:
模板调用标记: |
做软件开发够久的话,就会注意到模式的问题。尚未讨论透彻的一个模式就是系统如何随着时间变化。软件行业总着眼于当下的风格,让我们失去了大局观。如今,大多数的“发明”都是数十年前所创造的,我们面临的大多问题也是别人解决过的。 软件开发者并不怎么了解我们的历史。本着这样的想法,本篇将阐述笔者对软件未来发展的看法,还有相关原因。 综述 开始前,我们需要定义一个术语:软件地心引力(Software Gravity),这是一种随着时间发展将功能、复杂性与资源引向软件系统的力量,正是它推动软件发展的力量。 软件会随着时间而愈加复杂,正是功能请求与用户期望构成了软件地心引力。这种地心引力为软件带来复杂性,复杂性又对资源形成需求。 块魂效应 我称之为块魂效应(Katamari Damacy,一款操纵王子通过不断黏住周围的物体来增加自己身前的球状物的大小),就像游戏中那样,功能持续增长,就像滚雪球一样形成了日益复杂的雪球。 从小而简单的东西,无可避免地成长为庞然大物。最终,功能雪球可能会被错当成月亮。这个球定期会变得太过复杂,导致工作无法进行下去,只能通过重构来适应现有的可用资源。由于这个原因,软件是按照某种可预测的方式来发展的。 软件发展阶段 初始阶段:人、纸、excel 第一阶段:简单的脚本 第二阶段:一堆文件 第三阶段:框架 第四阶段:超越框架 第五阶段:模块化 第六阶段:网络系统 所有的软件都处于其中的某个阶段。在阶段之间为了处理块魂效应,有一个自然发展的过程。随着系统越来越复杂,需要用不同的方式来解决问题。 复杂性决定了系统所处的发展阶段,进化的阶段决定了代码和团队具体的形态,不可反推。在这个过程中,反复出现的主题就是分而治之,各个击破。随着复杂程度增长,最有效的方式就是将大问题拆成较小的问题。 我经常看到程序员为了哪个工具才是最佳解决方案而争论不休。这与程序员在软件特定复杂度上的经验关系更大,而不是出于具体需求的需要。对所有系统来说,最好的语言、工具、数据库或框架并不存在。随着需求变更,方法也要产生相应的变化,否则只会浪费时间和金钱。 初始阶段:人、纸、excel 软件最开始并不是软件,大多数软件的存在是为了让现有的过程自动化,或者有效地沟通信息。软件最初的形态就是人们用纸和电子表格,还有其他的沟通手段来解决问题,这也是被我称为初始阶段的系统。 |
下载级别 内容:
模板调用标记: |
10 |
需要金币 内容:
模板调用标记: |
1 |
未通过原因 内容:
模板调用标记: |