質問: 現在Java等を中心に開発を行っていますが、今後一部の開発プロジェクトでPythonを利用していこうと考えています。諸々特性を調査をした結果、中規模以上(複数人)の開発で、懸念を感じ質問です。 Pythonでは「1ファイル=1クラス」の構造では開発しないと思いますが、"大量クラスが作られるオブジェクト指向開発"で生産性に影響はないでしょうか? (案件としては、計算ライブラリ/AIライブラリ等を利用した機能をウェブのシステムに追加する可能性のある案件を想定してます) ご教授 or 意見を頂きたいです。
回答: Pythonは大規模システムの開発にも十分使えるプログラム言語ですが、Javaで書かれた大量のクラスがあるプログラムをそのままPythonに移行させることは、次のような理由であまり適当だとは思いません。 * 処理速度が遅くなる * 型チェックができなくなる Pythonを使いたいのであれば、グルー言語である特徴をいかして、使いたい部分のみをPythonにした方がいいと思います。例えば、Javaで書いていたコードを外部のサービスを使いたい場合やPythonにはデータサイエンスや機械学習の分野を中心に優秀なライブラリーがありますがそのライブラリーを使いたい場合です。 PythonとJavaのプログラム間のやり取りについては、従来からの方法の他に`gRPC`や`JSON-RPC`が使えるので困ることはないと思います。