Swift 是否有热重载

Is there Hot Reload with Swift

我正在研究 Swift 功能,如果有热重载功能或类似“即时 运行”之类的功能,我有疑问。

https://developer.apple.com/xcode/swiftui/ 他们在这个页面上说:

"Xcode 包括直观的设计工具,使使用 SwiftUI 构建界面就像拖放一样简单。当您在设计 canvas 中工作时,一切您编辑的内容与相邻编辑器中的代码完全同步。代码在您键入时会立即显示为预览,您对该预览所做的任何更改都会立即显示在您的代码中。Xcode 重新编译您的更改会立即插入到您的应用程序的 运行ning 版本中 — 始终可见且可编辑。"

我的问题是,这是否仅适用于 UI-使用 Swift 开发但不适用于普通逻辑。

这只是预览的一项功能,但如果您 select 预览工具栏中的“运行”按钮,它会 运行 大量任意代码与热重载非常相似。

My question to that is if this is only true for UI-Development with Swift but doesnt work with thie normal Logic.

您在寻找 REPL? If so, you might be looking for Swift Playground 吗? Xcode 也有自己的 playground 系统,但我找不到好的支持文档。

关于处理正常逻辑的问题,而不仅仅是 UI 组件的预览,截至今天,Apple 并未提供该功能,但是有一个开源项目旨在实现您的目标寻找:

https://github.com/krzysztofzablocki/Inject