5
プロジェクトの規模と言語の厳密さとの間に相関関係はありますか?
私の同僚に言語の厳密さとパラダイムの違いを説明して、私は次のように断言しました: 動的言語やインタープリター言語などのトレラント言語は、プロトタイプや小規模プロジェクト、または中規模のWebアプリケーションに最適です。Node.jsでPythonやJavaScriptなどのエレガントな動的言語を選択する場合の利点は次のとおりです。 迅速な開発、 定型コードの削減、 Javaのような「企業言語」から逃げる若くて創造的なプログラマを引き付ける能力。 静的に型指定された/コンパイルされた言語は、ビジネスに不可欠なアプリや、中規模から大規模のアプリ向けのアプリなど、より厳密なものが必要なアプリケーションに最適です。 数十年にわたって開発された有名なパラダイムとパターン、 静的チェックの容易さ、 数十年の経験を持つ多くのプロの開発者を見つける能力。 Haskell、Adaなどの厳格な言語、またはC#のコードコントラクトなどの手法は、ライフクリティカルなシステムや非常に安定していると予想されるシステムなど、柔軟性よりも安全性を重視するシステム(Haskellが非常に柔軟である場合でも)に適しています。利点は次のとおりです。 コンパイル時に可能な限り多くのバグをキャッチする機能、 静的チェックの容易さ、 正式な証明のしやすさ。 しかし、大企業が大規模プロジェクトに使用している言語と技術を見ると、私の主張は間違っているようです。たとえば、Pythonは、YouTubeやその他のGoogleアプリケーションなど、重要な量の厳密性を必要とする大規模システムに使用されています。 プロジェクトの規模と使用すべき言語/パラダイムの厳密さとの間にはまだ相関関係がありますか? 考慮するのを忘れた3番目の要因はありますか? 私はどこが間違っていますか?