gpt4 book ai didi

objective-c - 为什么 Apple 在其内部代码中使用 Obj-C 而不是 Swift

转载 作者:搜寻专家 更新时间:2023-11-01 05:48:29 25 4
gpt4 key购买 nike

我今天正在编写一些代码,并在 Swift 中为我的一个 View Controller 创建了一个类。我忘了将我的类绑定(bind)到我的 viewcontroller,所以当我打开助理编辑器时,它给了我通用的 viewcontroller 基类。

在这里image 1

我注意到它似乎在 Obj-C 中。 (在我只是根据之前看到的 Obj-C 中的一些其他代码进行猜测之前,我从未研究过 Obj-C)

为什么 Apple 使用 Obj-C 而不是 Swift。我认为 Apple 的官方语言是 Swift,而且我认为 Apple 确实大力插入 Obj-C 开发人员使用 Swift 而不是 Obj-C。

如果 Swift 应该是 Obj-C 的更好版本,并且有了 Swift 4,我们几乎可以在 Swift 中做 Obj-C 可以做的所有事情,为什么 Apple 不直接转换到 Swift 和过时的 Obj-C(我明白这需要时间和金钱,而且不会一夜之间发生)

在我看来,对于初学者来说,Swift 比 Obj-C 更容易学习(我知道,因为我在大约 2 个月内学会了它)而且 Swift 比 Obj-C 更简单,布局也更好

我知道 Swift 有很多问题,因为我每天都会遇到错误,但我敢打赌 Obj-C 刚开始时更糟(事后诸葛亮)所以几年后 Swift 将等于或大于 Obj-C保持其基本的简单性

如果我错了请指正

最佳答案

Cocoa 中有几个核心概念,在 Swift 中根本不可能实现。我最喜欢的是响应链。尝试在 Swift 中做到这一点……

每种早期绑定(bind)的静态类型语言都需要动态开门器才能为 GUI 应用程序构建框架。对于 Swift,这是 Objective-C。没有 Objective-C 的 Swift 根本无法工作。

因此 Swift 从未被称为“官方语言”。并询问 AppKit 团队的一些人,他们会回答什么。

关于objective-c - 为什么 Apple 在其内部代码中使用 Obj-C 而不是 Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46952620/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com