{"id":21085,"date":"2018-04-04T15:00:05","date_gmt":"2018-04-04T19:00:05","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=21085"},"modified":"2018-04-04T15:00:05","modified_gmt":"2018-04-04T19:00:05","slug":"swift-protobuf","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2018\/04\/04\/swift-protobuf\/","title":{"rendered":"Swift Protobuf"},"content":{"rendered":"<p><a href=\"https:\/\/github.com\/apple\/swift-protobuf\">Apple<\/a> (via <a href=\"https:\/\/twitter.com\/rustyshelf\/status\/978804578199089152\">Russell Ivanovic<\/a>):<\/p>\n<blockquote cite=\"https:\/\/github.com\/apple\/swift-protobuf\"><p><a href=\"https:\/\/swift.org\/\" rel=\"nofollow\">Apple&rsquo;s Swift programming language<\/a> is a perfect\ncomplement to <a href=\"https:\/\/developers.google.com\/protocol-buffers\/\">Google&rsquo;s Protocol\nBuffer<\/a> (\"protobuf\") serialization\ntechnology.\nThey both emphasize high performance and programmer safety.<\/p>\n<p>This project provides both the command-line program that adds Swift\ncode generation to Google&rsquo;s <code>protoc<\/code> and the runtime library that is\nnecessary for using the generated code.\nAfter using the protoc plugin to generate Swift code from your .proto\nfiles, you will need to add this library to your project.<\/p><\/blockquote>\n\n<p>Previously: <a href=\"https:\/\/mjtsai.com\/blog\/2018\/02\/06\/serialization-on-macos-and-ios-speed-and-size\/\">Serialization on macOS and iOS: Speed and Size<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Apple (via Russell Ivanovic): Apple&rsquo;s Swift programming language is a perfect complement to Google&rsquo;s Protocol Buffer (\"protobuf\") serialization technology. They both emphasize high performance and programmer safety. This project provides both the command-line program that adds Swift code generation to Google&rsquo;s protoc and the runtime library that is necessary for using the generated code. After [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2018-04-07T15:02:39Z","apple_news_api_id":"7141f430-74bf-4063-8ff2-82281b38a5d3","apple_news_api_modified_at":"2018-04-07T15:02:39Z","apple_news_api_revision":"AAAAAAAAAAD\/\/\/\/\/\/\/\/\/\/w==","apple_news_api_share_url":"https:\/\/apple.news\/AcUH0MHS_QGOP8oIoGzil0w","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[4],"tags":[74,71,901],"class_list":["post-21085","post","type-post","status-publish","format-standard","hentry","category-programming-category","tag-opensource","tag-programming","tag-swift-programming-language"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/21085","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=21085"}],"version-history":[{"count":1,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/21085\/revisions"}],"predecessor-version":[{"id":21086,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/21085\/revisions\/21086"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=21085"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=21085"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=21085"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}