面向对象
面向对象的编程指的是,以对象作为程序的基本模块来进行软件的分析、设计和开发的一种思考方法,是一种设计哲学。
使用面向对象的编程语言写程序和使用老旧的诸如 C 和 Pascal 等过程式编程语言编写程序从根本上是不同的。过程式语言通过依靠过程(或程序)使用一系列说明来告诉计算机每一步该怎么做。然而, 面向对象的编程全部是关于对象的。这似乎是一个非常明显的声明。但是本质上,当我们谈论面向对象编程的时候,我们需要考虑对象。
对象是包含属性和方法的数据结构。对象可以是一个东西,这些对象可以是真实世界中的对象或者虚拟的对象。如果你四处看看,你会发现很多真实世界中的对象,并且,实际上,它们中的所有一切都能以一种带有属性和动作的面向对象的方式被模型化。
对象:指的就是人能够识别的东西
属性:对象的性质和所具有的信息
消息:对象和对象之间的信息传递,是对象之间通信的唯一手段
发送者: 送信的对象
接收者:收信的对象
通过消息协调各个对象之间的消息发送,使其作为一个整体运行,这就是面向对象的软件运行模式。
正是对象让面向对象编程那样强大。使用对象,我们可以模型化真实世界中的对象, 例如加多宝的罐子、或视频游戏中的诸如字符的虚拟对象。这些对象之后可以在我们的应用程序中交互以模型化真实世界中的行为或我们想要的虚拟世界中的行为。
在计算机程序中,我们不能在没有能告知程序期望什么样的属性和动作的蓝图的情况下创建对象。在大部分面向对象的编程语言中,这个蓝图以类的形式出现。类是一种允许我们把对象的属性和动作封装到单个类型中的结构。
我们在类中使用构造函数(initializers)来创建类的实例。我们通常使用这些构造函数来为对象设置属性的初始值或执行我们的类需要的其它初始化。一旦我们创建了类的实例,之后就能在代码中使用它了。
本文部分内容参考自面向对象编程和Objective-C编程全解一书