OO:建立对象的思维方式,对面向对象思想和理论有进一步的理解面向对象技术是一种建模理论。

UML:能够熟练地使用UML表达面向对象的设计思想,体现oo的建模语言,是将 OO 理论转化为实践的工具。

MODEL:运用面向对象技术的一般原则和模式进行应用系统的分析和设计建模。建模是最终目的。

8 次实验,考勤 20% + 实验报告 40% + 期末大作业 40%

软件工程和面向对象方法

在没有软件工程之前,由于项目的规模越大,导致项目的不可控,使得高质量的软件开发的困难。

产品质量得不到保障,工作效率低下,开发成本严重超支等等…..

软件工程的目标

  • 使软件开发的成本能够控制在预计的合理范围内。
  • 使软件产品的各项功能和性能能够满足用户需求。
  • 提高软件产品的质量。
  • 提高软件产品的可靠性。
  • 使生产出来的软件产品易于移植、维护、升级和使用。使软件产品的开发周期能够控制在预计的合理时间范围内。

面向对象的方法

可维护、可服用、可扩展、灵活性好。

面向对象分析设计编程思想,通过封装、继承、多态把程序的耦合度降低(传统印刷术的问题就在于所有的字都刻在同一版面上造成耦合度太高所致),使用设计模式使得程序更加的灵活,容易修改,并且易于复用。

结构化和面向对象的区别

  • 结构化思维用过程刻画数据间关系
  • 对象思维直接用类表达数据间关系
  • 结构化中,数据是死的,全部依赖算法操作
  • 对象思维中,数据是活的,“她”知道自己的信息(属性),并能完成自己的工作(操作)
  • 结构化思维更像是一个人在解决所有问题对象思维更像是一个团队的分工协作

面向对象的优点

  • 顺应人类思维习惯:让软件开发人员在解空间中直接模拟问题空间中的对象及其行为
  • 稳定:较小的需求变化不会导致系统结构大的改变当需求变化时,功能最易变,数据较易变,对象较稳定。
  • 复用:
    • 代码重用:类库、框架等重用机制
    • 提高质量:减少由于编制新的系统代码而产生的成本
    • 通过继承、关联、封装等手段

UML图

基于面向对象的分析与设计我们需要使用 uml 图来表示出来,有以下几种图。

不过使用中文说这是什么图,就真的头疼,尤其是刚刚学习的时候,很容易混掉,所以还是用英文来解释。

Class Diagram

类图,感觉开发过 java 对这个会非常熟悉,图例如下

Sequence Diagram

顺序图

Collaboration Diagram

协作图,有时候也叫通信图,搞不懂为什么要这么多的意思。
害~

Activity Diagram

活动图

StateChart Diagram

状态图