在Objective-C中在运行时创建类有什么意义?

atx*_*txe 1 runtime objective-c objective-c-runtime ios

我最近重读了Mike Ash关于如何在Objective-C Runtime创建类的有趣教程

我很长一段时间,我想知道在哪里应用这种强大的语言功能.对于我脑海中出现的大多数想法,我总是看到一个过度的解决方案,最终我会继续NSDictionary.在运行时使用创建类的情况是什么?我看到的唯一一个是Obj-C翻译......更多想法?

tt.*_*lew 6

当有人需要在运行时创建类时,我会看到一些可能的选项

  • 隐藏有关它的信息(在大多数情况下它没有帮助,但是......你可以)
  • 执行多重继承(如果你真的需要它:)
  • 使用你自己的语言(即一些像XML一样),你的程序可以解释,用Obj-C编写(类似于NSProxy,但更好.)
  • 创建一些可以在运行时更改其行为的动态类

一般来说......有一些可能的用法.但在现实世界中,在默认服务应用程序中没有必要这样做,实际上:)