信長の戦術にプログラミングの本質が見える訳

社会のあらゆる仕組みを説明することが可能

信長の戦術とプログラミングはどう関係するのでしょうか?(写真:Elle Aon / PIXTA)
2020年から小中学校での必修化が予定されているプログラミング。プログラマー・清水亮氏は「社会のあらゆる仕組みがプログラミングで説明できる」と話す。清水氏の著作『増補版 教養としてのプログラミング講座』を一部抜粋・再構成し、プログラミングと社会の関係を紐解いていく。

 

「プログラム」と聞いて、みなさんはどのようなものを思い浮かべるでしょうか? もしかすると多くの方がパソコン上に英語や数字が羅列したものを想像されたかもしれません。

ではここで質問です。たとえば運動会で「次に何の種目が行われるか」を記した表をどのように呼びますか? おそらく「運動会のプログラム」と言っているのではないでしょうか。同じように発表会にもテレビ番組にも「プログラム」は存在しますし、その順番や内容を検討する過程は「プログラミング」と呼ぶことができます。

実社会のさまざまな仕組みが、プログラミングという視点を通じて説明でき、また逆に、プログラミングの概念が、実社会のさまざまな局面にも応用可能だといえるのです。

ではここからプログラミング技術が古今東西の実社会で活かされる場面を見てみましょう。

長篠の戦いもプログラミング技術と関係

日本の歴史でも、プログラミング技術と類似する戦術が大きな功績を挙げたことがあります。

時は戦国時代。ご存じ、尾張のうつけ者とも呼ばれた織田信長が、当時無敵を誇っていた武田騎馬軍団を「長篠の戦い」で打ち破ることができたのは、とある戦術があってのことでした。

機動力があり、また高いところから攻撃を行うことができる騎馬隊こそが最強だと疑われていなかった当時、信長は鉄砲隊を戦場の中心に据えていました。現在放映中の大河ドラマ「麒麟がくる」でも、他国に先んじて鉄砲隊を組織する信長の様子が描かれていましたので、ご存じの方は多いかもしれません。

しかしこの時代、鉄砲を撃つにはまず筒を掃除し、火薬と弾薬を詰め、狙いを定めて撃つ、という過程が必要で、1発撃った後、2発目を撃つまでの間にかなりの時間を要することになります。そのため、速力に勝る騎馬隊に、鉄砲隊が蹂躙(じゅうりん)されてしまうこともしばしば。

そこで信長は馬防柵を設け、鉄砲隊を3列に分けて柵の後ろに配置し、1列目が発砲するとすぐさま後ろに下がり、2列目はいつでも発砲できる態勢を維持、という戦術を編み出したと言われています。

実は、これはプログラマーが「バッファリング」と呼ぶ技術。コンピュータでよく使われているのはダブルバッファリングという方式ですが、信長の場合、3列ありますからトリプルバッファリングとでも呼べばよいでしょうか。

次ページ戦術との具体的な関係は?
キャリア・教育の人気記事
トピックボードAD
関連記事
  • コロナ後を生き抜く
  • 西村直人の乗り物見聞録
  • 賃金・生涯給料ランキング
  • 就職四季報プラスワン
トレンドライブラリーAD
アクセスランキング
  • 1時間
  • 24時間
  • 週間
  • 月間
  • シェア
トレンドウォッチAD
おうちで稼ぐ、投資する!<br>在宅仕事図鑑

コロナ禍の下、世代を問わず広がったのが「在宅で稼ぐ」ニーズ。ちまたにはどんな在宅仕事があり、どれくらい稼げるのか。パソコンを使った「デジタル小商い」と「投資」に分け、誰にでもできるノウハウに落とし込んで紹介します。

東洋経済education×ICT