在Objective-C中开发应用程序时有没有人使用Google's Protocol Buffers
目前有没有将.proto
文件编译成Objective-C的项目,所有Google文档都只是引用Java,C ++或Python。
答案 0 :(得分:15)
我一直在研究Cyrus的项目。它基于protobuf 2.3并作为protoc
插件(protoc-gen-objc
)使用,而不需要修改的protobuf分发。
您可以在GitHub上找到它作为protobuf-obj项目。
答案 1 :(得分:4)
Third Party页面列出this Objective-C port。不幸的是,该项目目前似乎是空的,但无论如何看到它是令人鼓舞的。我听过有关该项目的内部谣言,但在今天之前没有将其视为一个开源项目。
您可以与项目业主(Cyrus Najmabadi)联系,询问相关信息......
(小琐事 - 在加入Google之前,Cyrus曾经在微软的C#团队工作过。)
答案 2 :(得分:2)
这可能有用,也可能没用,但Apache Thrift(最初在Facebook开发)支持Cocoa,似乎有人试图在iPhone中使用它。
Thrift正式支持更多语言。但是协议缓冲区有5倍的Stack Overflow兴趣,所以谁知道它在维护方面是否是一个很好的替代品 - 更不用说与你自己的项目的兼容性了!不过,也许值得考虑。
我刚问了一个相关的问题,如果得到了很好的答案,你可能会觉得有用:Any success using Apache Thrift on iPhone?
答案 3 :(得分:2)
Protocol Buffers v3 supports Objective-C作为一流语言。
要从.proto
文件生成Objective-C代码,请使用objc_out
选项调用编译器:
protoc --proto_path=src --objc_out=build/gen src/foo.proto src/bar/baz.proto
答案 4 :(得分:1)
我更喜欢在我的objc项目中使用c ++生成的类,工作得很好。
我确实尝试过objc PB版但没有成功。