清华电力系统调度自动化构建复杂系统的方法技术方案.ppt

清华电力系统调度自动化构建复杂系统的方法技术方案.ppt

构建复杂系统的方法 ——面向对象技术 结构化分析是简单系统分析的重要手段 学习编程的一般曲线 一个简单的例子-链表 结构化编程的问题 1、explicit create and destruction void foo() { list_handle_t mylist = list_create(); …. list_destroy(myList); } 2、decoupled data and operations 程序模块是面向操作设计的 而面向对象中,程序结构是面向数据设计的 3、Missing type safety void foo() { DataType data1; OtherDataType data2; list_handle_t myList=list_create(); list_append(myList,data1); list_append(myList,data2); list_destroy(myList); } 面向对象编程 抽象数据类型(Abstract Data Type) 抽象数据类型(Abstract Data Type) 面向对象的概念 int i,j,k; i=1; j=2; k=i+j; 消息(message) A running program is a pool of objects where objects are created,destroyed and ineracting. Integer i; i.setValue(i); message:”apply method setValue with argument 1 on yourself” Message: a request to an object to invoke one of its methods. 面向对象的概念 关系(Relationships ) 面向对象的概念 继承(Inheritance ) 面向对象的概念 抽象类(Abstract class) 面向对象的概念 模板类 面向对象的概念 多态(Polymorphism ) 操作符重载 分布式应用? 应用使用的数据是分布的 有的应用需要多 台计算机协作运行 应用的用户是分布的 分布式计算与中间件(middleware) 分布式对象计算与CORBA 分布式对象计算:分布式计算、面向对象计算 分布式计算: 远程过程调用 网络应用程序编程接口(API)编码 问题: RPC:同步 API:繁琐的细节 CORBA:( Common Object Request Broker Architecture) OMG提出并管理的标准的面向对象应用程序体系规范 CORBA增强分布式计算 客户/服务器间关系灵活变化 加入代理器 允许服务器多进程 支持同步和异步两种通信方式 CORBA入门 利用CORBA系统进行分布对象应用的开发具有下面三个特点: 基于企业总线的电力企业信息系统 中间件( CORBA)在电力信息集成中的地位 * 结构化分析(面向过程)是基于自上而下设计和功能分解方法,是系统简化 主问题(Main Problem) 建造底盘 (Build Chassis) 建造引擎 (Build Engine) 建造传动系统 (Build DriveTrain) 组装 (Assemble) 检测 (Inspect) main() BuildC() BuildE() BuildD() assemble() inspect() 无组织的编程 (unstructured programming) 面向过程的编程 (procedural programming) 模块化的编程 (modular programming) 面向对象的编程 (object oriented programming) int main(int argc, char* argv[]) { static char* szVal=“hello world”; printf(“%s\n”,szVal); return 0; } int main(int argc, char* argv[]) { char* szVal; If( getcontent(szVal) ) printf(“%s\n”,szVal); else printf(“error\n”); return 0; } bool getcontent(char** sz) { sz = new char[24]; if( sz==NULL) return FALSE; else strc

文档评论(0)

1亿VIP精品文档

相关文档