论软件实现之面向对象方法学


作为一名Android工程师,最熟悉的语言莫过于Java语言,而Java语言的核心思想就是面向对象,那么究竟何为面向对象,面向对象的开发过程是怎样的呢?下面就个人积累的开发经验做简单分享。

在《面向对象技术语典》中将“面向对象”定义为:一种使用对象、消息传递、类、继承、多态和动态绑定来开发问题域模型之解的范型。那么由此可见面向对象有几个重要的基本特征,即抽象性、分装性、继承性、多态性,这些特性贯穿着面向对象编程的始末。而面向对象方法与传统的软件工程方法相比,有很多优点,比如,面向对象与人们习惯的思维方式一致,这种对现实的抽象,再具体去描述现实的思想和在开发过程中解决复杂问题时逐步深化的渐进过程是一致的,面向对象也是降低系统复杂度的好方法,最重要的是,面向对象可以提高软件系统的可重用性,这样的复用对软件形成的效率提升和应用系统的维护以及扩展有着很大的好处,也可以说是程序开发者的一大福利。在Java语言形成的软件运行过程中,一切皆为对象,对象的产生必然依赖于相应类的实例的构造,从宏观的角度看,这种抽象和具体的对立关系也是客观世界的对立和统一的描述。

  • 方法

要想学会面向对象的分析思想,就必须能够对客观世界的系统进行建模,这样才能更好的明确问题需求,设计系统的实现框架。开发人员应该熟知的三种分析模型(对象模型、动态模型、功能模型)是面向对象设计的基础,在面向对象设计中,系统设计是对软件问题的解法的最高层策略,而对象设计则作为详细的主体部分,负责所有属性的可见性被定义。其实说白了,面向对象编程就是以类和对象为中心,把客观实体的功能以及其使用的数据封装起来然后逐渐搭建系统,使软件重用在面向对象开发中成为一种很自然很常见的开发模式。在系统实现的后期,面向对象的测试和维护是不可或缺的,面向对象的测试从单元测试、集成测试、系统测试到回归测试都是以面向对象为核心思想的,理解这些技术,也能很好地帮我们理解和把握面向对象思想的关键,利于我们的程序设计与开发。同样,理解是维护的基础,而重构“源设计图”则是理解的基础,因为对象的多态性、继承等特性会给理解原设计增加困难,为了日后维护的方便,应该在开发时就使软件的设计思想易于理解。

参考资料:殷锋《软件工程》

你可能感兴趣的:(方法,面向对象,软件,动态,软件实现)