log > Mithril 読み終えた

Mithril 読み終えた

Mithril――最速クライアントサイドMVC を読み終えた。APIを極限までシンプルに保つことで、覚えやすく軽量で高速なフレームワークを実現したMithrilの入門書。

JavaScript界隈のフレームワークは移り変わりが激しく、Backbone→Knockout→Ember→Angular→(React)→Reduxと、(これで正しいのかわからないがこんな感じだった気がするが、)毎年流行のフレームワークが変わるので保守するのに困る。かつてCoffeeScriptで設定ファイルとかhubotとか書いたけど全部負債になったので、忘れても思い出しやすく、完全に忘れても覚えやすいフレームワークに手を出そうと思った。

Mithrilは、メソッドが全部で15個。第2章のTodoは、m/m.mount/m.prop/m.withAttr/m.route/m.requestの6つのメソッドだけで作られている。メソッドも、Rootingを行うm.routerの使い方が複数あるだけで、他のものは簡単に使いこなせる。

しかし、フレームワークのドキュメントは充実しているが、実際にどうコーディングをするのがベターなのか、README以上のサンプルはどう書くのか、テストはどうするのかなど、包括的な知識がないと不安だったため、本書を購入した。

本書ではMithrilだけではなく、Bootstrapやmocha、Promise、Typescriptなどの周辺技術を使った解説もある。Mithrilはフレームワークが薄いため、JavaScriptや周辺技術に対する理解が大切だと感じていたため、この辺は助かった。

書籍のコードを写経しても動かないことがあったのが困ったが、作者のサンプルリポジトリに最新のコードがあるので、こちらを参考にして動かした。

Mithrilは、m.moduleをm.mountにするなど多少の変更はあるが、Promiseを徐々にES6のものにする以外は大幅な変更は今後もないだろうし、しばらくはMithrilを中心にやってもそうそう困らないだろうと思う。ので、流し読みだけじゃなくて実際にちょっと使ってみようと思う。