フレクトのクラウドblog re:newal

http://blog.flect.co.jp/cloud/からさらに引っ越しています

MuleSoftを感じてみる

こんにちは。CI事業部の川瀬です。
フレクトでも2020年度から新しい技術、MuleSoftに取り組んでいます。

MuleSoft一体どんなもので、どんな会社が使っているのか?と見てみると以下のリンクに辿れます。

www.mulesoft.com

トヨタNETFLIXも使っているのですね。

MuleSoftを使うと何がいいのでしょうか? ERPの代表格としてはSAP、Oracle富士通、ORBICなどの有名どころがあります。じゃ、プログラム書いて繋いじゃえばいいじゃないかと思います。 ところが実際は、業務Aを実行するにはシステムA、業務Bを実行するにはシステムB、挙句の果てには途中でデータ加工のためAccessやエクセルが出てくる場合もあります。 システムAからこのデータを取得して、システムBからはあのデータを取得して、ムムムとなってしまいます。
簡単にデータを取得して、うまいことと混ぜて画面に表示したい、ということでMuleSoftが着目され始めています。 もちろん、接続先をプラグイン化して様々なシステムにつなげることができる凄腕エンジニアがたくさんいれば話は別です。
対向システムのAPIを調べ、今度は別の対向システムのAPIを調べといった具合に、エンジニアの立場からは面白いかもしれませんが、経営者からみたらたまったものではありません。早い、安い、うまいが基本ですよね。
そんな中でMuleSoftは各種コネクタを用意してあり、簡単に対向システムと接続できちゃいます。

docs.mulesoft.com

一体、MuleSoftと通常の実装とではどこが違ってくると思いますか?比較すると以下のような感じになります。

          MuleSoft               カスタムコード(Java)                 
API 仕様 1. API 仕様を GUI の専用ツールで作成。シンタクックスの習得不要。
2. API 仕様に基づき API を実装
成果物:RAML / OAS
1. API 実装をコーディング
2. API 仕様を自動で生成
成果物:RAML/OAS
API 実装 GUI でフローを作成
データの変換部分のみ少量のコーディング
Eclipse 等の IDE 上でインテリセンスを活用してコーディング
具体例
f:id:k2-flect:20210321142424p:plain
実装例
public class DBSample {
public static void main(String[] args) throws Exception{
Connection conn = null;
...

どうですか?簡単そうでしょう。次回はもっと具体例と出したり、他の製品との比較もやっていきたいです。