370 likes | 525 Views
面向对象应用程序开发. — 张诚洁(副教授,国家级高级程序员) Email:zhchjie@21cn.com Tel:2988867. 课程目标. 通过学习掌握 Java 语言的编程思想和编程技巧,培养学生作为一个程序员的基本职业素质,能够运用所学知识进行程序开发。 工作任务:在学习的过程中,边学边做,最终完成企业项目 —— 产品库存管理系统的开发。. 学习要求. 具有严谨的工作作风 具有吃苦耐劳的精神 具有自我学习的能力 具有团队合作和较强的语言表达能力 具有一定的外语水平.
E N D
面向对象应用程序开发 —张诚洁(副教授,国家级高级程序员)Email:zhchjie@21cn.com Tel:2988867
课程目标 通过学习掌握Java语言的编程思想和编程技巧,培养学生作为一个程序员的基本职业素质,能够运用所学知识进行程序开发。 工作任务:在学习的过程中,边学边做,最终完成企业项目——产品库存管理系统的开发。
学习要求 • 具有严谨的工作作风 • 具有吃苦耐劳的精神 • 具有自我学习的能力 • 具有团队合作和较强的语言表达能力 • 具有一定的外语水平
学习情境描述 要求为某一企业设计一个产品库存管理系统,能够实现工厂的产品入库、出库管理以及盘存。学生成立项目开发小组,完成系统的需求分析与设计,并绘制系统用例图、类图和功能结构图。
所需知识 面向对象的基本概念 MVC设计模式 面向对象分析与设计 Rational Rose绘图工具
重点及难点 面向对象分析与设计 MVC设计模式
能力目标 培养面向对象的分析与设计能力; 培养良好的团队合作意识及沟通协调能力; 培养英文阅读能力; 培养分析问题、解决问题的能力; 培养自学能力、动手实践能力和知识的融会贯通能力
面向对象的基本概念 通过上图,对现实世界的”学生”实体进行分析
对象 对象是现实世界的任何事物,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。对象用数据来描述它的状态,用方法描述对象的行为,实现了状态和方法的封装。 分析“学生”对象所具有的状态和行为
类 具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象。 分析“学生”类是从哪些对象中抽象而来的?
类和对象的联系 根据上图结合“学生”类分组讨论类和对象的区别
MVC设计模式 MVC(Model-View-Controller)设计模式是一种拆分方法,它将应用程序拆分成三个部分:模型、视图和控制器。
MVC模型 • 模型(Model):就是封装数据和所有基于对这些数据的操作; • 视图(View):就是封装的是对数据显示,即用户界面; • 控制器(Controller):就是封装外界作用于模型的操作和对数据流向的控制等。
MVC 体系结构的优势 多个视图使用同一个模型。 对客户机新类型更容易支持。
面向对象分析与设计 面向对象分析与设计的目的是对客观世界的系统进行建模,并获取系统实现方案。 以图书管理系统为例,进行面向对象的分析与设计,掌握面向对象的分析与设计方法。
需求分析 教师扮演客户,学生分组,选出一名学生担任项目经理,主持讨论,对图书管理系统做需求分析。
需求分析的结果 • 图书管理系统是为企业内部管理图书使用的,其功能如下: • 图书管理员可以登录系统。 • 登录图书管理员可以如下操作 ◆根据书名、作者、出版社查询图书; ◆可以新书入库; ◆可以删除书库中的信息; ◆可以修改书籍信息;
确定用例 • 系统中的角色: 图书管理员。 • 系统中的用例: ◆登录 ◆图书查询 ◆图书修改 ◆图书删除 ◆新书入库。
确定主要类 按照MVC的设计模式主要的类可以分为边界类、控制类和实体类。 • 边界类是角色与系统交互的界面: LoginForm类是用户登录页面,MainForm是查询页面、EditForm是修改和新书入库页面。 • 控制类是控制系统流程的类:MainApp类。 • 实体类是系统中需要保存信息的类:系统中需要保存信息的有User和Book。
建立数据库概念模型 根据实体类,可以得到数据库中的表有User和Book,然后再找出它们的关系,本需求没有关系。
Presentation Layer(表示层) Service Layer(服务层) Persistence Layer(数据持久层) EIS Layer (企业信息系统层) 分层设计的软件系统模式 分层设计的软件系统,可以把相似功能的类或组件放在同一层里 。从设计角度可以将一个应用系统分成四层结构如下图所示:
应用系统层次结构 表示层:是用户与系统交互的组件集合,用户通过这一层向系统提交请求或发出指令,系统通过这一层接收用户请求或指令,然后,将指令消化吸收后调用下一层,再将调用的结果展现到这一层。
应用系统层次结构 服务层:是系统的核心业务处理层,负责接收表示层的指令和数据,消化吸收后,进行组织业务逻辑的处理,并将结果返回给表示层。
应用系统层次结构 数据持久层:用于访问数据库,数据持久层中一般是通过DAO(数据访问对象设计模式)访问数据库的,也是为了降低耦合度,DAO被设计为接口,DAO通过JDBC实现。
应用系统层次结构 EIS层:企业信息系统层,是系统的数据来源,可以是数据库、文件,但多数情况下是指的是数据库。
系统类图 图书系统中的表示层
系统类图 图书系统中的Service层
系统类图 图书系统中的数据持久层
系统类图 图书系统EIS层对于的实体类
登 录 图 书 管 理 系 统 图书查询 图书修改 图书管理 图书删除 新书入库 绘制系统总体结构图
Rational Rose绘图工具 通过Rational Rose帮助文档,自主学习使用Rational Rose绘图工具绘制系统用例图和类图。
拓展性知识 • 软件需求的定义 • 需求分析的相关问题 • 需求分析的几个方面 • 需求文档规范 • 需求分析的任务与过程 • 需求分析的要求 • 需求调研方法 • 调研基本策略 • 结构化方法分析步骤 • UML方法分析步骤 • 企业级信息系统调研分析步骤 • 调研说明与基本问题 • 需求管理 通过网上查资料学习以上与需求分析相关的问题
课下实战 通过对图书管理系统的分析,按照企业要求,完成需求开发_产品需求规格说明书的填写