【问题标题】:When migrating to Swift 4, do I need to update 3.0 to 3.2?迁移到 Swift 4 时,是否需要将 3.0 更新到 3.2?
【发布时间】:2023-03-21 19:32:01
【问题描述】:

我计划将我的 Swift 版本更新到 Swift 4 和 Xcode 9,但我意识到 Apple 提供的迁移工具指定了 Swift 3.2。我目前在 Xcode 8 中运行 Swift 3.0。

在更新到 Swift 4(通过 Xcode 9)之前,我是否需要先更新到 Swift 3.2(通过 Xcode 8.3.3)?

【问题讨论】:

  • 试试看会发生什么。
  • 我试图避免这样做。如果我能避免潜在的错误,我会这样做。另外,我搜索了网络,没有人可以给我一个明确的答案,这就是我在这里问的原因。
  • 程序员尝试的东西。

标签: ios swift xcode swift3


【解决方案1】:

如果您正在谈论将 XCode 中的项目从早期版本的 swift 转换为最新版本,那么 不,您不需要将其更新为介于两者之间的东西,Xcode 会为您完成。即使我错了而你错了,Xcode 也会自动为你做。请记住,它会尽力而为,但有些事情已经发生了巨大变化。最好熟悉该语言并尝试逐步迁移您的代码。我自己在一个旧项目中遇到过这种情况,我必须每天上几节课并翻译它们,直到它们不再给我错误。我花了大约 4 天,其中花费的时间大约是每小时 2-4 个文件。

需要升级 swift 和需要升级 Xcode 有很大的不同。只是盲目地相信它。始终首先升级 Xcode,并确保您完全完成它。然后迅速迁移。你误会了。 swift的制作方式,不管你的代码是2.4、3.1、3.8。升级到最新版本将是相同的过程。从各种较低版本升级到最新版本的唯一区别是,您必须从当前使用的任何版本转换为最新版本。此外,如果您担心更新时出错,那么我强烈建议您使用源代码控制保存项目。如果你不熟悉源代码控制,那么在你开始弄乱它之前总是有一个原始项目的备份副本(我总是找到一种方法来搞砸它,所以要非常小心。我发现使用一个单独的闪存驱动器可以防止我犯愚蠢的错误)。

另外,在阅读了 cmets 之后。我想指出,您应该先更新您的操作系统,哈哈。我想我只是假设你已经这样做了 XD

【讨论】:

  • 感谢您的回答。我觉得我可以自己进行更改,但我对指定 Swift 3.2 的迁移工具有点困惑。似乎他们说我需要 Xcode 8.3.3,这将允许我运行 Swift 3.2,然后我可以使用迁移工具。我是不是误会了?我担心如果我没有 3.2,它不会尝试为我转换我的代码,而是会强制我手动完成所有操作。
  • 我更新了我的操作系统,然后更新了 Swift,它运行良好。而且我确实有源代码控制,因此我可以跟踪更改。另外,我了解更新 Swift 和 Xcode 之间的区别。我是从 2.2 到 Swift 3 这样做的,但当时我有一个受支持的迁移版本。这一次我没有,所以我想确保 Xcode 能够协助迁移,即使我有 3.0。感谢您的帮助。
【解决方案2】:

不,Swift 附带 XCode 供你参考: https://swift.org/download/#releases

【讨论】:

  • 我知道 Swift 是随 Xcode 一起提供的。无论如何,我仍然不确定是否需要更新到 Swift 3.2(通过 Xcode 8.3.x)或者我是否可以直接进入 Swift 4(通过 Xcode 9)。
  • 不,你不需要。如果您选择下载 Xcode 9。请确保您的 macOS 为 10.12.6 或更高版本
  • 我正在运行 MacOS 10.12.3。我很高兴你指出了这一点。我刚刚意识到最低要求是 10.12.6。我想我得先更新我的操作系统。
【解决方案3】:

我回答了我自己的问题。只要您拥有 Swift 3.0 或更高版本,就不必在更新到 Swift 4 之前更新到 Swift 3.2。我更新到最新的 MacOS 并更新了 Xcode 9。没有错误,但我收到了一些关于新字符串类型和不推荐使用的字符的警告。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 2019-01-11
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多