MuleSoft(ミュールソフト)はあらゆるものをシステムでつなぎ自動化し、ひとつのプラットフォーム上での動作を可能にするサービスです。
今回はMuleSoft Anypoint Platformを学びたい方に向けて、学習に必要な簡単な環境準備や学習方法などを詳しく解説いたします。
MuleSoft(ミュールソフト)とは?
MuleSoftについて、一言で言い表すのは難しいのですが、公式の言葉を借りると、MuleSoft社が提供するAnypoint Platformは「APIとインテグレーションをひとつのプラットフォームで」実現するiPaaSのサービスとなります。
MuleSoftは企業名で、製品名はAnypoint Platformですが、このAnypoint PlatformをMuleSoftまたは縮めてMuleと呼称する人が多いです。本ブログでもMuleという呼び方で統一したいと思います。
MuleSoftといえば、2018年Salesforceが買収したことにより、大きなニュースとなりました。今後、Salesforce社がiPaaSとしての価値を評価していることを意味しています。
今後より大規模なクラウド化が進むにあたって、Muleを扱うシステムが拡大していくものと予想されます。本記事では開発者がMuleを始めるにあたっての簡単な環境の準備や学習方法などを記載していきたいと思います。
Muleの学習で必要なツールや環境
これからMuleの学習を始めるにあたって何から手をつければ良いか分からない方も多いと思います。まずはMuleSoft Trainingで勉強しながら、そしてMuleを実際に触りながらMuleの機能や実装方法を理解していくことをオススメします。
そのためには、MuleSoft Trainingのサインアップとトレーニング内で使用するアカウントやツールをお使いのPC上で準備しておきましょう。具体的には以下のものをサインアップ及びインストールしておけばOKです。順番通りでなくて問題ありません。
- MuleSoft Training
- Anypoint Platform
- Anypoint Studio
- Salesforce環境
- Advanced REST Client
Salesforce環境はAPIを作成する上で必須という訳ではありませんが、トレーニング内でもSalesforceとのシステム連携を実施していることもあり、準備物としてリストアップしています。各ツールについての説明は後述します。
MuleSoft Training
Muleの使い方を纏めた公式のトレーニングサイトになります。Salesforceでいうトレイルヘッド的な位置付けですね。
Muleトレーニングサイトはこちらになります。「Login」→「Training」からアカウントの作成、ログインができます。
![MuleSoft trainingのサインアップ](https://quanz.co.jp/blog/wp-content/uploads/2022/06/図1-2-1024x809.png)
殆どが英語ですが「Anypoint Platform Development: Fundamentals (開発: 基礎) (Mule 4)」は日本語でかつ動画での説明なので、Mule開発初心者はまずこちらを学習するといいでしょう。
こちらのトレーニングを消化することでAPIの実装やAnypoint Platformを使用した開発のライフサイクルなどのイメージを掴むことができ、トレーニング内で用意されている演習問題もなかなかの骨太なので、業務を想定したトレーニングを受けることができます。やや動画のペースが早いのですが、実際に動かしながらやった学習すると2週間くらいかかるのではないかと思います。また、上記トレーニングはMuleSoftの資格試験でもある、「MuleSoft Certified Developer – Level 1 (MuleSoft 認定開発者 Level 1, MCD)」の内容も兼ねているので、開発者としては必要な基礎知識が詰まっているといっても過言ではありません。
Anypoint Platform
まずはMuleそのものであるMuleSoft社の製品Anypoint Platformです。こちらはブラウザベースの統合開発環境となっています。
初めての方は30日間の試用期間があるトライアル版があるので、そちらを使って使い方を学ぶといいでしょう。こちらのサイトにある「無料トライアル」からアカウントを作成してください。
![Anypoint Platformのサインアップ](https://quanz.co.jp/blog/wp-content/uploads/2022/06/図2-934x1024.png)
Anypoint Platformはインタフェースの定義情報を作成したり、作成したAPIの公開先として使用されます。
Anypoint Studio
MuleのAPI開発を行うためのIDEです。EclipseベースのIDEですが、プラグインが充実しており、GUIベースでの実装ができるため、初心者でも扱いやすいツールとなっています。
こちらも公式サイトからダウンロードが可能ですので、「Studioのダウンロード」からダウンロードしてください。
![Anypoint Studioのダウンロード](https://quanz.co.jp/blog/wp-content/uploads/2022/06/図1-1-1024x615.png)
Salesforce環境(セールスフォース)
APIの実装ということであれば、上記のAnypoint PlatformやAnypoint Studioを準備すれば作成が可能ですが、Mule単体で動かすケースとしては少なく、他システムと連携しながら動かすことが多いです。
今回はシステム連携として、Muleと繋がりが強く、お手軽に環境を準備できるSalesforce環境を使用ます。軽く触れる程度の練習用であればDeveloper Edition環境やトレイルヘッド内で作成されるTrailhead Playground環境でOKです。
Developer Edition環境はこちらのサイトを参考に作成してください。
Advanced REST Client
必須ではありませんが、作成したAPIを叩くためのツールについても準備します。APIを実行して動作が確認できれば何でも良いですが、MuleSoft社のトレーニングではAdvanced REST Clientを使用しているため、本記事でもAdvanced REST Clientを使用します。
Advanced REST Clientはこちらのサイトからダウンロードとインストールを実施してください。
![Advanced REST clientのダウンロード](https://quanz.co.jp/blog/wp-content/uploads/2022/06/スクリーンショット-2022-06-18-16.59.16-1024x468.png)
おわりに
簡単ですが、Muleを始めるにあたっての環境準備について説明しました。API開発となると、画面(UI)とデータベースを繋ぐ部分の実装となるため、イメージが掴みづらい点が出てくることはあるかと思いますが、各種ツールを使いこなしながら徐々に覚えておきましょう。