- 締切済み
Node.jsのチームでの開発効率とメンテナンス
Node.jsについて、 5名位でのチームでの開発の効率や、 他人がメンテナンスする場合の想定も知りたいです。 データーベースは、MongoDBよりCassandraの方が優れているのは、ネットで調べまくってやっと解りました。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- m_matsubara
- ベストアンサー率48% (80/166)
個人的な意見としては、まぁまぁ先進的な技術導入をしたいと考えているようですが、どちらも(特にMongoDB)に関して、他の技術の方がいいのではないかな、というところの検討をしておいていいかな、と思うところはあります。 もうご覧になっていたかもしれませんが、MongoDBに関しては以下のような記事もあります。 もう二度と、絶対にMongoDBを使うべきじゃない理由 https://fa-works.com/blog/why-you-should-never-ever-ever-use-mongodb 実際にちょっと使ってみた感じとして、MongoDBの"スキーマレスである"という所は スキーマの制約がない→想定しないといけないデータの種類が多い→想定漏れのバグが出やすい なので、今までカラムを作りまくっていたRDBMS使っていた時代より、デメリットの方が多かったです。 また、Node.js自体もちょっと触ってみましたが、やっぱりJS自体は習得しやすい言語ですが ノンブロッキングIOでプログラミングを行うのは、functionのネストがどんどん深くなっていく地獄があるので、あまり良いとも思えません。 回避策も、書式的にインデントが深くなるのを回避するだけで、非同期に動くコードがデバッグしづらいのは変わりませんしね。 JSはWeb系のプログラマで全く知らない人はいませんし、Node.js自体もそこまで大きくもないフレームワークですので、学習コストは低めですが、プログラミングの効率の良いフレームワークではありませんでの、Node.jsの省メモリ高速度の特性に合致する案件以外でのウケはあまり良くないのではないでしょうか? チーム的にもうNode.js慣れてしまっているから持ち代えたくない問いう理由であれば、賛成するところですけど。 大変保守的なつまらない意見だとも思っていますが、商品として作るつもりであれば、Node.jsやCassndraは向いている分野を見切って性能検証した方がいいと思いますよ。 特にDBはRDBMSが長い実績と理論的裏づけのある道具で正道ですし、後で入れ替えが効かないのは、開発限度以上にデータベースだったりするので。 ただ、大学生の卒業研究や専門学校生で技術的に冒険したいのでしたら、本当この回答は不適切でした。すいません。 Node.jsに関する私の個人的評価くらいだけ、つまんでおいていただければ幸いです。 いろいろ触ってみるのは大事!