見出し画像

【記事】プログラミング言語が必要な理由ってなんでしょう?

□■□□■□■□ ←これはパソコンをふくむ電子機器の内部を伝わり、動かすための電気信号です。しかし何のことかさっぱりわかりません。では、TextDraw("ABC")はどうでしょう? Draw(描く)Text(文)、“ABC”ということで人間には、何となくわかりますね。「きっとABCと文字を描かせるのだろう」と。

スクラッチ「こんにちは」

先ほどのような電気信号を、人間にわかりやすくしたものこそ、電子機器への指示を、文書のように書けるプログラミング「言語」です。

現在、様々な言語があり、実用的なアプリからゲーム・アプリまで、すべてプログラミング言語で使って作られています。

言語が違ってもソフト・アプリは作れます
!?

プログラミング言語には種類があると書きましたが「Scratch(スクラッチ)」「Small Basic(スモール ベーシック)」など、学習に特化もしくは役立つ簡易的な言語から、実践で活躍するJava言語(ジャバ。スマートフォンのアプリ・ゲーム開発に利用)やC++/C#言語(シープラスプラス/シーシャープ。多くのソフトやアプリの開発に利用)、さらには動きのあるウェブページを作るにはJavaScript(ジャバスクリプト)、ウェブページのデータ処理に特化したPHP(ピーエイチピー)言語など、登場しています。

「あれあれ?」

ではなぜ様々な言語があるのでしょう?

ゲーム例

それはDrawText命令(言語でパソコン等電子機器に与える指示は「命令」と呼びます)のみならず「絵を描く命令」や完成させるのに必要な命令、ライブラリ(すぐに使える専用の命令集)を容易にあつかえれば、ダイナミックなアプリは作りやすくなります。そして命令を発してから、実行完了するまでの時間が速ければ「動きの速いゲーム向き」の言語と呼べます。

サーバ

PHP言語などは文字や計算、ウェブページに関する表示関連を得意とする「命令」がたくさんあるので、インターネット上で多くみかけます。命令やライブラリが「ウェブ関係」となっているので、ゲーム・アプリ開発には不向き、といった具合です。

CASLII

より電気信号での指示に近い命令を使う、アセンブリ言語(資格試験ではCASLIIという名前で出ます)というものもあり、理論上、何でもできますが便利な「命令」が用意されていないため、制作には、ものすごい労力が必要になります。

翻訳担当:コンパイラ

一般に、どのプログラム言語も「コンパイラ」という通訳者さながらの制御ソフトが、人間のわかる言葉で書かれた命令の塊(プログラム)を、機械がわかる言葉(信号)へ自動的に変えています。

そのため人間は電気信号のようなものではなく、各種「言語」で様々な実用アプリ(=ソフト)やゲーム類のアプリを作っていけるのです。もし言語とその言語が備える「コンパイラ」がなかったら、プログラミング(命令集を作る行為)は、現在のように普及しなかったでしょう。

16ビット機 アセンブリ言語+数値のソフト例

ですが実際に、60~80年代までは「数値」でプログラミングしていたときもありました。今は学習用言語でしたら、絵文字まで使えるものもあるので、ずいぶん便利になったものです。ちょっと命令を書いて実行させれば、電子機器を制御できるのですから。

紙テープの穴には意味があります
https://www.amazon.co.jp/dp/4865812466/

文責 
Ph.D. 米村貴裕


この記事が参加している募集

最近の学び

お読みくださりありがとうござります。費用未払い「大手大型倒産」を受けて、創作活動の継続がかなり危機的です。助っ人いただけましたら幸いです。 みなさまに喜んで楽しんでいただける創出をつづけます! 朽ち果てるまで……