ソースコード(Source code、ソースプログラム、原始プログラム)とは、人間が記述した、ソフトウェア(コンピュータプログラム)の元となる一連の文字の羅列である。テキストファイルであるソースコードは、プログラミング言語の言語仕様に従って書かれており、コンピュータに対する一連の指示である。単にソースという場合も多い。その他には、コードやプログラムリストと呼ばれることもある。ソースコード(原始プログラム)が書かれたファイルをソースファイルという。人間が読み書きすることを前提とした形式(ヒューマン・リーダブル)であるという点で、マシンコード、バイナリコード、オブジェクトコード、バイトコードなどの機械語(マシン・リーダブルなもの)の対義語として用いられる場合もある。プログラミング言語を用いて、コンピュータに何か有用な作業をさせるための指示を書き上げることがプログラミングであり、書かれた指示の羅列がソースコードである。これは(機械語と比べて)人が読み書きしやすい形で記述されている。ソースコードを記述する過程のことをコーディングと呼び、たとえば「新たなルーチンをコーディングする」などと使う。ソースコードを記述する人間はプログラマーと呼ばれ、プログラマーは仕様書等に示された入出力の指定や処理手順の概要に基づいて、場合によってはソースコードを記述する前に処理手順を示したフローチャートや状態遷移図を描き、モデリング言語等の利用なども含めて、最終的な生産物としてのソースコードを書き出していく。コンピュータのプロセッサはソースコードを直接解釈することができない。アセンブリ言語の場合は、このソースコードをアセンブラで機械語に変換する。コンパイラ言語の場合は、このソースコードをあらかじめコンパイラで機械語に変換(コンパイル)してからコンピュータに実行させる。インタプリタ言語では、ソースプログラムをインタプリタが実行時に解釈し実行するので、コンパイルが不要である。プログラムの大きさは、バイナリコードの容量かソースコードの行数で示すことが多く、ソースコードの文字数ではあまり表現されない。ソースコードはソフトウェアの開発段階を経て機械語を生成した後でもそのソフトウェアの保守に不可欠であり、類似ソフトウェアの新たな開発や既存ソフトウェアの改善に有用であり、また、ソフトウェアに制御されるハードウェアの内容を知る大きな手がかりともなるため、ソースコードを独占あるいは逆に公開することは大きな意味を持つ。一般に人間には機械語は扱いがたく、20世紀末から始まったPCで使用されている大規模なOSや、アプリケーション・プログラムを機械語で書くことはほとんど不可能である。そのため、通常はプログラミング言語によって書かれたソースコードとしてプログラムを作成し、その後にコンパイラなどを用いてまとめて機械語に変換する。変換された機械語プログラムは延々と続く16進数などで表示できるが人間には理解が極めて困難である。従って、既存のプログラム上の誤りであるバグを修正したり、改良を加えたりするためには元のソースコードが必須である。知的財産権を収益の根幹とするソフトウェア産業では、ソースコードを企業秘密として保持し、使用者には機械語プログラムの複製の使用権を販売することで利益を得ている。これらの企業にとってはソースコードは独占すべき重要な資産である。もしソースコードが流出すれば、自社の開発成果が競合他社の製品に利用される恐れがある。これに対し、ソースコードを積極的に公開しようとする考え方もある。実行コードしか入手できない場合であっても、時間と手間を掛ければリバース・エンジニアリングによってソースコードに近いものを作りだすことは可能である。このため、真に機密保持が重要なプログラム、例えば暗号化装置のようなものでは意図的にプログラムが複雑に構成され、物理的にも読み出しにくいハードウェアに記録されているものがある。(注意。本気でセキュリティを考えているなら を絶対に参照すること)兵器で使用されるプログラムのソースコードはきわめて重要な機密とされる場合が多い。問題として、輸出する兵器の制御プログラム内にトロイの木馬を含めておけば、輸出先と敵対した場合でも優位に立つことができ、プログラムに起因する限界や制限を知っていれば、対抗手段を得られる可能性が高くなる、という指摘がある。
出典:wikipedia
LINEスタンプ制作に興味がある場合は、
下記よりスタンプファクトリーのホームページをご覧ください。