MERN の簡易的な学習

MERN の採用について

秋から開発を始めるサービスのバックエンドをExpressにしようと思ってからは、その周辺の技術について学びたいと感じたので、MERN(MongoDB×Express×React×Node.js)についての100ページ程度の簡単な書籍が売っていたので買って読んでみた。

MongoDBはドキュメントDBという分類のデータベースで、ドキュメントというのはJSONのことだ。JSONを解析してスキーマレスに扱えるデータベースがMongoDBなので、プロトタイプを迅速に開発する場合や、JSONデータを扱ってロギングを行う場合などには便利な仕組みを組めるのではないかと感じた。ただ、MongoDBはACID特性がRDBほど堅牢ではないので、普段の業務アプリ開発にはやっぱりRDBを扱ってきちんとスキーマの設計を通して対応していった方が良いと思えた。

React については普段から書くことが多いので慣れているとして特に問題はなく開発はできる想定なので、後はExpressについて学びたいと思ったのだけど、Expressは非常にシンプルな仕組みを提供しているだけのフレームワークなので、そこまで勉強すべき内容はないのかもと思えた。自分自身で必要な機能をアドオンしながら利用するのが一般的なようなので、もう少し調査してみて、何が良く使われているのかを調べてみようと思う。

結論から言えば、MERNのMは適用しないと思う。MongoDBはJSONを扱うには便利なDBだけど、普通にRDSを使った開発を行うのが妥当だと思えたので、今後も基本的にはRDSを使った開発を進めていく予定だ。

それから、LAMPが私たちにとっては非常に馴染み深い技術スタックなのだけど、MERNは恐らくはLAMPほどは流行らないと思う。MongoDBを使って開発を進めようという流れが今後日本で起きるかどうかがわからないけど、MongoDBよりもクラウドネイティブなマネージドサービスに意識が向くと思うし、RBDの存在が大きすぎて代替することは難しいと感じる。

だけど、Expressはシンプルなフレームワークなので、東京ではそれなりに選定をされていると感じている。地方で流行るにはTypScriptの技術者が増えないといけないので、なかなか難しさはあると思うけど、時代の流れ的には割とまだ可能性はあると思っている。JavaとSpringの大規模開発向けの環境に対して、Expressでの開発はシンプルな環境向けな印象はあるので、これも技術的に選定される機会は少ないかもしれない。

書評

今回読んだ4冊についてだけど、初心者の方が実際の開発ってどんなのということを何となく把握するためには良い本かもしれない。だけど、内容がわかり易く網羅的に整理されている本ではないので、開発の流れを一通りおさらいするための本として読むべきだ。この本を読めば、ExpressとNode.jsを使った開発や、MERNでの開発方法については、多少イメージを沸かせることができる。興味がある方は読んでみてほしい。