0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

プログラミング言語とは

Last updated at Posted at 2022-08-24

機械語に翻訳しやすく、かつ人間にもわかりやすい中間の言語それがプログラミング言語

代表的な言語とその特徴

C言語(シーげんご)

かなりハードウェアに近いレベルの記述できてしまう、なんでもありな柔軟性を持っている。

BASIC(ベーシック)

初心者向けとして古くから使われている。
書かれたその場ですぐ実行して確かめることができるインタプリタ方式が主流という特徴を持っている。

COBOL(コボル)

事務処理用に古くから使われる言語。
古くから使われているシステムでは、過去に作ったCOBOLのシステムが今でも多く稼働している。

Java(ジャバ)

インターネットのWebサイトや、ネットワークを利用した大規模なシステムなどで使われる。
設計初期からオブジェクト指向やネットワーク機能が想定されていた。
Java仮想マシンという実行環境を用いることで、OSやコンピュータの種類といった環境に依存することなく、作成したプログラムを動かす。

言語プロセッサ

人間の手で書かれたソースコードを機械語に翻訳するときに一つずつか全てかで方式が変わる。

インタプリタ

ソースコードにかかれた命令を、一つずつ機械語に翻訳しながら実行する。
その箇所まで実行させることができる。

コンパイラ

ソースコードの内容をに全て翻訳して、機械語のプログラムを作成する。
ソースコード全体を解釈して、機械語化するために、効率の良い翻訳結果を得ることができる。
翻訳の手間はかかるが、その後のコンピュータが直接実行できるので高速に動きます。

アセンブラ

低水準言語と高水準言語

アセンブラとマシン語のことを「低水準言語」と呼びます。
COBOL,BASIC,Pascal,C言語,C++,Java,C#などのプログラミング言語を「高水準言語」と呼びます。
低水準とは,コンピュータの生の動作に近いという意味で,高水準とは,人間の感覚に近い(コンピュータの生の動作からは遠い)という意味です。高水準言語を使えば,コンピュータのハードウエアの知識がなくてもプログラムが作れます
出典 https://xtech.nikkei.com/it/members/ITPro/ITBASIC/20021218/1/

ジェネレータ

特定の問題についての入出力の条件や処理条件などを支持するパラメタを入力することで目的プログラムを生成する。

目的プログラムとは?

人間語で書いたプログラムの元ネタ(ソースコード)をコンピュータさんが分かる形に翻訳(コンパイル)したもの
出典 https://wa3.i-3-i.info/word17206.html

問題を解いた時の気づき

ガーベジコレクションとは?

Java言語では、ヒープ上のメモリ領域をJavaオブジェクトに割り当てたり、もしくは割り当て済みの領域を解放したりする処理を、プログラムコードに明示的に記述する必要がありません。これは、CやC++などの言語との大きな違いです。CやC++では、プログラムが使用するメモリ領域の割り当てや、使用済みの領域の解放を、プログラムコードから明示的に指示しなくてはなりません。
 Java言語では、こうしたメモリ管理がJVMによって自動的に行われます。つまりJVMは、Javaプログラムのどこからも参照されなくなった不要なJavaオブジェクトを見つけ出し、そのメモリ領域を自動的に解放します。こうしたJavaオブジェクトの削除処理は「ガベージ・コレクション」と呼ばれます。JVM内部では、このガベージ・コレクションが独立したスレッドとして定期的に動作しています。ガベージ・コレクションが動作する頻度は、JVMのヒープ・サイズやヒープに対する需要、その他のさまざまな要因によって変化します。

出典 https://atmarkit.itmedia.co.jp/ait/articles/0502/25/news123.html#:~:text=Java%E8%A8%80%E8%AA%9E%E3%81%A7%E3%81%AF%E3%80%81Java%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88,%E3%83%BB%E3%82%B3%E3%83%AC%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%80%8D%E3%81%A8%E5%91%BC%E3%81%B3%E3%81%BE%E3%81%99%E3%80%82

ヒープとは?

 Javaプログラムの実行中には、Javaオブジェクトが生成されます。Javaオブジェクトは、Javaプログラムの起動時に生成される場合もあれば、実行中に必要に応じて生成されることもあります。いずれの場合も、JVMの内部で新しいJavaオブジェクトが作成されると、「ヒープ」と呼ばれるメモリ領域に、同オブジェクトを格納するための領域が割り当てられていきます。
出典 https://atmarkit.itmedia.co.jp/ait/articles/0502/25/news123.html#:~:text=Java%E8%A8%80%E8%AA%9E%E3%81%A7%E3%81%AF%E3%80%81Java%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88,%E3%83%BB%E3%82%B3%E3%83%AC%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%80%8D%E3%81%A8%E5%91%BC%E3%81%B3%E3%81%BE%E3%81%99%E3%80%82

出典

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?