在谈到Web开发时,经常会提到Web开发框架。我们为何要学习这些框架?

这些框架到底从何而来?只有知道为什么,才能知道如何做得跟好。

在谈框架时,我们不得不谈一个比框架更重要的概念,就是面向对象

  • 一个对象的基本元素:

签名(Signature)--对象的核心语义概括

属性(Property)--对象的内部特征和状态的描述

方法(Method)--对象的行为特征的描述

 

在实际编程过程中,对象将表现为三种不同的形态和运作模式

1、属性-行为模式

    一个对象同时拥有属性定义和方法定义。

2、属性模式

    一个对象只拥有属性定义,辅之以相应的Setter和Getter方法。

又称为JavaBean模式,作为数据存储和数据传输的载体,在众多的编程

层次都会被用到,根据作用不同被冠以各种不同的名称,如

PO(Persistent Object)--持久化对象

BO(Business Object)--业务对象

VO(Value Object)--值对象

DTO(Data Transfer Object)--数据传输对象

FormBean--页面对象

无论这些对象被冠以什么名称,他们只不过是对基本的、运行在JavaBean

模式下对象的有效扩展和增强。

3、行为模式

    构成一个对象的主体是一系列方法的定义。最为常见的是我们

熟悉的Servlet对象。又称为无状态对象,它是指对象的方法所表达的行为

特性并不依赖于对象的内部属性状态。而这种无状态的特性,非常适合进行

 一个请求的响应,并在方法体内部实现中进行复杂的业务逻辑处理。

行为对象方法的定义:

1、方法签名(Signature)--行为动作的逻辑语义概况

2、参数(Parameter)--行为动作的逻辑请求输入

3、返回值(Return)--行为动作的处理响应结果输出

方法的定义实际上是一种触发器的逻辑定义。当需要完成某种行为动作时,

将请求作为参数输入到方法的参数类表中,而返回值则自然而然地完成业务

逻辑的出来结果。

  • 对象关系模型

分析的角度将由“内”转向“外”,考虑对象与对象之间的关系。

1、从属关系(归属、继承)--围绕着对象属性构成    手和脚

2、协作关系--围绕对象的行为动作特征                  摆和抬

一个对象在绝大多数情况下都不是孤立存在的,它总是需要通过

与其他对象的协作来完成其自身的业务逻辑。也就是说,将一个

动作从业务上进行逻辑划分,将不同的业务分派到不同的对象之上

去执行。这就是我熟知的分层开发模式的理论依据。

  • 面向对象编程的基本观点

1、每一种对象的构成模型,都有其特定的应用范围。

2、将对象运行在“属性-行为”模式上,最符合面向对象编程思想的本意。

--原因其一:能够最大程度地应用各种设计模式

--原因其二:能够最大程度地发挥对象之间的协作能力

3、建立对象之间的关系模型是面向对象编程的核心内容。

 

框架的本质(可扩张性)

我们编写的所有程序,都是依赖于一个最最基本的前提条件:JDK所提供的API支持。

当我们加载一个JAR包到CLASSPATH时,实际上就是获得了JAR中所有对JDK的额外支持。

框架只是一个JAR包而已,其本质是对JDK的功能扩展。

当我们说一个程序使用了Spring框架,就是说把Spring的分发包加入到CLASSPATH,并且使用了其功能。

解决在某个领域的开发中所碰到的困境。

框架是一组程序的集合,包含了一系列的最佳实践,作用是解决某个领域的问题。所以

对广大的程序员来说,千万不要为了学习框架而学习框架,而是要为了解决问题而学习框架。

 

最佳实践(best practice)

最佳实践,实际上是无数程序员在经历了无数次的尝试后,总结出来的处理特定问题的特定方法。

如果说我们把每个程序员的自由发挥看作是一条通往成功的路径,最佳实践就是其中的最短路径,

它能够极大地解放生产力。

 

 

 

 

posted on 2012-04-29 10:50  吴剑波  阅读(235)  评论(0编辑  收藏  举报