問題タブ [compiled-language]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - コンパイルされていない言語をどのように定義しますか
「スクリプト言語」と「プログラミング言語」という用語に関しては、多くの「個人的な好み」があるため、この質問をします。
私の質問は:
コンパイルしない、またはブラウザーで直接実行する言語を表す適切な技術用語はありますか? 私が読んだすべての記事とここで検索した質問は、言語のその特性を定義するものを明示的に述べていません。
python - コンパイルと解釈、Python には予期しない動作があります
Python の実行で予期しない動作が発生します。
コントロールが else ステートメントに入らないため、このコードは SyntaxError を発生させません。C++ などのコンパイル済み言語では、エラーが発生します。Javaでも未使用コードはエラーです。しかし、Python ではありません。
この場合、次のようになります。
ここで指定されているように、print ステートメントは UnboundLocalError を発生させます。前のロジックによれば、このエラーは、コントロールが x+=1 に遭遇するまで発生しないはずです。しかし、他のコンパイル済み言語と同様に、そうです。
では、コードがいつコンパイルまたは解釈されて実行されるかを判断する方法は?
編集: バイトコード .pyc ファイルにコンパイルされてから解釈される場合。では、最初の例の else ステートメントが検出されないのはなぜですか?
javascript - クライアント側の Web がまだインタープリター言語を使用しているのはなぜですか?
私の知る限り、JavaScript は HTML ファイルがサーバーから取得された後にクライアント側で実行される唯一の言語です。私の知る限り、JavaScript は決してコンパイルされていないため、解釈された言語です。
Web の人気がますます高まっているため、モバイル アプリケーションやデスクトップ アプリケーションは間もなく存在しなくなると言う人もいます。
JS を利用する WebGL のような新しいテクノロジーが見られます。
私が WebGL 向けに開発するときは、妥当なパフォーマンス ベンチマークを達成するために、さらに多くの最適化を行う必要があります。PC やコンソールの場合よりもはるかに多くの最適化を行う必要があります。
では、なぜ解釈されたクライアント側言語をいまだに使用しているのでしょうか。セキュリティの問題なのか、ハードウェア (クロス プラットフォーム) の問題なのか、それとも Web アーキテクチャにこのような大きな変更を導入するのが難しいからなのか? Web 開発者は、CSS 3 の使用など、最も小さくて単純な変更でさえ頭を悩ませていることを私は知っています。単純に、すべての人がブラウザーを最新の状態にしているわけではないからです。
相互運用された言語はコンパイルされた言語よりも遅いと考えるのは正しいですか? 私は理にかなっていますか、それとも私の仮定は完全に間違っていますか? 私は決して JS/Web の専門家ではありません。教えてください。