見出し画像

日本語は認識祖語が起きる。確実に伝える方法はソース。

設計書を読んでいて「何をしたいんだ?」と思うことはありませんか?きっとありますよね。

文章力の問題のケースもあると思いますが、そもそもシステムのことを日本語で表現するのが難しい場合もあります。それを無理やり日本語化して書くからおかしくなっているケースもあると思います。

■ 日本語は空気が読めるから認識齟齬になる

例えば、日本語でこういう記述があったとします。

1から10までを加算する
45になったら2倍にする

設計書の記載としてもイマイチですが、これくらいなら「わからなくもない」という状態です。この微妙なところで空気を読んでしまいます。

45になったら2倍にしたあと、処理は継続するの?
それとも処理は終わるの?

このように人によって受け取り方が変わります。疑問に思って質問してくれればまだマシですが、空気を読んで思い込んで突き進むケースもいっぱい見てきました。これが設計者と実装者の認識祖語になります。

■ ソースは空気が読めないから認識齟齬は起きない

上記の認識祖語を起こさないためにはこう表現すればよいのです。

    for (int i = 1; i <= 10; i++){
        sum += i;
        if(sum == 45) sum *= 2;
    }

「ソースじゃないか!」って言われるかと思いますが、私は「実装者との認識祖語を絶対に起こしたくない重要な個所」はソースで語った方が良いと思っています。

なぜなら認識齟齬が起こらないからです。ソースであれば空気を読むことはありません。プログラムが示す結果は1つだけです。

■ 日本語でうまく伝えられないならソースで認識共有

なんでもかんでもソースでということではありません。

日本語でうまく表現するのが難しい

こういうところに関しては、無理に日本語で伝えるのではなく「ソースで認識共有を図る」というのも、コミュニケーションの選択肢に含めるのが良いと思います。

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

#とは

57,836件

最後まで読んで頂きありがとうございました! いただいたサポートは全て執筆活動の資金としてありがたく活用させていただきます。