为什么必须在Objective-C中对Uikit或Cocoa进行编码
Why did UIKit or Cocoa have to be coded in Objective-C?
定期提出一个模棱两可的陈述,即Objective-C对于创建Uikit&它的前身可可,但是很少澄清或详细说明。与消息转发有关的东西含糊不清。但是所有用户界面转发事件,无论其编写了什么语言。所以我现在问:Objective-C的哪些具体方面对于Uikit或其前身可可的实现至关重要,C 或Java也无法提供该方面?
该方面是能够动态结合并动态键入的能力。
有几个需要的例子,但最清晰的是响应者链。尝试在迅速写(不使用Objective-C或Objective-C的RTE)中写下它。
继续!,不,不是每种语言。IE。在C 中,他们必须添加信号和插槽,以使该语言对现代UI编程有用。基本上,每种没有动态绑定的语言 - 至少是倒退 - 对此没有用。
- Swift使用Objective-C作为动态开门器。
- C 使用信号和插槽。
- C#有代表。
btw:GUI的概念和动态调度的概念是同时在同一位置发明的。也许是有原因的。
相关文章:
- 如何确定我已使用非编码文件到达 EOF?
- 使用 MATLAB 编码器生成C++代码:编译错误"undefined reference to `rgb2gray_tbb_real64'"
- 在卡萨布兰卡形成编码参数的列表
- 使用C++进行游程编码
- 如何将不同的可执行文件合并到一个窗口框架中进行编码?像浏览器一样
- 使用已使用 java 编码的 openssl 解码数据
- boost 是否有按特殊类型值编码状态"compact optional"?
- 如何在CPP的给定目录中列出UTF编码的文件名?
- 如何使用 C++将 ISO-2022-KR 编码转换为 UTF-8 编码?
- 绝对编码器十六进制输入
- 防止C++中的硬编码数字
- 将C++ std::string 转换为 UTF-16-LE 编码的字符串
- 使用文件内容作为硬编码字符串
- 运行长度编码程序 c++ 的问题
- 以C++为单位进行运行长度编码
- *新的编码器*格式和运算符
- 在CRC-16 CCITT中将数据从二进制解码为文本,我应该输入一个码字,使用CRC生成器进行编码
- 使用 IMFSinkWriter 编码的视频的播放速度会根据宽度而变化
- C++和带有国家符号的文件路径(也许用 UTF8 编码)
- 为什么必须在Objective-C中对Uikit或Cocoa进行编码