| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 438 人关注过本帖
标题:框架模式/框架/设计模式都是什么概念?
只看楼主 加入收藏
liucao
Rank: 10Rank: 10Rank: 10
来 自:恶灵之城
等 级:贵宾
威 望:13
帖 子:538
专家分:1575
注 册:2014-8-6
结帖率:88.46%
收藏
已结贴  问题点数:10 回复次数:7 
框架模式/框架/设计模式都是什么概念?
去百度搜索说的含糊不清,或者是本人基础太浅看不懂,请问有没有简单易懂的说法
搜索更多相关主题的帖子: 去百度 
2014-10-09 13:45
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:0 
说不清楚

思考赐予新生,时间在于定义
2014-10-10 01:15
liucao
Rank: 10Rank: 10Rank: 10
来 自:恶灵之城
等 级:贵宾
威 望:13
帖 子:538
专家分:1575
注 册:2014-8-6
收藏
得分:0 
回复 2 楼 love 云彩
好吧………………

one car come one car go ,two car peng peng people die.
2014-10-10 11:10
日知己所无
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:38
帖 子:427
专家分:2071
注 册:2014-3-22
收藏
得分:2 
计算机世界里的“模式”这个概念,好像最初是从建筑学衍生出来的
联想一下建筑相关的概念,至少能加深一下理解

建筑设计师,在构建一个大型建筑之前,肯定会先绘制图纸,这个过程可以视为一种设计【Design】
软件开发过程中,设计阶段也要出很多“图纸”,比如:流程图【FlowChart】、时序图【Sequence】等

建筑师画图纸的时候,会考虑很多“模式”【Pattern】
比如门和窗大多数情况下是四方形的,房间一般也是四方形的
为什么要这么做?因为,大多数的实践证明,这样的结构健壮,结实,便于使用,更加合理。
更重要的是符合市场规律,便于复用【Reuse】别人的成果;以及便于同行交流、审核,便于负责实现的人【比如建筑工人】快速理解。
房子建好之后,很容易在市场上买一些现成的门,装修一下就可以入住了……

软件设计过程也有类似的地方,
根据经验,最难修改的Bug是结构性的Bug
结构性的问题的例子:买了一个拥有菱形门洞的清水房,不能使用市场上成型的商品,只能订做一个菱形的门,然后发现进出门的时候经常碰到头或者绊倒脚。
解决结构性问题的最好的方法就是:大刀阔斧的推倒重来
和建筑学上盖了100层大楼时发现最初没有设计电梯的位置一样一样的【真正的历史上有这样的笑话,可以在网上搜索一下】

这,很浪费时间和金钱……

如何避免和彻底解决这样的问题?
还好,有很多软件界的泰山北斗,及时总结软件开发过程中的经验教训,用“软件模式”的方式,向人们阐述软件复用的方法
不是简单的代码的复制粘贴,而是结构性的复用
【像方形的门一样,可能仅仅是一个概念,就能帮助人们快速做出很多正确合理的判断和选择】

设计模式的概念就差不多这样了,如果感兴趣,建议阅读《建筑的永恒之道》
2014-10-10 21:21
日知己所无
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:38
帖 子:427
专家分:2071
注 册:2014-3-22
收藏
得分:6 
框架【Framework】有时和平台【Platform】挺像

一般是由大型公司或者组织推出的一整套解决方案

比如以前我们在Windows平台下,写带窗口的程序,可以直接使用C语言调用Win32的API,自己创建窗口,控制键盘、鼠标等消息,优点是:程序简单清晰,易于理解;执行速度快。
缺点是:处理非常复杂问题的时候,多少会有些力不从心……

这时候微软就跑出来推出一套MFC的基础框架,用C++包装好底层的Win32API,
让你快速的,通过简单的拖拽,就能做出让人惊艳的程序【比如一个完整的操作数据库的桌面程序】

当网络不断盛行的时候,大家都想象谷歌那样,提供对外的WebService【外部服务】,比如谷歌地图就是一个很好的例子
你甚至可以调用它的API,自己做一个简单的导航程序
这时候就是Java和.Net等框架大行其道的时候了

随着业务变得更加复杂,单纯的提供大量的类库也不能满足开发人员快速开发程序的任务
比如给几个月的时间开发一个类似淘宝的在线交易系统,又不想花太多Money,怎么办?

用已经成熟的商业框架或者开源框架作为基础,定制自己需要的功能

总之,随着软件开发方法的不断成熟和进步,作为开发人员
从最开始拿到手的钉子、锤子,木头、砖头、水和石灰粉来盖小草屋
逐渐变成了,构思一下,然后用很多预制好的材料,跟搭积木似的盖高楼大厦了

那些预制好的东西,就是大多数框架和平台想提供给你的东西
2014-10-10 21:38
日知己所无
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:38
帖 子:427
专家分:2071
注 册:2014-3-22
收藏
得分:2 
模式是设计复用,框架是代码复用

框架模式没怎么接触过……
2014-10-10 21:43
liucao
Rank: 10Rank: 10Rank: 10
来 自:恶灵之城
等 级:贵宾
威 望:13
帖 子:538
专家分:1575
注 册:2014-8-6
收藏
得分:0 
回复 6 楼 日知己所无
谢谢讲解得这么详细

one car come one car go ,two car peng peng people die.
2014-10-11 16:41
szgg520
Rank: 5Rank: 5
等 级:职业侠客
威 望:3
帖 子:79
专家分:307
注 册:2011-6-13
收藏
得分:0 
谢谢分享了

[url=http://www.]深圳复印机出租[/url]
2014-10-12 10:43
快速回复:框架模式/框架/设计模式都是什么概念?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024807 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved