0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

マイクロフロントエンド(MicroFrontEnds)とは

Last updated at Posted at 2021-05-25

マイクロフロントエンドについての調査をまとめていきます。
今回はマイクロフロントエンドの概要について記します。後にマイクロフロントエンドの実装方法、技術なども投稿します。

マイクロフロントエンドとは

複雑、肥大化したアプリケーションの開発のため解決策、アイデア。
バックエンドからフロントエンド混合のMicroservicesチームを構成して、それぞれのチームがデータベースから UI に至るまでをすべて実装する。

因みに「Microservice」とはアプリケーションの構成要素を独立したサービス群 (マイクロサービス) へと分け、連携させる手法。

ad1e0adf-3116-959c-f208-3b290bc06c98.jpeg
↑一般的なマイクロサービスの構造 [1]
d8b91bac-8053-c7c2-8457-c9ea66e53a61.jpeg
↑マイクロフロントエンドの構造 [1]

マイクロフロントエンドの根底にある考え

使う技術やコードなどの面でそれぞれチーム毎に独立させようという点が重要。

技術

各チームは技術において他チームの影響を受けない。
フレームワークに関しても同様で、それぞれのチームがそれぞれに適したReact,Angular,Vue.jsなどのフレームワークを使うことができる。

コードやルール

技術同様、実際のコードも共有しない。
状態やグローバル変数、コーディングルールなども互いに依存しないよう独立して機能させる。
コンフリクトを避けるためprefixを決めておくとよい。

ブラウザネイティブの API を使う

コンポーネント間のデータのやりとりには、できるだけブラウザネイティブのイベントを使いましょう。
もしコンポーネント間をつなぐ自作の API が必要ならできるだけシンプルにしましょう。

参考

[1] フロントエンドエンジニアは Micro Frontends の夢を見るか
これが一番分かりやすかったので、これを読めば大体わかります。

[2] [翻訳記事]マイクロフロントエンド
詳しく書かれています

この記事について

この記事はThinkings株式会社にて長期インターンの業務として社内Qiitaに投稿したものを、私の個人用Qiitaに再投稿したものになります。許可を受けて再投稿しております。
また、2020/11/12に社内Qiitaに投稿されたものです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?