カレンダー

2024/01
 
   
       

広告

Twitter

記事検索

ランダムボタン

必要な理解度

by 唐草 [2024/01/18]



 プログラマーになるには「何をどの程度理解している必要があるか?」という世間知らずな質問があった。この問を愚かだとみなしたのは、プログラマーと言っても千差万別だからだ。
 それは、ある意味で料理人に似ている。料理人になりたいと言っても、日本料理の板前とフランス料理のシェフでは必要な道具も食材の知識も違う。また、同じフレンチでもホテルの料理人のように一度に大量に作る技量と、個人経営のレストランでは求められるものが異なる。
 プログラマーもそれと同じ。ゲームを作る知識とネットワークを使う知識は、かなりかけ離れたものになる。
 では、ぼくのようなWebを介して利用するフロントエンドとバックエンドのプログラムを作るには、どんな知識とどれぐらいの理解度が必要になるのだろう?改めて考えてみたい。
 Webを介しているのでネットワークの知識は必要だ。とは言え、ぼくがWi-Fiと光ファイバーの違いを気にすることはない。指定したIPアドレスに通信が届けばそれで十分。つまり、ネットワークに関してはL3だけ分かればいい。
 サーバは用意された環境に合わせるだけ。自分で環境構築をしなくて良いのならば、LinuxでもWindowsでも構わないし、仮想環境でもコンテナでも気にしない。WebサーバがNginxでもApacheでもすることは同じ。つまりサーバに関しては、なにも分からなくて良い。
 フロントエンドを作る場合、HTMLとCSSとJavascriptを組み合わせることになる。とは言え最近はフレームワークが勝手に基本を作ってくれるので、自分で0から書くことは稀。むしろ下手に考えるよりも最新技術を搭載した開発ツールに任せた方が安心安全確実だ。強いて言えば、CSSで任意の要素を選択できると楽かもしれない。あとは、Javascriptのイベント発火の順番を理解していると奇妙な動作に悩まされることが減るだろう。
 これがぼくの知識のすべて。つまり、ぼくはほとんどなにも分からずにプログラムを書いている訳だ。
 もっとも「分からなくて良い」と判断を下すためには、少なくない知識と経験が欠かせないんだけど…。