1. カメラ
  2. カーオーディオ&エレクトロニクス
  3. ホームオーディオ
  4. パーソナルオーディオ
  5. テレビ
  6. スマートホーム
  >> 電子技術オンライン >  >> スマートホーム >> スマートライフ

高級プログラミング言語の欠点

コンピュータ プログラミングの用語では、プログラミング言語は「高水準」言語と「低水準」言語に分けられることがよくあります。 2 つの違いは、ハードウェアの相互作用の問題です。簡単に言えば、低レベル言語はコンピューター システムの「下位」にあり、実際のハードウェアとのやり取りに近い場所にあります。高水準言語は、ハードウェアから離れて抽象化されています。この抽象化の結果、より高速で読みやすいコードが得られますが、速度のメリットは低くなり、システム リソースへのアクセスも少なくなります。

抽象化

高水準言語と低水準言語の違いは、言語がシステム リソースからどの程度抽象化されているかです。日常的にシステム リソースを処理すると、時間がかかり、苦痛になる場合があります。この問題に対処するために高水準言語が作成され、プログラマーのためにシステムを処理することで、プログラマーはメモリ管理などのシステムの細部を無視して、より高度なタスクを完了できるようになりました。ただし、これには、プログラマーがシステム アクセスが必要な状況に陥る可能性があり、高級言語ではそのアクセスを許可できないという欠点があります。通常、高級言語はシステム プログラミングには適していません。

速度

高水準言語は通常、「コンパイルされた」低水準言語ではなく、「解釈された」言語です。 「解釈済み」とは、言語が、バイナリ ファイルをコンパイルするのではなく、一度に 1 行ずつソース コードを実行するインタープリターを使用することを意味します。ただし、インタプリタは多くの場合、コンパイルされた言語で記述されたプログラムです。このため、インタープリター言語 (例として Python) は、C で記述された Python インタープリターの上でのみ実行されます。これにより、インタープリター プログラムのメモリと時間のオーバーヘッドが増加し、実行速度が遅くなることがよくあります。

システムの特殊性

高レベル コードの一見強みは、その移植性です。高レベル コードは、適切なインタープリターがインストールされている任意のシステムで実行できます。ただし、プログラムがコンピューター用にコンパイルされると、コンパイル時にそのシステムの環境全体が考慮されます。インタープリター言語は、インタープリターが提供できるものを除いて、インタープリター プログラムがシステムについて何も知らないという点まで、システムから既に抽象化されています。

プログラミングの制限

高水準言語の性質上、それらが適していない、または少なくともまだ適していない特定のタスクがあります。システム リソースにアクセスできなければ、迅速な OS ネイティブ アプリケーションの開発は困難です。さらに、オペレーティングシステムを開発することさえ困難になります。より多くのソフトウェアがオンラインに移行するにつれて、この事実はあまり重要ではなくなりますが、商業的および産業的な用途では、解釈された言語の動作が遅すぎるか、ハードウェアの相互作用から離れすぎている可能性があります.