阅读元数据后,我相信这是这个问题的最佳位置(我不确定它是否属于这里,因为它不是特定的代码)。 问题是:Apple的Swift编程语言是否适用于加密密集型iOs / MAC OS X项目? 为什么这个问题与我有关,swift与objective-C兼容,但我不确定它与C ++加密库的兼容性如何?我正在考虑将C ++库用于应用程序的加密端(例如:Crypto ++)。有没有人在一个快速的应用程序中集成这样的库?它是可行的还是最好的选择是为库做一个Objective-C ++包装器并使用Objective-C中的那个?
答案 0 :(得分:2)
Swift目前无法直接与C ++交互。您必须使用ObjC ++实现将所有内容包装在ObjC接口中。如果您正在使用Crypto ++(如果您需要CommonCrypto中没有的算法,这很好),那么我个人会在纯C ++中编写所有低级内容,并使用Swift中的UI工作,一个小的ObjC ++接口层来读取结果。
我总是建议尽量减少你的ObjC ++足迹,所以即使你用ObjC而不是Swift写这个,我的推荐也是一样的。用纯粹的ObjC编写UI代码,用C ++编写引擎,在它们之间放一个瘦的ObjC ++层。
(请注意,我对ObjC ++有很强的偏见,因为我已经被它糟糕的工具支持和性能影响烧了太多次。每次发布的clang都让ObjC ++变得更好了,而且它已经很好了。可能有一天我的偏见不会准确,ObjC ++将成为一种优秀的语言。但我不认为那一天是今天,我认为Swift ++会在此之前出现反正。)