よくいる文系プログラマの戯言

プライベートでの開発を適当に書き留めます

koa.js、React、Node、MongoDBでWebアプリでも作ってみようかなと

最近ネイティブの開発ばっかりしてたが、久々にWebアプリでも作ろうと思ったので、ちょっと調べてみました。結論から言うと、koa.js、React、Node、MongoDBの4つを掛け合わせて作ることにしたんですが、せっかくなんでそこまでの過程を記しておきます。 この決定において、技術的な考慮は多少しているものの、基本的に僕の好みに全面依存しているのであしからず^^/

ミーハーにはやはりGo言語か

最近Go言語の勢いがすごいみたいなのがこういう感じの記事になってたり、4月から働くことになっている会社で、SwiftとかGo言語とかをゴリ押ししているので、せっかくだからGo言語で作ってみようかなと、日頃チェックしていたリポジトリを中心に見てみる。

フルスタックRails的な)

最小限(Sinatra的な)

とまあ、良さ気なものはある。 しかもやっぱり、Go言語の爆速具合は魅力だけど、別にそんなスペックの高い必要が最初からあるわけじゃないしなぁ〜 Go言語自体のバージョン切り替えの上手くやるツールとか、パッケージマネージャーのデファクトとかがよくわからないので、もう少し静観していようかなという感じ。

Go言語がダメだと、次に魅力に見えるのはNode.js ...

年末(?)にio.jsがフォークしたりで何かと話題になっていたNode。 JSは個人的にもたくさん書いてきたし、今後もネイティブの開発はしつつ、Web関連の技術にはついていきたいと思っていたからやっぱりこのあたりかな。

そうなるとやはりMEANスタックかな?でもAngularは最近評判悪いし、実際使ってみて覚えること多いし、動きもよくわからなかったりしたし、ちょっと嫌だなぁ〜

ということで調べてみると、koa.jsというキーワードに行き当たる。

koa.jsとは

どうやらMEANスタックの一角を担うExpressのECMAScript6対応&シンプル版という感じのようだ。 なんでもExpressの作者が作ったようなので、そのへんExpressを使ったことがあると学習コストも低いかもしれない。 ES6で導入されたgenerators/yeildもコールバック地獄から解放してくれるし、結構いいかもしれない! ES6の書き方になれることもできるし!

そしてKOREMスタック誕生へ・・・!

で、せっかくMEANスタックの一角を変えたんだし、フロントもAngularじゃなくてfacebookのReactを使ってみよう!(Reactについては割愛。なにやら仮想DOMとか使ったイケてるフロントエンドツールのよう)

DBは、、まぁMongoのままでいいかな

という感じで、ミーハーWebアプリケーション、KOREMスタックの誕生の瞬間であった。