文档介绍:NET开发及架构分析
☆1> NET组件开发的原理及方式
2> 设计模式介绍及抽象工厂
3> 消息传递的简单介绍
☆4> WebService的简单介绍及示例
5> Remoting的简单介绍及示例
开发及架构分析
NET组件开发的原理及方式
面向对象系统开发
组件化系统开发
组件开发之后是服务
开发及架构分析
多态
封装
继承
基于消息
架构+合约
通过策略绑定
1996
2003
以接口为基础的
动态加载
运行态元数据
2000
面向对象
面向服务
面向组件
从对象到服务历程
开发及架构分析
面向对象(Object Oriented,简称OO)是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。
面向对象的程序设计(Object Oriented Programming,简称OOP,亦有译为对象导向),指一种程序设计范型,同时也是是一种程序开发的方法论。它的最大特点是能够大幅度的提高软件项目的成功率,减少日后的维护费用,提高软件的可移植性和可靠性。
开发及架构分析
“对象(Object)”一词,早在十九世纪就有现象学大师胡塞尔提出并定义。对象是世界中的物体在人脑中的映象,是人的意识之所以为意识的反映,是做为一种概念而存在的先念的东西,它还包括了人的意愿。
对象(Object)是问题域或实现域中某些事物的一个抽象,它反映此事物在系统中需要保存的信息和发挥的作用;它是一组属性和有权对这些属性进行操作的一组服务的封装体。关于对象可以从两个方面描述:
1)对象
对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。
2)对象的状态和行为
对象具有状态,一个对象用数据值来描述它的状态。
对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。
对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中
开发及架构分析
面向对象系统开发
对象--- 具体的实例
类--- 抽象的定义
开发及架构分析
封装就是把类的内部隐藏起来 好处:减少耦合,类内部的实现可以自由地修改,类具有清晰的对外接口
数据隐藏实现方法就是访问限制修饰符public  protected internalinternalprotectedprivate
继承性   inheritance一个类可以有能力直接从另一个类获得其代码和数据派生类从基类那里获得其所有的成员C#只支持单继承防止继承  public sealed class  classname
何时使用继承
代码重用,减少编写的代码量设计重用公用的字段和方法可以放到父类中,然后由其派生新的子类子类有自己的字段和方法
开发及架构分析
多态性是面向对象程序设计中的重要概念。在运行时,可以通过指向基类的应用,来调用实现派生类中的方法。同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。多态性通过派生类覆写基类中的虚函数型方法来实现。
重载Overload 存在于同一类中方法名必须相同参数列表必须不相同返回类型可以不相同
覆写Override 存在与继承关系的类中只有虚方法和抽象方法才能覆写相同的方法名称相同的参数列表相同的返回值类型
抽象方法 abstract是必须被派生类覆写的方法可以看成没有实现体的虚方法
开发及架构分析
虚函数使用virtual关键字public virtual bool withdraw()
接口 interface接口为类提供了蓝图接口只提供定义实现接口的数据类型必须提供接口成员的实现接口本身可以从多个基接口派生
UML(Unified Modeling Language)语言
UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它融入了软件工程领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发全过程。
面向对象的建模工具:
Rational Rose 2003/Rational XDE
Power Designer 12
开发及架构分析
组件化系统开发
创建可重用的组件
重用现有的组件来缩短开发时间
建立一贯的组件理念
制定一个组件策略
Patterns和Practices
制定一个设计-评审计划
建立知识库
给团队中的成员进行培训知识库的内容
激励团队的成员维护知识库的内容
Pe