お問い合せ(メールフォーム24時間対応)
TEL:03-6435-9560(平日休日問わず9時から21時まで対応)
このボタンで電話
初回相談は無料です実績豊富な弁護士が今すぐあなたのお力になります
i@atlaw.jp 直接メールでのお問い合せも承ります

はじめに

ここでは,昨今話題の「ソースコード」について,IT紛争などとの関係も踏まえながら解説します。

なお,正確な定義や詳しい説明については,いろいろなところに解説がありますので,それに譲ることとします。

ソースコードを一言で言うと

一言で言うとよく使われる説明ですが「ソフトウェアの設計図」です。

この表現は,端的ですし,実態を示してはいます。ですが,すこし一般にイメージする「設計図」とは異なるところがあります。

ソースコードを書く際に使う言葉の体系,ルールを,プログラミング言語といいます。英語や日本語があるように,プログラミング言語にも,Cや,Javaなど,さまざまな言語があります。話題になったC#もプログラミング言語です。

ソースコードの実物(C言語の例)

#include <stdio.h>
void main()
{
 printf("こんにちは!\n");
}

ソースコードには何が書いてあるか

ソースコードは「ソフトウェアの設計図」といいましたが,その内容はソフトウェアの「中身」です。

ソフトウェアは,多くの命令で成り立っています。たとえばワープロソフトであれば,文章を表示する,操作に対応して画面を動かす,文字を入力して表示する,といった無数の命令が集合して成り立っています。

上記の例ですと「printf("こんにちは!\n");」という部分が,「こんにちは!」というメッセージを表示する部分にあたります。

こういった命令が何千何万と積み重なることで,一つのソフトウェアができあがるという事になります。

ソースコードとソフトウェアとの関係

さて,ソースコードは命令の集合であると解説しましたが,コンピューターはそのままではその命令を理解できず,実行することも出来ません。

そこで,ソースコードをコンピューターが理解できる命令(一般にマシン語などとよばれます。)に翻訳をするソフトウェア(「コンパイラ」などと呼ばれます。)に入力して,そこから出力されたもの(バイナリあるいは実行形式などと呼ばれます。)が完成品となります。

ソースコードが設計図といえる理由

ソースコードは命令の集合で,ソフトウェアも命令の集合で構成されています。

そして,ソースコードをコンパイラ等に入力することで,コンピューター上で実行できるソフトウェアが完成します。

ですから,ソースコードには,ソフトウェアの内容が概ね全て入っていることになります。ソースコードの内容が,ソフトウェアの内容を示しているという意味で,ソースコードは設計図といえます。

ソースコードが設計図といえない理由

例えば建物を建てるとき,設計図があったからといって,それだけで設計図に書かれているものが,そのまますぐに出来るわけではありません。時間とお金をかけて建物は建築しないといけませんし,材料も必要です。

一方,ソースコードは,コンパイラ等のソフトウェアに入力すると基本的にはそのまま完成品であると実行形式のソフトウェアが出力されます。

ですから,ソースコードがしっかり出来ていれば,あとの作業は入力(読み込ませ)だけということになります。ソースコードは,この意味では,コンパイラ等に入力するという作業は残っているものの,実質的には完成品そのものであるといえます。

ほぼ完成品であるということからすると,ソースコードはただの設計図ではありません。 

まとめ-ソースコードは完成品兼設計図

以上のように,ソースコードには設計図としての特徴と完成品としての特徴の両方をもっています。

このことは,システム開発紛争,ソフトウェア開発紛争において重要な意味を持ちます。

その点については,また別の記事で解説したいと思います。

補足

ソースコードから直接実行形式ができるのか,実行形式が直接コンピューターが理解できる命令なのかについては,多くの例外があります。たとえば,昨今話題のC#もこの例外にあたりますが,詳細は割愛します。上記は,あくまで簡略化した原則の説明になります。

IT法務.jp では,システム開発,ソフトウェア開発のトラブルへの対応,その予防に関するアドバイスなどを扱っております。内容や費用等につきましては,お問い合せください。

(平成25年3月28日 弁護士 深澤諭史-なお,免責事項もお読み下さい