第10回|見えない約束が、世界を静かに支えている(やさしいプログラミングの世界)

* 当サイトでは、コンテンツの一部に広告を掲載しています。

System Note $ cat /proc/ai-disclosure

本記事の構成および論理分析にはAI(人工知能)を使用しています。情報の正確性は、システム管理者(UNIXユーザー)による手動検証済みです。

第10回|見えない約束が、世界を静かに支えている(やさしいプログラミングの世界)

やさしいプログラミングの世界 | 第10回

目次

知らない町でも、標識があるだけで少し安心して歩ける夕方

はじめて歩く町で、ふと夕暮れに包まれるとき。少しの心細さと共に、私たちは無意識に「道しるべ」を探しています。

駅の方向を示す矢印、バス停の名前、角にある案内図。
文字の大きさや色、並び方がどこか見覚えのある形をしているだけで、私たちはそこにある意味を迷わず受け取ることができます。

もし、標識ごとに書き方も向きもばらばらだったらどうでしょう。
「右へ」という矢印が、ある場所では星の形をしていたり、住所の書き順が毎回ちぐはぐだったりしたら、
私たちは角を曲がるたびに立ち止まり、考え込まなくてはなりません。

世界が滞りなく流れている裏側には、いつも目立たない「約束」が息づいています。
並び方、書き方、そして渡し方。
それらが整えられているからこそ、大切な情報は迷わずに誰かのもとへと届いていきます。
プログラミングの世界でも、それはとても大切な知恵なのです。

どうして、あらかじめ決まった形が必要なのだろう

「自分の好きなように、自由に情報を並べてもいいのではないか」
そう感じることもあるかもしれません。
メモ帳に自分だけがわかる言葉を書き留めるなら、どんな形でも困ることはないでしょう。

けれど、その情報を自分以外の誰かに渡したり、別の仕組みに預けたりするとき、
自由すぎる書き方は、時として「言葉の壁」になってしまいます。
受け取った相手が、それをどう解釈すればよいか迷ってしまうからです。

では、たくさんの情報が混ざり合うプログラムの中で、
どうすれば誰もが迷わず、スムーズにやり取りを続けられるのでしょうか。

情報に、扱いやすい「居場所」をあたえる

プログラミングには、データをどう並べるか、どんな順序で置くかという「形式(データ構造)」の約束があります。
これは情報を縛るための鎖ではなく、情報を大切に扱うための「型紙」のようなものです。

たとえば、名簿を作るとき。一列目に名前、二列目に電話番号、と決めておく。
たったそれだけの約束があるだけで、私たちは数千人のデータの中からでも、一瞬で誰かの連絡先を見つけ出すことができます。
コンピューターも同じです。どこに何が書かれているかが決まっていると、迷うことなく、ものすごい速さで仕事をこなせるようになります。

この「見えない約束」があるおかげで、私たちは複雑な情報の塊を、
まるで整理された引き出しを扱うように、軽やかに操作することができるのです。

名簿の並びが、探しやすさという自由をくれる

たとえば、複数の人の情報を扱うとき、プログラムの中ではこんなふうに形をそろえておきます。

# 情報をリスト(並び)にして、形をそろえる
members = [
    {"名前": "アリス", "場所": "図書室"},
    {"名前": "ボブ", "場所": "音楽室"},
    {"名前": "チャーリー", "場所": "理科室"}
]

ここでは、「名前」と「場所」をセットにするという約束が守られています。
こうして形がそろっているからこそ、私たちは「誰がどこにいるか」を一目で知ることができます。
もし、ある人は名前だけで、ある人は場所だけ、といったふうに形が崩れていたら、
情報の受け渡しはとたんに難しくなってしまうでしょう。

気づき|ルールは縛るためでなく、共有しやすくするためにある

「ルール」という言葉には、ときどき窮屈な響きがあります。
けれど、すべてのルールが自由を奪うわけではありません。
むしろ、誰かを困らせないために、あらかじめ形をそろえておく。そんな優しい約束もあるのです。

プログラミングで使う形式や並び方も、そのひとつです。
自分一人だけがわかればよいのではなく、あとで読み返す未来の自分や、
その情報を受け取って別の仕事をする誰かが、迷わずに済むように整えておく。
そこには、目立たないけれど確かな「思いやり」が宿っています。

形式があるから、たくさんの情報を集めても混ざり合うことがありません。
約束があるから、渡す側と受け取る側が、言葉を使わなくても心を通わせられます。
見えない約束は、世界を静かに、そして力強く支えているのです。

まとめ|形がそろうと、世界は静かに読みやすくなる

この回では、見えない約束や形式が持つ意味を見てきました。
情報がどのように並び、どんな形で渡されるかがそろっていると、
読む人も、使う人も、そしてコンピューターも、ずっと軽やかに動くことができます。

形を整えることは、世界を整理すること。
約束を守ることは、誰かを助けること。
あなたの書くコードが、決まった形を大切にするとき、
そこにはプログラミングという技術が持つ、秩序の美しさが生まれます。

次回予告|小さな部品を組み合わせて、大きな物語を作る

一つ一つの仕事に名前をつけ、情報の形を整えてきました。
準備は整いました。次は、それらの小さな部品たちをどう組み合わせて、
一つの大きな、生き生きとした仕組みにしていくかというお話です。

次回は、組み立ての魔法、「オブジェクト」という考え方について。
バラバラだった部品たちが、一つの「役割」を持って動き出し、
協力し合いながら一つの物語を紡いでいく様子を、一緒にのぞいてみましょう。

さらに学びたいあなたへ

用途ごとに選ぶ Linux のおすすめ本

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

のいのアバター のい UNIX Cafe マスター

Macintosh Color Classicから始まった旅は、長いWindows時代を経て、Windows10のサポート終了をきっかけにUNIXの世界へ戻ってきました。UNIX Cafeでは、UNIX・Linux・そしてMacな世界を、むずかしい言葉を使わず、物語のように書いています。プログラミングは、アイデアをコンピューターに伝えるための言葉です。簡単な単語と文法を覚えれば、誰でもコマンドを使えます。ぜひ一度、やさしいプログラミングの世界をのぞいてみてください。

Created by UNIX Cafe

目次