仮想通貨サービス BitCapitalZ の日記

仮想通貨関連のブログです Ripple, Ethereum 仮想通貨2.0に注目しています

Ripple-RESTとripple-libが統合されRippleAPIになったことについての技術的な考察

https://ripple.com/dev-blog/introducing-rippleapi/ こちらの件です。おそらくエンジニアの方はそもそも疑問に思うことがあると思います。
Ripple-REST はインタフェースで Ripple-lib はライブラリで違う概念のものが統合されるってどういうこと?
その2つが統合されて RippleAPI というインタフェースになったと思ったらそれは新しい ripple-lib という形で提供されているってどういうこと?

https://wiki.ripple.com/API_Overview その疑問はこのページに書かれている内容を元に以下に解説します。

まず一番プリミティブな ripple の API は rippled が提供しています。rippled は rippled WebSocket API もしくは rippled JSON-RPC API というインタフェースを用意していてそれらを通して rippled にいろんなリクエストを送れます。ただしあまりにもプリミティブ過ぎて非常に面倒です。
そこで rippled が用意する API を便利に使えるようにした javascript のライブラリが ripple-lib です。ただこれもすごく便利というわけではないですがこれで出来ないことは無いです。
一方で ripple-lib よりもっと便利にリクエストを送るしくみとして Ripple-REST が用意されていました。これはライブラリではなくて、rippled とクライアントの間に Ripple-REST をサポートするサーバーを建ててそのサーバーを介して rippled へリクエストを送ることができます。Ripple-REST をサポートするサーバーはとてもシンプルな REST API を用意しておりとても簡単便利に rippled へリクエストを送れます。ただ、クライアントは直接 rippled とやりとりするわけでなかったりでWebSocketを用いた双方向なやり取りができなかったりプリミティブなリクエストが送れなかったりと機能に制約があります。

上記の内容より、ripple-lib と Ripple-REST は片やライブラリ方がインタフェースと違う概念の物ですが、どちらも rippled へのリクエストを抽象化したものであります。
今回の発表では Ripple-REST の方のサポートを打ち切り Ripple-REST を廃止する方向となりました。
その一方で ripple-lib をより充実させてこれまで通りrippledに対してあらゆる事が出来つつ Ripple-REST 並に簡単便利に使えるようにしてくれたというわけです。

同じ様な物を2つも用意しておくのは無駄なので技術的な視点では特に大きな意味を持つわけではなさそうですが、
これはビジネス的には大きな意味を持つと考えております。ビジネス的な視点での考察は次回致します。

いや〜、、 Ripple-REST がなくなって javascript のライブラリだけとなると個人開発者からすと色々
制限がでてきて面倒すおそらく gatehub とかそういったところが便利な REST な api 用意してくれちゃって
よりエコシステムが発展するみたいな流れに。。。こういった話を次回します。