一般的にはあまり違う言語・処理系を使わないで、NodeならNodeだけを使った方が良いかと思います。
別言語を使うと、例えば必要なビジネスロジックを両方の言語で実装しなければいけなくなり、コストがかかったり不整合が起きたりしやすい、といった問題が起きます。何かの折に機能を追加するといった際に、修正・確認の手間が倍に増えたりするわけですね。
とはいえ、現実の開発でも違う言語を組み合わせることはそれなりにあります。そのパターンとしては、
そもそも動く場所が違う
Web版はPHPで、スマホ版はJavaScriptというかReact Nativeとか
一部の機能に特定のライブラリ・フレームワークを使いたい
PDF生成だけはPHPにしかないライブラリを使いたいとか
明確に分かれる境界があり、そこで切り分けたい
通常のWebアプリとバッチ処理で切り分けるとか。ユーザ向け機能と管理者向け機能で切り分けるとかもあるかもですが、これはデメリットがそれなりにありそう
** 運用中のどこかの時点で開発する言語を切り替えようとして、一部のみ置き換える**
PHPで書いていたのをまずは一部だけScalaに置き換える(最終的には全部Scalaにしたり、一部だけPHPのままにしたりする)とか
などが考えられます。
違う言語を組み合わせる場合は、どこで組み合わせるかを考える必要があります。言語が異なってもデータのストレージ(DB等)は同じでよい(同じでないと大変すぎる)はずなので、そこで切り分けることになるかと思いますが、場合によってはDBにアクセスするのはPHPのみにして、NodeとPHPはJSONのAPIを使って連携させる、という場合もあります。その場合、PHPとNodeでJSONのAPIをそれぞれサーバ側・クライアント側として実装することになります。これまたコストがかかるパターンですが、PHPとNodeを全然別のサーバで動かせるというメリットはあります。
まあ、締切とかが厳しいわけでもないのでしたら、せっかくの機会なので新しく使う言語でいろいろ試してみるのもいいんではないかと思いました。PHP経験者がNode(JavaScript)を使えば、PHPの良いところもJavaScriptの良いところも両方見えてくるかと思います。がんばってください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/29 04:21