在 Swift 中,我设计控制台应用程序的代码重用选项是什么,我如何实现它们?

In Swift, what are my code reuse options for designing console applications, and how do I implement them?

我当前的代码库涉及用 C++ 编写控制台应用程序,我在其中导入包含许多常见 类.

的静态库

我想转到 Swift 并复制此过程。但是,我遇到了一些困难:

目前我一直在尝试编写单个视图应用程序并以这种方式导入框架,但错误已经够多了,我真的很想简化它并坚持使用控制台应用程序。

鉴于此,到目前为止,我对代码重用的唯一选择似乎是将 Swift 文件保存在公共目录中,并根据需要将它们拖到控制台应用程序中。由于这些控制台应用程序是供我自己使用的,而且我只对它们生成的数据感兴趣(即我实际上并没有将程序提供给用户),这实际上是一个可行的解决方案。然而,我希望可能会有一些更干净的东西。

关于如何为纯 Swift 控制台应用程序重用代码还有其他建议吗?如果是,我该怎么做?

您可以创建一个包含常用 类 的标准 Swift 框架,然后创建一个位于捆绑包中的控制台应用程序。这将允许您将框架复制到包的框架文件夹中,您的控制台应用程序将在 运行 时间访问该文件夹。

您可以在 Alsey Coleman Miller 的 article about using embedded frameworks in OS X command line applications 中找到有关此方法的更多详细信息。

当然,缺点是您的控制台应用程序现在位于一个包中。