如何解决如何暂时停用Swift至Objective-C桥接标头的自动生成功能? 背景工作原理回顾问题可能的正确解决方案问题:偷工减料相关参考文献已修订
背景
比方说,项目App是50/50混合的Swift / Objective-C代码库。 Objective-C文件通过自动生成的“ App-Swift.h”文件导入一些Swift。
#import "App-Swift.h"
工作原理回顾
“ App-Swift.h”文件自动包含从Objective-C继承的所有Swift类:NSObject,UIView,UITableViewCell,UIViewController等;当然,所有@objc和@objcMemmbers都归因于此。
问题
在“ App-Swift.h”中添加任何内容时-导入该文件的所有Objective-C文件都必须重新编译。 即使实际上没有在Objective-C文件中使用添加到Swift的内容,但我们只是继承自UIView。
当您将“ App-Swift.h”导入许多文件时,所有这些都会加起来,并且会降低速度。
可能的正确解决方案
将代码库分解为小模块,以使接口隔离;避免NSObject继承;尽可能多地将Objective-C转换为Swift;在开发过程中私有所有@ IBOutlet,@ IBAction;等
问题:偷工减料
是否有一种方法可以至少通过任何Swift编译器标志手动禁用Swift到Objective-C桥接标头(“ App-Swift.h”)自动生成(但保留最后生成的App-Swift.h)?
这里还有其他快速取胜的想法吗?
相关参考文献已修订
快速和Objective-C的互操作性
https://dmtopolog.com/code-optimization-for-swift-and-objective-c/
https://swift.org/blog/bridging-pch/
https://developer.apple.com/documentation/swift/imported_c_and_objective-c_apis/importing_swift_into_objective-c
进入模块
https://blog.griddynamics.com/modular-architecture-in-ios/
https://www.bignerdranch.com/blog/it-looks-like-you-are-trying-to-use-a-framework/
https://www.bignerdranch.com/blog/it-looks-like-youre-still-trying-to-use-a-framework/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。