何となくプログラムの書き方が分かったときに読むもの

created:

updated:

thumbnail

この投稿ではフレームワークを使ってプログラムが書けるようになったときに読むと良さそうなサイトを紹介します。中堅どころの先輩とプログラミングについて雑談している感じで考え方を読むことができます。熟読するというより、流し読みする感じが良いと思います。ここで読んだ内容で気になるキーワードについて本やインターネットでさらに調べる感じでしょうか。

プログラマが知るべき97のこと

プログラミングはプログラミング言語の仕様やオブジェクト指向などは書籍やオンラインのコースで学ぶことができます。でもそれだけでは良い感じにプログラムを書くのは難しいと思います。例えば、ケーキを作るのと同じで、クリームの泡立て方、生地の配合の一つ一つは分かるけど、シフォンケーキを作りたい、チョコレートケーキを作りたい、となったときに、どんな感じで調整したらいいか分からない、と言ったところでしょうか。

私の会社では最近IT未経験で入社した社員がいて、この方からの質問でこのことを思い出しました。この方にはProgateをやってもらっていて、オブジェクト指向まで修了しています。先日この方から、オブジェクト指向の課題について質問を受けました。具体的には、ユーザーの入力を受け付ける処理はメインの処理以外の場所(別クラス)に書いたらダメなのかというものです。プログラム的に可能かどうかという観点から言うと、メインの処理以外の場所に書いても構わない、となるかと思います。

ただ、実務でプログラムを書くときはそんな書き方はしないのではないでしょうか。入力は標準入力から変わる可能性があるのか(ユーザー入力の代わりにファイルの情報を読み込んだりしないか)?入力チェックをする必要はないのか?と考えると別の場所(個別のクラスファイル)ではなく、メインの処理に書いた方が良さそうです。これは何度か痛い目に遭ったり、単一責任の原則やDRYの原則などの考え方を聞いたことがあったりして分かるようになるものかなーと思うのですが、分かるのが早いに越したことはありません。

何の気なしに書いたのですが「中堅どころの先輩」というポジションも大事です。これが先生だと従わないといけないルールなような気もしますが、先輩のアドバイスなので気軽に聞き流したり、心の中で反論しても構いません。あくまで参考意見として聞いてください。

このシリーズでソフトウェアアーキテクトとプロジェクトマネージャーのサイトもあったので参考までに共有しますね。

ソフトウェアアーキテクトが知るべき97のこと
プロジェクト・マネジャーが知るべき97のこと