模式简介

原创 2006年06月05日 23:53:00

什么是模式

    每个模式描述了一个在我们周围不断重复发生的问题以及该问题解决方案的核心。这样,你就能一次有一次地使用这个方案而不必重复劳动。[Alexander et al]

模式的核心是特定的解决方案,它有效而且有足够的通用性,能解决重复出现的问题。

模式的关键点在于他们源于实践。必须观察人们的工作过程,发现其中好的设计,并找出“这些解决方案的核心”。

面向对象编程与模式

面向对象编程是将现实世界抽象为程序语言的编程方法,只是一种思想。现实世界的各种对象并不能用完全面向对象的方法描述清楚,所以只能在现有条件下追求好的面向对象编程方法。

模式是解决问题的一类通用专家方案,在面向对象编程中应用模式可以达到更好的面向对象。

设计原则与模式

设计原则:

针对接口编程,而不是针对实现编程

优先使用对象组合,而少用继承

封装变化点

具体的设计原则:

单一职责原则

开放封闭原则

Liskov替换原则

依赖倒置原则

接口隔离原则

设计原则是面向对象编程的基本原则,模式是为了更好的实现这些设计原则,因此,为了有效地设计,而去熟悉某种模式所花费的代价是值得的。[摘自微软webcast讲座]

设计模式

    设计模式只是模式的一种,一般来说,模式分为三种:企业架构模式、设计模式、一般方法。具体可以参考《面向模式的软件体系结构》。

    其实在软件设计人员中,唾弃设计模式的可能很少,盲目夸大设计模式功用的反而更多。言必谈“模式”,并不能使你成为优秀的架构师。真正出色的设计师,懂得判断运用模式的时机。还有一个问题是,很多才踏入软件设计领域的人员,往往对设计模式很困惑。对于他们来说,由于没有项目的实际经验,OO 的思想也还未曾建立,设计模式未免过于高深了。其实,即使是非常有经验的程序员,也不敢夸口对各种模式都能合理应用。[--摘自wayfare的设计之道]

浅谈android中的mvc模式

mvc是model、view、controller的缩写。android 鼓励弱耦合和组件的重用,android 中mvc的具体体现如下:   模型(model):是应用程序的主题部分,所有的业务逻辑...
  • qq_33748378
  • qq_33748378
  • 2016年05月09日 23:33
  • 2542

WiFi简介

WIFI学习总结   1     WLAN技术... 3 2     802.11协议简述... 3 2.1.1       概述... 3 3     802.11四种主要物理组件...
  • poxiao58
  • poxiao58
  • 2016年08月26日 15:18
  • 1201

VIPER模式介绍

一、概述 VIPER模式的理念不属于MV(X)系类,其理念来自于建筑设计。 建筑领域流行这样一句话,“我们虽然在营造建筑,但建筑也会重新塑造我们”。正如所有开发者最终领悟到的,这句话同样适用于构建软件...
  • jingcheng345413
  • jingcheng345413
  • 2017年02月10日 13:25
  • 372

Android系统Recovery模式的工作原理

在使用update.zip包升级时怎样从主系统(main system)重启进入Recovery模式,进入Recovery模式后怎样判断做何种操作,以及怎样获得主系统发送给Recovery服务的命令,...
  • kevinx_xu
  • kevinx_xu
  • 2013年02月19日 09:48
  • 2099

Promise模式简介(Future) -Java实现异步

Promise模式简介 Promise模式是一种异步编程模式 。它使得我们可以先开始一个任务的执行,并得到一个用于获取该任务执行结果的凭据对象,而不必等待该任务执行完毕就可以继续执行其他操作。等到我...
  • zmx729618
  • zmx729618
  • 2017年01月19日 17:37
  • 443

Mysql 简介

一 简介:MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQL AB公司开发、发布并支持的。MySQL AB是由多名MySQL开发人创办的一家商业公司。它是一家第二代开放源码公司,结合了...
  • u010229420
  • u010229420
  • 2015年07月08日 19:52
  • 5416

模式识别(一):概念介绍

在正式引入模式识别的概念之前,让我们先看几个模式识别应用的实例。 1.iphone5s 中的指纹识别系统 苹果公司于2013年发布新一代手机——iPhone5s,革命性地在其经典的Home键上加入...
  • longyindiyi
  • longyindiyi
  • 2014年02月27日 20:54
  • 4256

MVC模式的详细介绍

什么是MVC MVC是三个单词的缩写,分别为: 模型(Model),视图(View)和控制Controller)。 MVC模式的目的就是实现Web系统的职能分工。 Model层实现系统中的业务逻辑,...
  • hxw_506
  • hxw_506
  • 2011年12月15日 15:38
  • 2052

MVC模式简述

    没想到设计模式的第一篇文章说的其实不应该说是符合设计模式标准的个MVC模式。MVC模式使用广泛。可以说是代码和界面分离的基础。下面简述一下其开放过程。    M-Mode C-Control ...
  • longronglin
  • longronglin
  • 2006年09月07日 21:08
  • 1617

Linux系统基础之六:vim编辑器简介和linux下软件的安装

linux文本编辑器Vim VIM配置文件位置 /root/.vimrc (没有则创建) /home/用户名/.vimrc(没有则创建) 1.Vim常用操作 Vim工作模式: 1.进入 :输入v...
  • chuxuan909
  • chuxuan909
  • 2016年12月30日 15:29
  • 433
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:模式简介
举报原因:
原因补充:

(最多只允许输入30个字)