一面向对象程序设计思想
1 和面向过程关注点不同
过程: 程序执行流程和逻辑 (局部功能)
对象: 程序中的对象 (程序结构)
2 对象
现实世界中的实体和事物 可以看成是一种具有自身属性和功能的构件,
程序是由不同的对象组成,实现程序的功能是调用对象的功能
(在Java中,指由类创建的对象)
类(对同类事物的抽象描述)
3 如何学习面向对象程序设计思想
Everything is Object !
想到某一功能,应该想到哪一对象具备该功能
提到数据,首先想到该数据属于哪一个对象
4 面向对象设计步骤
提炼对象
分析程序中的对象有哪些(名词法)、抽象
对同一类事物抽象描述
属性:事物的特征和外观
行为:对象的功能
描述对象
创建对象
调用对象
5 面向对象的三大特性
封装:对外隐藏,对内公开(隐藏内部实现细节)高内聚,低耦合(为了保护程序的正常使用和运行)
继承:实现代码的复用
多态:同一操作,不同对象不同实现(行为)
二 界面和业务逻辑的分离
分层思想:将整个应用程序分解为若干个层次(表示层、业务层、数据访问层)。软件的需求是会改变的,
要以最少的改变以适应软件需求的改变。在系统中,有很多部分是稳定不变的。有些部分是以与改变的。
用户注册:用户输入用户名、判断用户名是否存在、判断用户名是否合法(符合制定的规则,如长度不能少于八位,
只能包含字母、数字,不能包含其他特殊字符),用户输入密码(密码符合制定的规则),两次输入密码,并且要判断两次密码是否相同。最后,
用户名不存在且符合规则,密码符合规则,且两次输入相同,然后进行注册,所谓注册就是将用户名和密码写入到数据库中。
找出系统中稳定不变的部分和易变的部分,
最根本的目的:采用分层思想,将应用程序分为多个层次,提高软件的可维护性。
三 ATM取款机、扑克牌游戏
1 ATM取款机
界面 : 显示欢迎信息、显示菜单、身份验证(只负责数据的输入和验证结果的提示,以及输入数据的合法性判断)、查询(只负责显示,
卡内余额是由业务层提供的)、取款(只负责数据的输入与显示,具体修改卡内余额、机内余额等都是业务逻辑范围)
业务:查询(只返回余额,并不决定怎么显示数据)
2 扑克牌游戏
生成扑克牌、洗牌、抽牌、比较牌的大小、输出结果
业务逻辑:生成扑克牌、洗牌、抽牌、比较牌的大小
界面:计算抽牌的界面、用户抽牌的界面、输出结果的显示
Autor:VincentAdamNemessis
E-mail:vincent5519@yeah.net
QQ:3377299629
Wechat:ZTXLoveC3344