プログラミングスクールを受講して変わったこと
30代独身、在宅勤務サラリーマンです。非IT系です。
今回はプログラミングスクールを受講してみて、自分が変わったこと・良かったことを紹介してみます。案件ではありません。
現実をオブジェクトで見るようになった
僕が学んだオブジェクト指向プログラミングは、そのアプリの一連の大きな動作を「どこの部品に任せるか」ということを常に考えます。
たとえば、「数字をいくつか入力して、合計ボタンを押すと全部の合計が出る」というプログラムを一つ作るにしても、どの部分に計算機能を持たせるか?ということを考える必要が出てきます。
単一責任と再利用性に気を付けるようになった
プログラムの1つ1つの部品は、それぞれ単一の責任を負うのが良いとされています。つまり、「入力された数字を覚えておく」コードと、「それらを合計する」コードは別々に実装する方が良いということです。
その理由の一つに「再利用性」という観点があって、たとえば「数字を全部覚えて、それらを足す」というまとまったプログラムにしてしまうと、
「やっぱり、それらの数字の掛け算をする機能がほしいな」とか、「平均を出してほしいな」みたいな機能拡張が必要になったときに、「数字を覚えておく部品」だけで使いたいのに、勝手に「足し算機能」がついてきてしまうので、使い勝手が悪い。みたいなことが起きます。
このように、プログラミングにおいてはコードを書くための知識だけでなく、「一番いい感じになる構造を考える」ことが不可欠です。
で、この考え方は現実の仕事とか、別のアプリ(たとえばExcelでデータを扱うとき)などでも活用できます。
昔の自分が書いたVBAを見て仰天
僕は仕事でExcelのVBAを用いて作業を自動化することがあるのですが、プログラミングを学ぶ前に書いたVBAコードは、1つのサブルーチンに大量の仕事が詰め込まれていて、どこかひとつ直すのに大変な労力がかかるものになっていました。
さらに、1つのコードが長いので、1箇所直すといろんな箇所に影響がでます。さらに、似たようなことを実行しているコードがそこかしこにあります。
DB構造に注意を払うようになった
VBAだけではなく、Excelで複数のデータを統合して1つのデータにまとめたり、ゼロからデータを作っていくときにテーブルの構造をしっかりと考えるようになったのも大きいです。
データベースの正規化であったり、「こことここは別のテーブルに分けた方が良い」とか、そういったことに気づけるようになるので、プログラミングを学ぶ価値がありました。
UI・UXに注意を払い、いろいろ許せるようになった
WebサイトやWebアプリを使う際に、「お、このインターフェースいいな」「ここのレスポンスわかりにくいな」「ここのページ設計はもうちょっとこうがいいな」とか、そういうことを考えるようになりました。
たとえばページ設計がカオスだなと思うのはS◯NYのアプリやWebページです。たとえば、サーバーにクエリを投げて検索に大変苦労しているな、と感じるのはビッ◯カメラのオンラインストアとかです。
これまで一般ユーザーとして、ただイライラしていた利用体験ではありました。
一方で、実際にかんたんなアプリを作る手順を知った今となっては、「あぁ、後からこういうページ追加したからこんなカオスになってるんだろうか」とか、「あぁ、今頑張って二分探索してるんかな」みたいなことを考えて、許せるようにもなりました。
昔は電車で赤ちゃんが泣いてるとイライラしていたけど、子どもが産まれてから許せるようになった、みたいな感じでしょうか。
世界の解像度が1個上がる。みんなプログラミングやろうぜ
プログラミングは、仕事でやらないといけないわけでも、ガチプロにならないといけないわけではありません。
ボールペンが大好きでいっぱい集めている人が悪筆でもいいですし、バイクに乗るのが趣味だからといって峠で膝を擦る必要はありません。
同じように、プログラミングを学んだからといって、Facebookやメルカリを作れる必要はないのです。
たった半年勉強しただけで、Excelをはじめとした他のツールにも転用できる考え方をたくさん得られた上に、動きが遅かったりページ構成がアレなWebページを見ても許せる心の平穏を得られるので、みんなプログラミングやろうぜ。という話でした。
今日は以上です。
最後までお読みいただきありがとうございました。
この記事が気に入ったらサポートをしてみませんか?