ベタープログラマ
ベタープログラマ
優れたプログラマになるための 38 の考え方とテクニック
- 著者:
- Pete Goodliffe / 柴田 芳樹(ピート グッドリフ / シバタ ヨシキ)
- 出版社:
- オライリー・ジャパン
- 出版日:
- 2017年12月15日頃
- ISBN:
- 9784873118208
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
優れたプログラマーになるために、日々の習慣、学習、他者との関係などについて述べた書籍です。
「できるだけ良いコードを書く方法」、「プログラミングを練習する重要性」、「日常の振る舞いと習慣」、「コードを確実にリリースする方法」、「他の人と一緒に作業するコツ」という 5 部構成で、情熱をもってプログラミングを続けていくためのノウハウをまとめています。プログラマなら自身の経験に照らし合わせても納得する話がたくさん出てくるはずです。
技書の森解説
コードを書く技術に加えて、日々の習慣、学び方、他の人との働き方まで含めて、優れたプログラマになるための考え方とテクニックを 38 のテーマで語る本です。『ベタープログラマ』は『Code Craft』の著者 Pete Goodliffe の著作を柴田 芳樹が訳したもので、原書は Becoming a Better Programmer、オライリー・ジャパンから 2017 年 12 月 15 日に発行されました。副題は「優れたプログラマになるための 38 の考え方とテクニック」です。版元の紹介文は、著者が自らの経験を元にまとめた本で、プログラミングを愛し、長く続けながら優れたプログラマになりたいと思うすべての人に向けた一冊と位置づけています。
1 章と 5 部の構成、コードの書き方から人々の営みまで
1 章「コードを気にかける」でコードへの取り組み方と態度を示したあと、本論は 5 つの部に分かれます。第 I 部「you.write (code)」は 2 章から 13 章で、レイアウトと名前付け、不必要なコードを書かないこと、過去に書いたコードやなじみのないコード、ひどいコードとの付き合い方、エラー処理、頑強なコード、バグの発見と修正、単体テストからシステムテストまでの開発者テスト、複雑さへの対処、優れた設計とひどい設計の顛末を扱います。第 II 部「練習することで完璧になる」は 14 章から 23 章で、チームの規則、ソフトウェアの簡潔性、コードの再利用、バージョンコントロール、QA チームとの協業、コード凍結、リリースの作成へと、開発の進め方に視点を移します。第 III 部「個人的なこと」は 24 章から 30 章で、効果的な学び方、モチベーションの維持、スキルの陳腐化を防ぐこと、倫理的な問題、多くの言語を学ぶこと、姿勢や目の疲労といった健康までを含みます。第 IV 部「成し遂げる」は 31 章から 33 章で、不要な作業の回避、タスクの完了の見極め、視野を狭くしない問題解決を、第 V 部「人々の営み」は 34 章から 38 章で、チームでうまく働く方法、説明責任、コミュニケーションスキル、ソフトウェアのマニフェスト、間違ったソフトウェア管理の教訓を取り上げ、結びと訳者あとがきで終わります。
コードを減らし、単純に保つことが効く理由
プログラマの仕事は書くことだと思われがちですが、書いたコードはその後ずっと読まれ、直され、テストされ続けます。コードが 1 行増えるごとに、読む人が理解すべき範囲と、変更のたびに壊れうる箇所が増えるため、同じ機能をより少ないコードで実現することは、それだけで保守の負担を減らします。使われなくなった関数や到達しない分岐、つまり デッドコード は、何もしていないように見えて、読む人にそれが必要なのかを考えさせ、検索や変更の妨げになります。設計を必要以上に複雑にしないという KISS 原則 も同じ方向の考え方で、将来の拡張を見越して抽象化を重ねるほど、目の前の変更に必要な理解が重くなります。本書は第 I 部で書き方と並べて、コードを書かないことや取り除くことの章を設け、第 II 部でもソフトウェアの簡潔性を扱っています。こうした考え方は一度覚えれば済む規則ではなく、日々の判断の積み重ねで保つものです。
個人の習慣とチームの働き方を同じ本で扱う読みどころ
本書は 1 つの章を 1 つのテーマにあて、コードの細部からチームや組織の中での働き方までを横断します。そのため、特定の言語の書き方やアルゴリズム、設計パターンを体系的に学びたい人には、本書だけでは目的が合いません。逆に、文法や設計の知識はひととおり身につけたものの、ひどいコードとの付き合い方やエラー処理への態度、QA チームとの協業、説明責任やコミュニケーションといった、教科書になりにくい事柄で迷っている人に向けて、本書はこうした事柄を章ごとに扱います。2017 年刊の本で、バージョンコントロールやリリースの章は刊行時の開発環境を前提にしています。ただし版元が考え方と習慣をまとめた本と位置づけるとおり、主題は道具の操作ではありません。
プログラマとして数年働き、コードを書く力とは別の何かが足りないと感じ始めた人や、後輩に仕事の進め方を伝える立場になった人に向けて、本書は自分の習慣を見直すための 38 のテーマを並べています。第 I 部がコードの書き方、第 II 部が開発の進め方、第 III 部から第 V 部が個人の学び方とチームでの働き方を扱います。
言及した記事 (3 件)
この本に興味がある方におすすめ
関連する本
関連記事
テスト本ガイド - テスト設計を学べる技術書の選び方
テストの書き方からテスト戦略まで学べる技術書の選び方を紹介。テストピラミッド、TDD の正しい読み方、テストの ROI の考え方を解説します。
プログラミングの本は教科書とは違う
学校の教科書のように暗記する必要はありません。プログラミングの本は引いて使う道具です。教科書との違いと、順番を飛ばせる本 / 飛ばせない本の見分け方を紹介します。
本を読むスピードは気にしなくていい
1 ページ読むのに 10 分かかっても問題ありません。プログラミングの本はゆっくり読むのが正解である理由と、焦らず読み進めるコツを紹介します。