位置:首页 > 软件操作教程 > 编程开发 > C# > 问题详情

C# 面向对象编程的含义

提问人:刘团圆发布时间:2020-12-04

    面向对象编程解决了传统编程技巧的许多问题。过程化编程(Procedural Programming)常会导致所谓的单一应用程序,即所有功能都包含在几个代码模块(常常是一个代码模块)中。而使用OOP技术,通常要使用许多代码模块,每个模块都提供特定功能。而且,每个模块都是孤立的,甚至与其他模块完全独立。这种模块化编程方法提供了非常丰富的多样性,大大增加了重用代码的机会。

    为进一步说明这个问题,把计算机上的一个高性能应用程序想象成一辆一流赛车。如果使用传统的编程技巧,这辆赛车就是一个单元。如果要改进这辆车,就必须替换整车,把它送回厂商那里,让汽车专家升级它,或者购买一辆新车。如果使用OOP技术,就只需要从厂商处购买新引擎,自己按照其说明替换它,而不必用钢锯切割车体。


    在传统应用程序中,执行流常是简单的、线性的。把应用程序加载到内存中,从A点开始执行,在B点结束,然后从内存中卸载,在这个过程中可能用到其他各种实体,例如在存储介质上的文件或显卡的功能,但处理的主体总是位于一个地方。用到的代码一般与使用各种数学和逻辑方式处理数据相关。处理方法通常比较简单,使用基本的数据类型(例如整型和布尔值)建立比较复杂的数据表达方式。

    而使用00P,事情就不是这么直接了。尽管可以获得相同的效果,但其实现方式是完全不同的。OOP技术以结构、数据的含义以及数据和数据之间的交互操作为基础。这通常意味着要把更多精力放在项目的设计阶段,其好处是项目的可扩展性比较高。一旦对某种类型的数据的表达方式达成一致,这种表达方式就会应用到应用程序以后的版本中,甚至是全新的应用程序中。这种一致的表达方式可以极大地缩短开发时间。这就是上述赛车示例的工作原理-这里的一致是指“引擎”的代码是结构化的,这样就可以很容易地替换成新代码(即新引擎), 而不需要找厂商帮忙。这也表示,引擎创建出来后可用于其他目的,可以把它安装到另一辆车上,或者用它驱动潜艇。


    除了数据表达方式的一致性外,OOP编程还常可以简化任务,因为较抽象实体的结构和用法也是一致的。例如,不仅把输出结果发送给设备(如打印机)所使用的数据格式是一致的,而且与该设备交换数据的方法也是一致的,这包括它理解的指令等。回到赛车示例上,要达成的一致做法包括引擎如何连接到油箱,如何把驱动力传送给车轮等。

    顾名思义,OOP技术要使用对象。

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部