objective-c - 混合过程和面向对象的编程

标签 objective-c oop programming-languages

所以,很久很久以前,我最初在我的第一个 BBC Model B 上使用 Basic 进行程序编程,然后在大学期间使用了少量的 Pascal,并在此过程中进行了汇编。

然后出现了 OO,它似乎在所有方面都更加明智,这就是我在 C++、Perl、Java、Ruby 中使用的全部......

在使用 iPhone 中断大约 8 年后回到非 Web 编程领域,我发现 Objective C 真的很容易上手,但时不时地不得不退出 Objective C 并回到普通的旧版本C 用于低级别的东西,这就是它再次回到过程编程的地方。

我所追求的是关于如何混合面向对象和过程式风格、如何进行内存管理、是否将过程部分包装在对象等方面的一个很好的指南。

此外,关于 C 的良好过程风格的良好基本指南也会有所帮助,因为我似乎再也无法从过程的角度思考问题了。

最佳答案

我的建议是使用面向对象编程作为最高级别的组织和过程编程来实现。 OO 最擅长定义接口(interface)、组件之间的契约、将代码划分为连贯的 block 等。

当程序员第一次开始学习对象时,有一种对对象发疯的倾向,当一个简单的内置类型可以做的时候,把眼前的一切都变成对象。每个数字都成为一个类,然后方法在这些类上激增,以备不时之需。它可能成为一种拖延,延迟您最终开始编写可以完成某些工作的代码的时间。

关于objective-c - 混合过程和面向对象的编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/857491/

相关文章:

iphone - 获取原始 Facebook Cookie 内容 iPhone

iphone - iOS OpenEars无法识别准确的声音

Java - 修改对象的内部数据,或使用修改后的数据创建新对象

c++ - 为什么所有数据类型都是 2 的幂?

multithreading - 生产者-消费者使用赋值

objective-c - 适用于 NSArray 中包含的字符串数量

iPhone : How to call other method from [_assetExport exportAsynchronouslyWithCompletionHandler: ^(void ) { }

arrays - 支持完整方法链的 Ruby Extended Array 类

r - 带有 lapply 的内部 S3 泛型

programming-languages - 实现一种新的编程语言