Progress?

瀏覽次數:101 次
跳到第一則未讀訊息

jpsc...@googlemail.com

未讀,
2016年7月22日 清晨7:09:452016/7/22
收件者:The Blink Protocol
Hey,

I find myself again in the situation of needing to look at data encoding formats and choosing one.
I always liked Blink but at the limited number of implementations made me hesitant to use it and unfortunately I did not have the time
to write one on my own.
So I was wondering if anything changed since 2014 in terms of available implementations, as the web page does not list any more and the github account only lists
jblink.
Are there any other implementations? In particular I would be interested in Javascript, C and Python libraries.

Kind regards,
Jens


mikael.b...@gmail.com

未讀,
2017年5月22日 下午1:06:512017/5/22
收件者:The Blink Protocol、jpsc...@googlemail.com
I agree with Jens.

Currently I think Google protobuf is the best alternative, now that blinkprotocol never seem to reach version 1.0 final, and no C++ reference implementation is available. However, protobuf is far from perfect, no optionals (proto3), AnyOf is a clunky version of dynamic groups, no decimals, etc.

Since there is an official JSON mapping to blinkprotocol (just as for proto3), the need for a JavaScript implementation is not as important (when used in e.g. a REST API). So I think C++ and Java are a minimum.

So, what I'd like to have:

* Reference C++ implementation
* Reference Java implementation (jblink is a start, msgcodec is another...).
* blinkc (protoc equivalent) to generate message classes (with nice builder pattern). A plus if blinkc would be available in Java (as well) to fit into the Java build ecosystem (maven/gradle).
* Protobuf style tag-value format, to simplify schema upgrades in many scenarios. Would be simple to introduce, since there are basically only two datatypes on the wire (VLC and binary) + repeated of each them.
* Official documentation format in blink schema, for messages, fields, enums, types etc. These should be available in the SchemaExchange messages. Compare e.g. proto comments + descriptor.proto or Javadoc. Yes, @doc annotation works, but not so user friendly.
* Final 1.0 version

Perhaps blinkprotocol should be moved to a more standalone github open source project, with e.g. the Java package 'org.blinkprotocol' instead of 'com.pantor' etc?
The page blinkprotocol.org could be moved to github pages. This way blinkprotocol would not depend so much on a single company that no longer prioritize it, and at the same time lower the threshold for external contributors.

If there would be an effort into making blinkprotocol final and truly open source, then I'd be happy to contribute :-)

Regards,
Mikael
回覆所有人
回覆作者
轉寄
0 則新訊息