「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

source lines of code

pointこの用語のポイント

pointソースコードの行数だよ

point「SLOC」と表現されるのが一般的だよ

point気休め程度の指標だよ

スポンサーリンク

簡単に書くよ

source lines of code(読:ソース・ラインズ・オブ・コード)とは

いわゆる「SLOC」のこと。
用語の中身としては

人間語で書いたプログラムの元ネタ(ソースコード)の行数のこと
です。


image piyo

詳しく書くよ

最初に留意事項です。
SLOC」と言われて「あぁ、アレのことね」と分かる方は最後まで読む必要ありません。
SLOCの正式名称(?)が「source lines of code」です。
source lines of code」の頭文字を取ったのが「SLOC」ね。

source lines of code(ソース・ラインズ・オブ・コード)

※「souce lines of code」を何となく日本語にすると「ソースコードの行」となります。[詳細]

以上が「SLOC」の意味を知っている人向けの説明です。

「SLOCって何?美味しいの?」な人は、このまま読み進めてください。
用語の中身について説明します。

ちょっと休憩4

それでは、いってみましょう。
まずは予備知識として「ソースコード」について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

ソースコードは「人間語で書いたプログラムの元ネタ」です。

source lines of code(ソース・ラインズ・オブ・コード)2

プログラムを作って動かすまでの一般的な流れは

1.人間語でプログラムの元ネタを書く
2.元ネタを人間語から機械語に翻訳する
3.翻訳された指示に従って、コンピュータさんが お仕事する


です。

source lines of code(ソース・ラインズ・オブ・コード)3

コンピュータさんは人間語が分かりません。

source lines of code(ソース・ラインズ・オブ・コード)4

人間様はコンピュータさんの言葉が分かりません。

source lines of code(ソース・ラインズ・オブ・コード)5

プログラムは人間様が作るものです。
そこで最初は人間様が分かる言葉でプログラムを作ります。
コンピュータさんに対する「あれをやれ」「これをやれ」な命令を人間語で書くのです。

source lines of code(ソース・ラインズ・オブ・コード)6

次に人間語で書いたプログラムの元ネタをコンピュータさんが分かる言葉に翻訳します。
実際に お仕事をするのは、コンピュータさんですからね。
コンピュータさんが分かる言葉に変換する必要があるのです。

source lines of code(ソース・ラインズ・オブ・コード)7

コンピュータさんが分かる言葉に翻訳したので、コンピュータさんは命令の内容を理解できます。
指示に従って、お仕事をしてくれるでしょう。

source lines of code(ソース・ラインズ・オブ・コード)8

かなり簡略化した説明ですけどね。
これがプログラムを作るときの流れです。

この話で登場した

人間語で書いたプログラムの元ネタ

を「ソースコード」と言います。

source lines of code(ソース・ラインズ・オブ・コード)9

以上を踏まえて

ソースコードの行数

をカッコつけて言った表現が「source lines of code」です。
上でも書きましたが、一般的には「SLOC」と表現されます。
処理が何行書かれているかを示した数字です。

source lines of code(ソース・ラインズ・オブ・コード)10

※本ページでも以降は「SLOC」と表現します。

SLOCはプログラムの規模を測るための指標です。

ただし、行数の数え方には いろいろなローカルルールがあります。
コメント行を除いたり、改行だけの行を除いたり、他にも独自の数え方があったりします。

例えば、そうですね。
以下の処理は6行です。

if($a == "1")
{
    print "1だよ";
}else {
    print "1じゃないよ";
}


これを単純に「6」と数える場合も あります。
あるいは、2行目の「{」を1行目に含まれると解釈して

if($a == "1"){
    print "1だよ";
}else {
    print "1じゃないよ";
}


のように読み替えることで「5」と数える場合も あります。

基準は結構あいまいです。

まぁ、そもそもの話として気休め程度にしかならない指標ですけどね。

処理の書き方は1つでは ありません。
同じ処理を書くのにも、いろいろな書き方があります。

例えば、PHPで書いた以下の3つは、すべて同じ処理です。

if($a == "1")
{
    print "1だよ";
}else {
    print "1じゃないよ";
}


if($a == "1"){print "1だよ";}else {print "1じゃないよ";}

print $a ==1 ? "1だよ" : "1じゃないよ";

1つ目の処理は6行で書かれています。
SLOCは「6」です。

2つ目、3つ目の処理は1行で書かれています。
SLOCは「1」です。

それでは1つ目の処理は2つ目、3つ目の処理の6倍の規模なのでしょうか?

そんなことは、ありませんよね。

個人的には、どんな数え方をするにしろ気休め以外の何物でもないと思っています。

あと「SLOC」ではなく「LOClines of code」と表現されることも あります。

source lines of code(ソース・ラインズ・オブ・コード)11

気が向いたら、併せて覚えてあげてください。
個人的には「LOC」という表現の方が馴染みがあります。


image piyo2

一言でまとめるよ

まぁ「source lines of code」って単語が出てきたら「SLOC(ソースコードの行数)のことなんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像034
書籍画像056

おまけ

■訳してみるよ

「source(ソース)」の意味は「源」とか「起源」とか「根源」とかです。
「lines(ラインズ)」は「line(ライン)」の複数形です。
「line(ライン)」の意味は「線」とか「行」とかです。
「of(オブ)」の意味は「~の」です。
「code(コード)」は今回は「source code(ソースコード)」の略です。
「source code(ソースコード)」はIT用語の「ソースコード」です。
「source(ソース)」の意味は「源」とか「起源」とか「根源」とかです。
「code(コード)」の意味は「記号」とか「暗号」とか「符号」とか「コード」とかです。
何となく くっつけると

源の記号の源となる行

となります。




書籍画像
わわわ説明術コラム
宣伝だよ
つくって、壊して、直して学ぶ Kubernetes入門
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
優れたエンジニアがコミュニティの中でしていること