ソースコードとは、人間が書くコンピュータを動かすための文字列です。
ソースコードを記述する際用いる言葉こそ、「プログラミング言語」です。目的のソフトウェア、プログラムを作成する際に、目的に合わせて、種類の多いプログラミング言語から適したものを選ぶ必要があります。
プログラミング言語に理解のある方でないと、ソースコードを見ても「意味の分からない文字列」としか思わないかもしれません。しかし、ソースコードにはコンピュータを動かすための言葉が並んでいるのです。
※本ページにはPRが含まれます。
目次
コンピュータにしてもらいたい処理を「命令」するための文章
コンピュータに処理して欲しい内容、それを記述した文言こそ「ソースコード」です。
どうしてソースコードはプログラミング言語で書かれないといけないのか。それは、本来ソースコードはコンピュータが読める形に変換する必要があるのですが、このプログラミング言語ならばコンピュータ言語に返還しやすいからです。
コンパイラを実行してコンパイル(変換)しやすい、なおかつ人間がわかりやすく作られたのが、「プログラミング言語」なのです。
ソフトウェアの設計書
ソースコードには「ソフトウェアの設計書」の役割も担っています。
後からソースコードを人間が読むことで、エンジニアがソフトウェアの設計を見直す助けとなるのです。エラー、バグの原因、問題の再発防止のためにも、ソースコードが役に立つのです。
低水準言語と高水準言語がある
プログラミング言語は元々MOVやADDのように、コンピュータの読めるコードと対応する言語として作られました。これを低水準言語と呼びます。しかしさらに効率性を重視され、関数処理の繰り返しに耐えうる設計にしたものを高水準言語といいます。
高水準言語には人気のC言語やC++、JavaやPHPなどが含まれ、人気の言語は大方こちらに分類されます。
ソースは上から読まれる
ソースコードには、記述が「上から読まれる」という特徴があります。
長々と書かれたソースコードでも、基本的にコンピュータは「上から下に」処理を行います。上から下への処理には例外もありますが、それはまた後述します。
変数に結果を記録する
逐一命令はソースコードに記述されるのですが、その命令の結果は後のソースコードで利用されます。その命令で処理した結果は、「変数」に記録され、後々の記述で利用します。
変数は、処理結果を入れておくための入れ物の役目を担うのです。
関数に処理を定義して呼び出す
ソースコードが長くなると、同じ処理が随所で必要となります。この時役立つのが関数です。関数での処理を呼び出すことで、同じ処理を繰り返すことができます。この繰り返しの関数処理に耐えうるのが「高水準言語」です。
if文で分岐する
先程、ソースコードは上から下に処理が行われると言いましたが、一部例外もあります。
if文で、分岐処理が規定された時、条件によっては処理が飛ばされることがあります。または、「処理を行わない」という処理が行われることもあるくらいです。
ループ文で繰り返す
上から下にソースコードの処理が進まない例外の一つが「ループ文」です。◯◯という処理を3回しろ、という文章を一文で行うことができます。
このループ文、Javaならfor文、while文なんかで呼ばれることになります。
コメントでメモを残す
ソースコードは「コンピュータのための文章」ですが、純粋に、人間のための文章も書かれます。それが「コメント」です。
ソースが長くなると処理や命令が複雑になりますが、そんな複雑なソースコードの可読性を高めるための記述です。コメントの記述方式はプログラミング言語によって異なります。
ソースは製作者にとっての「著作物」
ソースコードはソフトウェアの設計書ですから、製作者の著作物です。
兵器のソースコード
機会制御されている兵器にも「ソースコード」が設定されます。兵器は開発国から外国に輸出されるもの。その時開発国がウイルスを仕込んでおけば、外国の軍事行動が筒抜けとなるのではないかという指摘もあるそうです。
オープンソースソフトウェア
ソフトウェアが自由に閲覧、改ざんできるソースコードもあります。それが「オープンソースソフトウェア」です。
Linuxなどがオープンソースソフトウェアの代表で、自社のソフトウェアアップデートコスト削減を狙っているものです。
シンプルで見やすいソースコードが良いとされる
ソースコードはシンプルで見やすい記述が良いとされています。
後任のエンジニアがエラーに対応しやすくなるなどがその理由です。複雑で読みにくいソースコードは、絡み合った様子から「スパゲッティコード」なんて言われます。