0

私のウェブサイト プロジェクトでは、現在、python または scala の使用に関して競合が発生しています。scala に反対する議論の 1 つは、Python がコンパイルさえしないのに対し、コンパイル時間が遅いことでした。この質問の回答によると、 IntelliJ IDEA が Scala をコンパイルするのに時間がかかるのはなぜですか?

私の質問は、ウェブサイトについてです。考慮すべきより重要なことは何ですか。言語のコンパイル時間が遅い、または言語の実行が遅い。scala の遅いコンパイル時間は影響要因ですか? 私の知る限り、scala のコンパイル済みコードは、解釈された Python コードよりも高速に実行されます。

注 - 言語がスケーリングしないのは正しいことですが、アーキテクチャとコードはスケーリングしますが、高速に実行される言語を使用しても害はありません。

4

2 に答える 2

3

コンパイル済み言語では、一度だけコンパイルします。Python でも、ソースが変更された場合にのみバイトコードが生成されます。これはScalaでも同じだと思います。どの言語がより速く実行されるかを探すのは、「単なる別の言語戦争」であるため、愚かな試みです。速度を求めるのではなく、フレームワーク、開発の容易さ、実行と維持のコスト、言語の全体的な「親しみやすさ」に注目する必要があります。

于 2011-08-29T11:10:06.767 に答える
1

デバッグ、修正、デプロイのサイクルがデフォルトの状態であると想定している場合や、アプリが非常に巨大で結合されているため、単純な変更を行った後でも数十のファイルを再コンパイルする必要がある場合を除き、ビルドとウォームアップの時間は長くなりません。本当にWebアプリケーションの問題です。それらは頻繁に数週間または数か月間オンラインにとどまります。一部の仮想マシン (有名な HotSpot) が、実行時間の長いアプリケーション (起動/ウォームアップ時間が大幅に長くなりますが、より優れたマシン コードの生成を可能にする) のモードを「サーバー」モードと呼んでいるのには理由があります。

しかし、あなたが指摘したように、それはコンパイル済み言語を使用しなければならないという意味ではありません。開発に最適な方法で開発します。万一、基礎となるプラットフォームのパフォーマンスが重要になるのに十分なトラフィックを取得する必要がある場合 (Twitter は、パフォーマンスのために Ruby コードを Scala コードに置き換えなければなりませんでしたが、気にしておいてください、それは何年もの間十分に機能していました)、とにかく書き直す余裕があります。 ;)

于 2011-08-29T11:19:09.600 に答える