おすすめの書籍

おすすめできる本をただ並べただけのページです。
今どきネットで情報を得られると思うかもしれませんが、その内容は断片的で信頼性に欠けます。無料で情報を得られる反面、正確な情報を得るのにとても時間が掛かるのです。
それに比べて本は、より確実に短時間で正確な情報を得られます。時間を有効に使いたい人ほどネットで調べるのではなく、本を読むべきです。

リンク先はAmazonの各ページ。Amazonで★4以上の本ならだいたい間違いなし。
似たような本が多すぎて迷うときは「ITエンジニア本大賞」も参考になります。

目次

ソフトウェア開発

リーダブルコード(著者:Dustin Boswell、Trevor Foucher)

出版社:オライリージャパン / 発行日:2012年06月23日

目次
  • 1章 理解しやすいコード
    • 1.1 「優れた」コードって何?
    • 1.2 読みやすさの基本定理
    • 1.3 小さなことは絶対にいいこと?
    • 1.4 「理解するまでにかかる時間」は競合する?
    • 1.5 でもやるんだよ
  • 第I部 表面上の改善
    • 2章 名前に情報を詰め込む
      • 2.1 明確な単語を選ぶ
      • 2.2 tmpやretvalなどの汎用的な名前を避ける
      • 2.3 抽象的な名前よりも具体的な名前を使う
      • 2.4 名前に情報を追加する
      • 2.5 名前の長さを決める
      • 2.6 名前のフォーマットで情報を伝える
      • 2.7 まとめ
    • 3章 誤解されない名前
      • 3.1 例:filter()
      • 3.2 例:Clip(text, length)
      • 3.3 限界値を含めるときはminとmaxを使う
      • 3.4 範囲を指定するときはfirstとlastを使う
      • 3.5 包含/排他的範囲にはbeginとendを使う
      • 3.6 ブール値の名前
      • 3.7 ユーザの期待に合わせる
      • 3.8 例:複数の名前を検討する
      • 3.9 まとめ
    • 4章 美しさ
    • 5章 コメントすべきことを知る
    • 6章 コメントは正確で簡潔に
  • 第II部 ループとロジックの単純化
    • 7章 制御フローを読みやすくする
    • 8章 巨大な式を分割する
    • 9章 変数と読みやすさ
  • 第III部 コードの再構成
    • 10章 無関係の下位問題を抽出する
    • 11章 一度に1つのことを
    • 12章 コードに思いを込める
    • 13章 短いコードを書く
  • 第IV部 選抜テーマ
    • 14章 テストと読みやすさ
    • 15章 「分/時間カウンタ」を設計・実装する
テスト駆動開発(著者:Kent Beck)

出版社:オーム社 / 発行日:2017年10月14日

目次
  • 第I部 多国通貨
    • 第1章 仮実装
    • 第2章 明白な実装
    • 第3章 三角測量
    • 第4章 意図を語るテスト
    • 第5章 原則をあえて破るとき
    • 第6章 テスト不足に気づいたら
    • 第7章 疑念をテストに翻訳する
    • 第8章 実装を隠す
    • 第9章 歩幅の調整
    • 第10章 テストに聞いてみる
    • 第11章 不要になったら消す
    • 第12章 設計とメタファー
    • 第13章 実装を導くテスト
    • 第14章 学習用テストと回帰テスト
    • 第15章 テスト任せとコンパイラ任せ
    • 第16章 将来の読み手を考えたテスト
    • 第17章 多国通貨の全体ふりかえり
  • 第II部 xUnit
    • 第18章 xUnitへ向かう小さな一歩
    • 第19章 前準備
    • 第20章 後片付け
    • 第21章 数え上げ
    • 第22章 失敗の扱い
    • 第23章 スイートにまとめる
    • 第24章 xUnitの全体ふりかえり
  • 第III部 テスト駆動開発のパターン
    • 第25章 テスト駆動開発のパターン
    • 第26章 レッドバーのパターン
    • 第27章 テスティングのパターン
    • 第28章 グリーンバーのパターン
    • 第29章 xUnitのパターン
    • 第30章 デザインパターン
    • 第31章 リファクタリング
    • 第32章 TDDを身につける
新・標準プログラマーズライブラリ C言語 ポインタ完全制覇(著者:前橋 和弥)

出版社:技術評論社 / 発行日:2017年12月07日

目次
  • 第1章 まずは基礎から―予備知識と復習
    • 1-1 Cはどんな言語なのか
      • 1-1-1 Cの生い立ち
      • 1-1-2 文法上の不備・不統一
      • 1-1-3 Cのバイブル―K&R
      • 1-1-4 ANSI C以前のC
      • 1-1-5 ANSI C(C89/90)
      • 1-1-6 C95
      • 1-1-7 C99
      • 1-1-8 C11
      • 1-1-9 Cの理念
      • 1-1-10 C言語の本体とは
      • 1-1-11 Cは,スカラしか扱えない言語だった
    • 1-2 メモリとアドレス
      • 1-2-1 メモリとアドレス
      • 1-2-2 メモリと変数
      • 1-2-3 メモリとプログラムの実行
    • 1-3 ポインタについて
      • 1-3-1 そもそも,悪名高いポインタとは何か
      • 1-3-2 ポインタに触れてみよう
      • 1-3-3 アドレス演算子,間接演算子,添字演算子
      • 1-3-4 ポインタとアドレスの微妙な関係
      • 1-3-5 ポインタ演算
      • 1-3-6 ヌルポインタとは何か?
      • 1-3-7 実践―関数から複数の値を返してもらう
    • 1-4 配列について
      • 1-4-1 配列を使う
      • 1-4-2 配列とポインタの微妙な関係
      • 1-4-3 添字演算子[]は,配列とは無関係だ!
      • 1-4-4 ポインタ演算という妙な機能はなぜあるのか?
      • 1-4-5 ポインタ演算なんか使うのはやめてしまおう
      • 1-4-6 関数の引数として配列を渡す(つもり)
      • 1-4-7 関数の仮引数の宣言の書き方
      • 1-4-8 C99の可変長配列―VLA
  • 第2章 実験してみよう―Cはメモリをどう使うのか
    • 2-1 仮想アドレス
    • 2-2 Cのメモリの使い方
      • 2-2-1 Cにおける変数の種類
      • 2-2-2 アドレスを表示させてみよう
    • 2-3 関数と文字列リテラル
      • 2-3-1 書き込み禁止領域
      • 2-3-2 関数へのポインタ
    • 2-4 静的変数
      • 2-4-1 静的変数とは
      • 2-4-2 分割コンパイルとリンク
    • 2-5 自動変数(スタック)
      • 2-5-1 領域の「使い回し」
      • 2-5-2 関数呼び出しで何が起きるか?
      • 2-5-3 自動変数をどのように参照するのか
      • 2-5-4 典型的なセキュリティホール―バッファオーバーフロー脆弱性
      • 2-5-5 可変長引数
      • 2-5-6 再帰呼び出し
      • 2-5-7 C99の可変長配列(VLA)におけるスタック
    • 2-6 malloc( )による動的な領域確保(ヒープ)
      • 2-6-1 malloc( )の基礎
      • 2-6-2 malloc( )は「システムコール」か?
      • 2-6-3 malloc( )で何が起きるのか?
      • 2-6-4 free( )したあと,その領域はどうなるのか?
      • 2-6-5 フラグメンテーション
      • 2-6-6 malloc( )以外の動的メモリ確保関数
    • 2-7 アラインメント
    • 2-8 バイトオーダー
    • 2-9 言語仕様と実装について―ごめんなさい,ここまでの内容はかなりウソです
  • 第3章 Cの文法を解き明かす―結局のところ,どういうことなのか?
    • 3-1 Cの宣言を解読する
      • 3-1-1 英語で読め
      • 3-1-2 Cの宣言を解読する
      • 3-1-3 型名
    • 3-2 Cの型モデル
      • 3-2-1 基本型と派生型
      • 3-2-2 ポインタ型派生
      • 3-2-3 配列型派生
      • 3-2-4 「配列へのポインタ」とは何か?
      • 3-2-5 C言語には,多次元配列は存在しない!
      • 3-2-6 関数型派生
      • 3-2-7 型のサイズを計算する
      • 3-2-8 基本型
      • 3-2-9 構造体と共用体
      • 3-2-10 不完全型
    • 3-3 式
      • 3-3-1 式とデータ型
      • 3-3-2 左辺値とは何か―変数の2つの顔
      • 3-3-3 配列→ポインタの読み替え
      • 3-3-4 配列とポインタに関係する演算子
      • 3-3-5 多次元配列
    • 3-4 続・Cの宣言を解読する
      • 3-4-1 const修飾子
      • 3-4-2 constをどう使うか?どこまで使えるか?
      • 3-4-3 typedef
    • 3-5 その他
      • 3-5-1 関数の仮引数の宣言(ANSI C版)
      • 3-5-2 関数の仮引数の宣言(C99版)
      • 3-5-3 空の[ ]について
      • 3-5-4 文字列リテラル
      • 3-5-5 関数へのポインタにおける混乱
      • 3-5-6 キャスト
      • 3-5-7 練習―複雑な宣言を読んでみよう
    • 3-6 頭に叩き込んでおくべきこと―配列とポインタは別物だ!!
      • 3-6-1 なぜ混乱してしまうのか
      • 3-6-2 式の中では
      • 3-6-3 宣言では
  • 第4章 定石集―配列とポインタのよくある使い方
    • 4-1 基本的な使い方
      • 4-1-1 戻り値以外の方法で値を返してもらう
      • 4-1-2 配列を関数の引数として渡す
      • 4-1-3 動的配列―malloc( )による可変長の配列
    • 4-2 組み合わせて使う
      • 4-2-1 動的配列の配列
      • 4-2-2 動的配列の動的配列
      • 4-2-3 コマンド行引数
      • 4-2-4 引数経由でポインタを返してもらう
      • 4-2-5 多次元配列を関数の引数として渡す
      • 4-2-6 多次元配列を関数の引数として渡す(VLA版)
      • 4-2-7 縦横可変の2次元配列をmalloc( )で確保する(C99)
      • 4-2-8 配列の動的配列
      • 4-2-9 変に凝る前に,構造体の使用を考えよう
      • 4-2-10 可変長構造体(ANSI C版)
      • 4-2-11 フレキシブル配列メンバ(C99)
  • 第5章 データ構造―ポインタの真の使い方
    • 5-1 ケーススタディ1:単語の使用頻度を数える
      • 5-1-1 例題の仕様について
      • 5-1-2 設計
      • 5-1-3 配列版
      • 5-1-4 連結リスト版
      • 5-1-5 検索機能の追加
      • 5-1-6 その他のデータ構造
    • 5-2 ケーススタディ2:ドローツールのデータ構造
      • 5-2-1 例題の仕様について
      • 5-2-2 各種の図形を表現する
      • 5-2-3 Shape型
      • 5-2-4 検討―他の方法は考えられないか
      • 5-2-5 図形のグループ化
      • 5-2-6 関数へのポインタの配列で処理を振り分ける
      • 5-2-7 継承とポリモルフィズムへの道
      • 5-2-8 ポインタの怖さ
      • 5-2-9 で,結局ポインタってのは何なのか?
  • 第6章 その他―落ち穂拾い
    • 6-1 新しい関数群
      • 6-1-1 範囲チェックが追加された関数(C11)
      • 6-1-2 静的な領域を使わないようにした関数(C11)
    • 6-2 落とし穴
      • 6-2-1 整数拡張
      • 6-2-2 「古い」Cでfloat型の引数を使ったら
      • 6-2-3 printf( )とscanf( )
      • 6-2-4 プロトタイプ宣言の光と影
    • 6-3 イディオム
      • 6-3-1 構造体宣言
      • 6-3-2 自己参照構造体
      • 6-3-3 構造体の相互参照
      • 6-3-4 構造体のネスティング
      • 6-3-5 共用体
      • 6-3-6 無名構造体/共用体(C11)
      • 6-3-7 配列の初期化
      • 6-3-8 charへのポインタの配列の初期化
      • 6-3-9 構造体の初期化
      • 6-3-10 共用体の初期化
      • 6-3-11 要素指示子付きの初期化(C99)
      • 6-3-12 複合リテラル(C99)
レガシーコードからの脱却(著者:David Scott Bernstein)

出版社:オライリージャパン / 発行日:2019年09月19日

目次
  • 第Ⅰ部 レガシーコード危機
    • 1章 何かが間違っている
      • 1.1 レガシーコードとは何か?
      • 1.2 滝(ウォーターフォール)に流される
      • 1.3 一か八かの勝負
      • 1.4 なぜウォーターフォールは機能しないのか?
      • 1.5 「プロセス」が「忙しい仕事」になるとき
      • 1.6 ガチガチのマネジメント
      • 1.7 ここにドラゴンがいる
      • 1.8 未知を見積もる
      • 1.9 素人業界
      • 1.10 本章のふりかえり
    • 2章 CHAOSレポート再考
      • 2.1 CHAOSレポート
      • 2.2 スタンディッシュレポートの誤り
      • 2.3 プロジェクトがなぜ失敗するのか
      • 2.4 失敗のコスト
      • 2.5 本章のふりかえり
    • 3章 賢人による新しいアイデア
      • 3.1 アジャイルに入門する
      • 3.2 小さいほどよい
      • 3.3 アジャイルを実践する
      • 3.4 芸術と技能のバランスを保つ
      • 3.5 アジャイルがキャズムを超える
      • 3.6 技術的卓越性を求める
      • 3.7 本章のふりかえり
  • 第Ⅱ部 ソフトウェアの寿命を延ばし価値を高める9つのプラクティス
    • 4章 9つのプラクティス
      • 4.1 専門家が知っていること
      • 4.2 守破離
      • 4.3 第一原理
      • 4.4 原則となるために
      • 4.5 プラクティスとなるために
      • 4.6 原則がプラクティスをガイドする
      • 4.7 予測か対応か
      • 4.8 「良い」ソフトウェアを定義する
      • 4.9 9つのプラクティス
      • 4.10 本章のふりかえり
    • 5章 プラクティス1 やり方より先に目的、理由、誰のためかを伝える
      • 5.1 やり方は言わない
      • 5.2 やり方を目的に転換する
      • 5.3 プロダクトオーナーにいてもらう
      • 5.4 ストーリーで目的、理由、誰のためかを語る
      • 5.5 受け入れテストに明確な基準を設定する
      • 5.6 受け入れ基準を自動化する
      • 5.7 実践しよう
      • 5.8 本章のふりかえり
    • 6章 プラクティス2 小さなバッチで作る
      • 6.1 小さなウソをつく
      • 6.2 柔軟に進める
      • 6.3 ケイデンスがプロセスを決める
      • 6.4 小さいことはよいこと
      • 6.5 分割統治
      • 6.6 フィードバックサイクルを短くする
      • 6.7 ビルドを高速化する
      • 6.8 フィードバックに対応する
      • 6.9 バックログを作る
      • 6.10 ストーリーをタスクに分解する
      • 6.11 タイムボックスの外側を考える
      • 6.12 スコープを管理する
      • 6.13 実践しよう
      • 6.14 本章のふりかえり
    • 7章 プラクティス3 継続的に統合する
      • 7.1 プロジェクトの鼓動を確立する
      • 7.2 完了と、完了の完了と、完了の完了の完了が違うことを知る
      • 7.3 継続的にデプロイ可能にする
      • 7.4 ビルドを自動化する
      • 7.5 早期から頻繁に統合する
      • 7.6 最初の一歩を踏み出す
      • 7.7 実践しよう
      • 7.8 本章のふりかえり
    • 8章 プラクティス4 協力しあう
      • 8.1 エクストリームプログラミング
      • 8.2 コミュニケーションと協働
      • 8.3 ペアプログラミング
      • 8.4 バディプログラミング
      • 8.5 スパイク、スウォーム、モブ
      • 8.6 タイムボックスの中で未知を探求する
      • 8.7 コードレビューとレトロスペクティブのスケジュールを立てる
      • 8.8 学習を増やし、知識を広げる
      • 8.9 常にメンター、メンティーであれ
      • 8.10 実践しよう
      • 8.11 本章のふりかえり
    • 9章 プラクティス5 「CLEAN」コードを作る
      • 9.1 高品質のコードは凝集性が高い
      • 9.2 高品質のコードは疎結合である
      • 9.3 高品質のコードはカプセル化されている
      • 9.4 高品質のコードは断定的である
      • 9.5 高品質なコードは冗長でない
      • 9.6 コード品質が私たちを導いてくれる
      • 9.7 明日のベロシティのために今日品質を上げる
      • 9.8 実践しよう
      • 9.9 本章のふりかえり
    • 10章 プラクティス6 まずテストを書く
      • 10.1 テストと呼ばれるもの
      • 10.2 QA
      • 10.3 良いテストを書く
      • 10.4 テスト駆動開発はすばやいフィードバックをもたらす
      • 10.5 テスト駆動開発はリファクタリングをサポートする
      • 10.6 テスト可能なコードを書く
      • 10.7 テスト駆動開発は失敗することがある
      • 10.8 テスト駆動開発をチームに広める
      • 10.9 テストに感染する
      • 10.10 実践しよう
      • 10.11 本章のふりかえり
    • 11章 プラクティス7 テストでふるまいを明示する
      • 11.1 レッド/グリーン/リファクタ
      • 11.2 テストファーストの例
      • 11.3 制約を導入する
      • 11.4 作ったもの
      • 11.5 テストは仕様だ
      • 11.6 完全であれ
      • 11.7 テストを一意にする
      • 11.8 コードをテストでカバーする
      • 11.9 バグにはテストがない
      • 11.10 モックを使ったワークフローテスト
      • 11.11 セーフティネットを作る
      • 11.12 実践しよう
      • 11.13 本章のふりかえり
    • 12章 プラクティス8 設計は最後に行う
      • 12.1 変更しやすさへの障害
      • 12.2 持続可能な開発
      • 12.3 コーディング対クリーニング
      • 12.4 ソフトウェアは書かれる回数より読まれる回数のほうが多い
      • 12.5 意図によるプログラミング
      • 12.6 循環複雑度を減らす
      • 12.7 生成と利用を分離する
      • 12.8 創発する設計
      • 12.9 実践しよう
      • 12.10 本章のふりかえり
    • 13章 プラクティス9 レガシーコードをリファクタリングする
      • 13.1 投資か負債か?
      • 13.2 怠け者になる
      • 13.3 コードの変更が必要なとき
      • 13.4 リファクタリングのテクニック
      • 13.5 変化に対応するためのリファクタリング
      • 13.6 オープン・クローズドにリファクタリングする
      • 13.7 リファクタリングで変更しやすさを確保する
      • 13.8 2回めは適切にやる
      • 13.9 実践しよう
      • 13.10 本章のふりかえり
    • 14章 レガシーコードからの学び
      • 14.1 もっと良く速く安く
      • 14.2 不要な出費はしない
      • 14.3 まっすぐで狭いところを歩く
      • 14.4 ソフトウェア職のスキルを高める
      • 14.5 アジャイルの向こうへ
      • 14.6 理解を体現する
      • 14.7 成長する勇気
リファクタリング (第2版)(著者:Martin Fowler)

出版社:オーム社 / 発行日:2019年12月01日

目次
  • Chap.1 リファクタリング-最初の例
  • Chap.2 リファクタリングの原則
  • Chap.3 コードの不吉な臭い
  • Chap.4 テストの構築
  • Chap.5 カタログの紹介
  • Chap.6 リファクタリングはじめの一歩
  • Chap.7 カプセル化
  • Chap.8 特性の移動
  • Chap.9 データの再編成
  • Chap.10 条件記述の単純化
  • Chap.11 APIのリファクタリング
  • Chap.12 継承の取り扱い
良いコード/悪いコードで学ぶ設計入門(著者:仙塲 大也)

出版社:技術評論社 / 発行日:2022年04月30日

目次
  • 1 悪しき構造の弊害を知覚する
    • 1.1 意味不明な命名
    • 1.2 理解を困難にする条件分岐のネスト
    • 1.3 さまざまな悪魔を招きやすいデータクラス
    • 1.4 悪魔退治の基本
  • 2 設計の初歩
    • 2.1 省略せずに意図が伝わる名前を設計する
    • 2.2 変数を使い回さない,目的ごとの変数を用意する
    • 2.3 ベタ書きせず,意味のあるまとまりでメソッド化
    • 2.4 関係し合うデータとロジックをクラスにまとめる
  • 3 クラス設計 ―すべてにつながる設計の基盤―
    • 3.1 クラス単体で正常に動作するよう設計する
    • 3.2 成熟したクラスへ成長させる設計術
    • 3.3 悪魔退治の効果を検証する
    • 3.4 プログラム構造の問題解決に役立つ設計パターン
    • Column 種類の異なる言語と本書のノウハウ
  • 4 不変の活用 ―安定動作を構築する―
    • 4.1 再代入
    • 4.2 可変がもたらす意図せぬ影響
    • 4.3 不変と可変の取り扱い方針
  • 5 低凝集 ―バラバラになったモノたち―
    • 5.1 staticメソッドの誤用
    • 5.2 初期化ロジックの分散
    • 5.3 共通処理クラス(Common・Util)
    • 5.4 結果を返すために引数を使わないこと
    • Column C#のoutキーワード
    • 5.5 多すぎる引数
    • 5.6 メソッドチェイン
  • 6 条件分岐 ―迷宮化した分岐処理を解きほぐす技法―
    • 6.1 条件分岐のネストによる可読性低下
    • 6.2 switch文の重複
    • Column クソコード動画「switch文」
    • 6.3 条件分岐の重複とネスト
    • 6.4 型チェックで分岐しないこと
    • 6.5 interfaceの使いこなしが中級者への第一歩
    • 6.6 フラグ引数
  • 7 コレクション ―ネストを解消する構造化技法―
    • 7.1 わざわざ自前でコレクション処理を実装してしまう
    • Column 車輪の再発明
    • 7.2 ループ処理中の条件分岐ネスト
    • 7.3 低凝集なコレクション処理
  • 8 密結合 ―絡まって解きほぐせない構造―
    • 8.1 密結合と責務
    • Column クソコード動画「共通化の罠」
    • 8.2 密結合の各種事例と対処方法
    • Column クソコード動画「継承」
  • 9 設計の健全性をそこなうさまざまな悪魔たち
    • 9.1 デッドコード
    • 9.2 YAGNI原則
    • 9.3 マジックナンバー
    • 9.4 文字列型執着
    • 9.5 グローバル変数
    • 9.6 null問題
    • 9.7 例外の握り潰し
    • 9.8 設計秩序を破壊するメタプログラミング
    • 9.9 技術駆動パッケージング
    • 9.10 サンプルコードのコピペ
    • 9.11 銀の弾丸
  • 10 名前設計 ―あるべき構造を見破る名前―
    • 10.1 悪魔を呼び寄せる名前
    • 10.2 名前を設計する―目的駆動名前設計
    • 10.3 設計時の注意すべきリスク
    • 10.4 意図がわからない名前
    • Column 技術駆動命名を用いる分野もある
    • 10.5 構造を大きく歪ませてしまう名前
    • Column クソコード動画「Managerクラス」
    • 10.6 名前的に居場所が不自然なメソッド
    • 10.7 名前の省略
  • 11 コメント ―保守と変更の正確性を高める書き方―
    • 11.1 退化コメント
    • 11.2 コメントで命名をごまかす
    • 11.3 意図や仕様変更時の注意点を読み手に伝えること
    • 11.4 コメントのルール まとめ
    • 11.5 ドキュメントコメント
  • 12 メソッド(関数) ―良きクラスには良きメソッドあり―
    • 12.1 必ず自身のクラスのインスタンス変数を使うこと
    • 12.2 不変をベースに予期せぬ動作を防ぐ関数にすること
    • 12.3 尋ねるな,命じろ
    • Column クソコード動画「カプセル化」
    • 12.4 コマンド・クエリ分離
    • 12.5 引数
    • 12.6 戻り値
    • Column メソッドの名前設計
    • Column staticメソッドの扱いに注意
  • 13 モデリング ―クラス設計の土台―
    • 13.1 邪悪な構造に陥りがちなUserクラス
    • 13.2 モデリングの考え方とあるべき構造
    • 13.3 良くないモデルの問題点と解決方法
    • Column クソコード動画「Userクラス」
    • 13.4 機能性を左右するモデリング
  • 14 リファクタリング ―既存コードを成長に導く技―
    • 14.1 リファクタリングの流れ
    • 14.2 ユニットテストでリファクタリングのミスを防ぐ
    • 14.3 あやふやな仕様を理解するための分析方法
    • 14.4 IDEのリファクタリング機能
    • 14.5 リファクタリングで注意すべきこと
    • Column Railsアプリのリファクタリング
  • 15 設計の意義と設計への向き合い方
    • 15.1 本書はなんの設計について書いたものなのか
    • 15.2 設計しないと開発生産性が低下する
    • 15.3 ソフトウェアとエンジニアの成長性
    • 15.4 課題を解決する
    • 15.5 コードの良し悪しを判断する指標
    • Column クラスを分割すると読みにくくなる?
    • 15.6 コード分析をサポートする各種ツール
    • Column シンタックスハイライトを品質可視化に利用する
    • 15.7 設計対象と費用対効果
    • 15.8 時間を操る超能力者になろう
  • 16 設計を妨げる開発プロセスとの戦い
    • 16.1 コミュニケーション
    • 16.2 設計
    • 16.3 実装
    • 16.4 レビュー
    • 16.5 チームの設計力を高める
  • 17 設計技術の理解の深め方
    • 17.1 さらにステップアップするための設計技術書紹介
    • Column バグ退治RPG『バグハンター2 REBOOT』
    • 17.2 設計スキルを高める学び方
    • Column C#と長き旅,そして設計への道
世界一流エンジニアの思考法(著者:牛尾 剛)

出版社:文藝春秋 / 発行日:2023年10月23日

目次
  • 第1章 世界一流エンジニアは何が違うのだろう?―生産性の高さの秘密
  • 第2章 アメリカで見つけたマインドセット―日本にいるときには気づかなかったこと
  • 第3章 脳に余裕を生む情報整理・記憶術―ガチで才能のある同僚たちの極意
  • 第4章 コミュニケーションの極意―伝え方・聞き方・ディスカッション
  • 第5章 生産性を高めるチームビルディング―「サーバントリーダーシップ」「自己組織型チーム」へ
  • 第6章 仕事と人生の質を高める生活習慣術―「タイムボックス」制から身体づくりまで
  • 第7章 AI時代をどう生き残るか?―変化に即応する力と脱「批判文化」のすすめ

自己啓発的な

新しい文章力の教室(著者:唐木 元)

出版社:インプレス / 2015年08月07日

目次
  • 第1章 書く前に準備する
    • 01 良い文章とは完読される文章である
    • 02 完読される文章、完食されるラーメン
    • 03 文章は目に見えている部分だけではない
    • 04 必要なものは主眼と骨子
    • 05 悩まず書くために「プラモデル」を用意する
    • 06 書きたいことのパーツを揃える
    • 07 文章の主眼をセットする
    • 08 文章の骨子を立てる
    • 09 「構造シート」で整理する
    • 10 トレーニングで上達する
    • 11 話題は主眼に沿って取捨選択する
    • 12 基本の構成は「サビ頭」
    • 13 構造シートをもとに書き始める
    • 14 書けなくなったら
    • 15 作文の完成度はロングテール
  • 第2章 読み返して直す
    • 16 文章は意味・字面・語呂の3つの見地で読み返す
    • 17 推敲の第一歩は重複チェック
    • 18 文節レベルの重複を解消する
    • 19 文末のバリエーションに気を配る
    • 20 時制を混在させて推進力を出す
    • 21 文型や段落単位の重複に注意する
    • 22 主語と述語を意識しながら構造に還元して読む
    • 23 単文・重文・複文を理解して係り受けを整理する
    • 24 読点で区切る
    • 25 ひとつの文で欲張らない
    • 26 漢字とかなのバランスに注意する
    • 27 本来の意味から離れた漢字はかなに開く
    • 28 誤植の頻発ポイントでは事実確認を厳重に
    • 29 修正したら必ず冒頭から読み返す
  • 第3章 もっと明快に
    • 30 身も蓋もないくらいがちょうどいい
    • 31 余計な単語を削ってみる
    • 32 余計なことを言っていないか
    • 33 「が」や「で」で文章をだらだらとつなげない
    • 34 翻訳文体にご用心
    • 35 濁し言葉を取る勇気を
    • 36 伝聞表現は腰を弱くする
    • 37 複雑な係り受けは適度に分割する
    • 38 係り受けの距離を近づける
    • 39 修飾語句は大きく長い順に
    • 40 属性を問う主語は「こと」で受ける
    • 41 受動と能動をはっきり意識する
    • 42 おまとめ述語にご用心
    • 43 情報を列挙するときは語句のレベルを合わせる
    • 44 列挙の「と」「や」は最初に置く
    • 45 並列の「たり」は省略しない
    • 46 主語の「は」と「が」の使い分け
    • 47 時間にまつわる言葉は「点」か「線」かに留意する
  • 第4章 もっとスムーズに
    • 48 スピード感をコントロールする
    • 49 体言止めは読者に負担を与える
    • 50 行きすぎた名詞化はぶっきらぼうさを生む
    • 51 指示語は最小限に
    • 52 「今作」「当サイト」……指示語もどきにご用心
    • 53 一般性のない言葉を説明抜きに使わない
    • 54 わからないことはひと言でも書いてはいけない
    • 55 「企画」「作品」……ボンヤリワードにご用心
    • 56 「らしさ」「ならでは」には客観的根拠を添えること
    • 57 トートロジーは子供っぽさを呼び込む
    • 58 文頭一語目に続く読点は頭の悪そうな印象を与える
    • 59 約物の使いすぎは下品さのもと
    • 60 丸かっこの補足は慎み深さとともに
    • 61 可能表現に頼らない
    • 62 便利な「こと」「もの」は減らす努力を
    • 63 なんとなくのつなぎ言葉を使わない
  • 第5章 読んでもらう工夫
    • 64 具体的なエピソードを書く
    • 65 主観の押し付けは読者を白けさせる
    • 66 人物名で始めると目を引きやすい
    • 67 あえて閉じた言葉で読者との距離を縮める
    • 68 名詞と呼応する動詞を選ぶとこなれ感が出る
    • 69 数字を入れると具体性が増す
    • 70 タイトルは切り口の提示から
    • 71 記事単位の重複に注意する
    • 72 インタビューの基本は「同意」と「深掘り」
    • 73 感想文やレビューを書くには
    • 74 長い文章を書くには
    • 75 企画書を書くには
    • 76 レイアウトの考え方
    • 77 すべてのルールは絶対ではない
リーダーの仮面(著者:安藤 広大)

出版社:ダイヤモンド社 / 発行日:2020年11月25日

目次
  • はじめに なぜ、「リーダーの言動」が大事なのか?
    • 優秀な人ほど犯す2つの「失敗」
    • リーダータイプは才能なのか?
    • 「5つのポイント」以外はスルーしていい
    • その「ひと言」は後から効いてくるか
    • 「仮面」はあなたを守ってくれる
    • なぜ、会社は「変わらない」のか
  • 序章 リーダーの仮面をかぶるための準備 ── 「錯覚」の話
    • 感情的なリーダーが犯した失敗
    • いかなるときも「個人的な感情」を横に置く
    • 「5つのポイント」だけで別人のように変われる
    • 序章の実践 プレーヤーから頭を切り替える質問
  • 第1章 安心して信号を渡らせよ ── 「ルール」の思考法
    • 「自由にしていい」はストレスになる
    • ルールは「誰でも守れる」が絶対条件
    • 「リーダー失格」の行動とは何か
    • 「ダメなルール」はみんなを混乱させる
    • 第1章の実践 「姿勢のルール設定」をやってみる
  • 第2章 部下とは迷わず距離をとれ ── 「位置」の思考法
    • ピラミッド組織を再評価しよう
    • 位置によって「見える景色」が異なる
    • 「お願い」ではなく「言い切り」で任せる
    • ストレスのない「正しいほうれんそう」をしているか
    • 「これパワハラ?」問題を乗り越える
    • リモートによって「あいた距離」を維持しよう
    • 第2章の実践 「正しいほうれんそう」をやってみる
  • 第3章 大きなマンモスを狩りに行かせる ── 「利益」の思考法
    • 部下の「タテマエ」を本気にするな
    • どこまで行っても「組織あっての個人」
    • 「集団の利益」から「個人の利益」が生まれる
    • リーダーは「恐怖」の感情を逆に利用する
    • 事実だけを拾い、「言い訳の余地」をなくしていく
    • 健全なる「競争状態」をつくる
    • 第3章の実践 「言い訳スルー」をやってみる
  • 第4章 褒められて伸びるタイプを生み出すな ── 「結果」の思考法
    • 他者の「評価」からは誰も逃げられない
    • リーダーは「プロセス」を評価してはいけない
    • 「いい返事」に惑わされるな
    • リーダーがやるべき「点と点」の管理術
    • 「結果」を元に次の目標を詰める
    • 第4章の実践 「点と点の目標設定」をやってみる
  • 第5章 先頭の鳥が群れを引っ張っていく ── 「成長」の思考法
    • 「不足を埋める」から成長が生まれる
    • チームが成長するとき、必ず起きていること
    • 「変わった気になる」を徹底的になくしていく
    • 第5章の実践 「とにかく一度行動させる」をやってみる
  • 終章 リーダーの素顔
    • もっとも「人間」を追求したマネジメント
    • リーダーは「逃げ切ろう」とするな
数値化の鬼(著者:安藤 広大)

出版社:ダイヤモンド社 / 発行日:2022年03月02日

目次
  • はじめに ── いったん数字で考える思考法
    • 「数字以外のこと」は最後の最後に
    • いかなるときも、いったん「数字」で考える
    • 「安心」のための数値化ではない
    • お互いの「誤解」をなくしてくれるもの
    • 数字は「感情」を切り離してくれる
    • 「言葉は過剰」「数字は不足」の世の中
    • 数字のあとに「自分らしさ」が出てくる
    • 数字はとことん「客観的」にしてくれる
  • 序章 「数値化の鬼」とは何か
    • 数字の「ネガティブ」を取り除こう
    • 日頃から「数字のある会話」をしているだろうか
    • 数値化ができる人は「失敗」が当たり前になる
    • 「仕事ができる人」になる5つのステップとは
    • 序章の実践 「数値化」をクセづける
  • 第1章 数を打つところから始まる ── 「行動量」の話
    • 「仕事ができる人」の共通認識とは何か
    • 数値化とは「PDCA」を回すことである
    • 「数をこなす」ためのすぐやる仕組み
    • 「D」に素早く移れるマネジメント環境を整える
    • 目標は「いつでも思い出せる数字」でないと意味がない
    • 1章の実践 「PDCA」をやってみる
  • 第2章 あなたの動きを止めるもの ── 「確率」の話
    • 「伸び悩む人」に共通する考え方
    • 「確率のワナ」に注意しよう
    • 目標の「%」には気をつける
    • 「働かないおじさん」を生まないための仕組みづくり
    • 「平均のウソ」にもダマされてはいけない
    • 2章の実践 「数字のウソ」を見抜く
  • 第3章 やるべきこと、やらなくてもいいこと ── 「変数」の話
    • 変えられるもの」と「変えられないもの」を見分ける
    • プロセスの「型」を身につける
    • いち早く「変数」に気づけるプレーヤーになる
    • 「変数じゃないもの」に固執しない
    • 他人の成功論はすべて「変数」ではなく「仮説」
    • 「変数」が「変数」でなくなるとき
    • 3章の実践 「変数」を見つける
  • 第4章 過去の成功を捨て続ける ── 「真の変数」の話
    • 「変数」は放っておくとどんどん増えていく
    • 変数の中から「1つ」に絞り込む
    • できるマネジャーは「変数」を減らす
    • 「社内の変数」を減らしているか
    • とにかく迷ったら「変数」で考える
    • 4章の実践 「変数」を減らす
  • 第5章 遠くの自分から逆算する ── 「長い期間」の話
    • 「短期的」と「長期的」の2つの視点
    • 短期的には損だけど、長期的には得なこと
    • 「短期から長期、長期から短期」へ逆算する
    • 長期的に考えざるを得ない「環境づくり」
    • 5章の実践 「長い期間」で考える
  • 終章 数値化の限界
    • 「数字がすべてではない」のステージに行くために
とにかく仕組み化(著者:安藤 広大)

出版社:ダイヤモンド社 / 発行日:2023年05月31日

目次
  • はじめに 人の上に立ち続けるための思考法
    • 「人が動くとき」何が起こっているのか
    • 「歯車」という言葉への誤解
    • 「組織あっての個人」でしかない
    • 「古い仕組み」を「新しい仕組み」で壊す
    • 「マニュアル」をナメていないだろうか
    • 「貢献できる人」を生み出す仕組み
    • 「替えの利かない人」になりたい欲望
    • 「未来永劫、続いてほしい」という思い
    • いかなるときも「性弱説」を前提に
    • 「組織を変えていく人」になってください
    • 「愛着」を手放し、「孤独」を引き受ける
  • 序章 なぜ「とにかく仕組み化」なのか
    • 「個人」を責めるな、「仕組み」を責めよう
    • 「仕組み化がないチーム」のたった1つの特徴
    • 「属人化」ほど怖いものはない
    • 「とにかく仕組み化」のための5つの考え方
    • 序章の復習 とにかく「仕組み」へと頭を切り替える質問
  • 第1章 正しく線を引く ──「責任と権限」
    • 「自分で決めること」をやめた人たち
    • 「線を引く」をやる。線は書き換えていい
    • 仕組みに立ち返れば、どんどん「新しいこと」ができる
    • 「責任」によって、人はリーダーになっていく
    • 「能力」よりも「機会」が先にある
    • 1章の復習 「責任と権限」を手に入れるための質問
  • 第2章 本当の意味での怖い人 ──「危機感」
    • 「ついていきたい人」の本質とは何か
    • 間違った「怖さ」と間違った「優しさ」
    • 「危機感」を生み出す仕組みをつくる
    • 「ゆるさ」は新しいブラック企業だ
    • 「危機感」の先に待っているもの
    • 2章の復習 「危機感」をうまく利用するための質問
  • 第3章 負けを認められること ──「比較と平等」
    • どうせ、みんな「心の中」で比較し合っている
    • 「全体の利益」を優先させることの意味
    • 「差があること」はメリットでしかない
    • 「降格の人事」が本当に求めていること
    • 「平等」を維持するための仕組みをつくる
    • 3章の復習 「比較と平等」に気をつけるための質問
  • 第4章 神の見えざる手 ──「企業理念」
    • 「どこに向かっているか」を押さえておく
    • 目標を掲げることの「恥ずかしさ」
    • 「神の見えざる手」で働いている
    • 自分の会社の「企業理念」を言えるか
    • 「理念なき会社」とはどんな存在なのか
    • 「成し遂げたい思い」は仕組み化できない
    • 4章の復習 「企業理念」を再認識するための質問
  • 第5章 より大きなことを成す ──「進行感」
    • 先に「企業理念」の話をしなかった理由
    • 「会社が変わる」とはどういうことを指すのか
    • 「個人の時代」へのアンチテーゼ
    • 「進行感」という感覚を持ってみる
    • 「ここに残りたい」と思われる会社にするしかない
    • 5章の復習 「進行感」を浸透させるための質問
  • 終章 「仕組み化」のない別世界
    • 「人間に戻れる場所」を持てばいい
    • 「属人化」の犠牲者を生まないために
    • 「かけがえのない歯車」になる、あなたへ
    • どうか「頼られる存在」になってください
パーフェクトな意思決定(著者:安藤 広大)

出版社:ダイヤモンド社 / 発行日:2024年09月25日

目次
  • はじめに ──「決める人」がすべてを手に入れる
    • その「瞬間」を捉えよう
    • 前に進む人、立ち止まる人
    • 「正解」は1つではない
    • その都度、考える必要がある
    • 「小さな修正」が大きな差を生む
    • 「決めないこと」の誘惑
    • リスクを考えすぎると何も言えなくなる
    • 「意思を持つ」ということは「ちゃんと生きること」
    • 「誤解」や「錯覚」を取り除く思考
  • 序章 なぜ、「決めること」は恐いのか? ──「賛否両論」というマインドセット
    • 「自分で決める」ということ
    • 「後出しジャンケン」をする人たち
    • 「検討します」は全裸より恥ずかしい
    • 「意思決定」をシミュレーションしよう
    • 選択肢を残すときの「安心感」
  • 第1章 「正しい意思決定」という勘違い ── 華麗なる「修正」
    • 「意思」を持つか、「反応」するだけか
    • 「朝令暮改」への心のブレーキ
    • 「いったん結論を出す」というクセ
    • 自分にとって「都合の悪いこと」のトリセツ
    • 「修正する」を歓迎する
    • 意思決定のサイクルを回す
    • 意思決定の「3つの箱」
    • つねに「未来」から見る
    • 1章の実践 「華麗なる修正」をやってみる
  • 第2章 「よく考える」の正体 ── 問題の「解像度」
    • 問題の解像度を上げてみる
    • 「デメリット」という魔物
    • 「よく考える」の中身
    • 「会議」の本当の必要性
    • 「反対意見」を言わなければいけない責任
    • 手段としての「感情コントロール」
    • 2章の実践 問題の「解像度」を上げてみる
  • 第3章 自分が決めない「聖域」 ── 情報の「ノイズ」
    • 何が正しくて、何が正しくないのか
    • 日本語の「曖昧さ」に注意する
    • 「因果関係」を間違えない
    • 情報の「ノイズ」を減らす
    • 「一次情報」の取り扱いについて
    • 自分が決めるべきではない「聖域」がある
    • 「決めない」という意思決定
    • 「権限を与えない人」は罪
    • 3章の実践 情報の「ノイズ」を排除する
  • 第4章 「勇気」としか言いようのないもの ──「不確実性」再び
    • 頭のいい人が正しいとは限らない
    • 「意思決定の後に正しくする」という順番
    • 「勘です」と言ってしまえばいい
    • 「断る」というときに必要な勇気
    • 「責められる人」にこそ価値がある
    • もう一つの「勇気」について
    • 「勇気」のハードルを下げる方法
    • そもそも「意思決定」をするために働いている
    • 4章の実践 「不確実性」に向き合う
  • 終章 「決めない者」の末路
    • 誰かに決めてもらった人生
    • いつだって「後悔しない選択」をするしかない
    • 「なんとなく」を1つずつなくせ
離職防止の教科書(著者:藤田 耕司)

出版社:東洋経済新報社 / 発行日:2024年08月21日

目次
  • 第1章 離職を決意する4つの心理的要因
    • 離職の防止が死活問題となる企業が増える
    • 人間心理に基づいて部下の離職を防ぐ
    • 離職者を出さない上司に共通すること
  • 第2章 生存欲求――労働環境を整え、離職を防ぐ
    • 「部下の離職は給料のせい」と言う上司の意図
    • 若手社員は残業と休日出勤をとにかく嫌う
    • 部下は上司の姿に未来の自分を投影する
  • 第3章 関係欲求――人間関係による離職を防ぐ
    • 人間関係が原因の離職は本音を言わない
    • 自分の当たりのきつさに気づかない上司
    • 部下から嫌われないための叱り方の戦略
    • 怒りが湧きやすい4つの状況と対応法
    • 人手不足の時代に必須となるスキル
    • 部下が上司に抱く最も多い不満とは
    • 「部下の褒めるところ」が見当たらない理由
    • わからないことを聞けない新人の心理
    • パワハラ上司と迷惑顧客から部下を守る
    • 叱っても部下が離れない上司の特徴
  • 第4章 成長欲求――意欲の高い部下の離職を防ぐ
    • 好待遇を捨ててまで成長を求める部下たち
    • 仕事内容に納得してもらう4つの対応
    • 現状は満足でも未来に絶望すると辞める
    • 「仕事が面白くない」と感じる5つの要素
    • 任せる仕事にビジョンと役割を伴わせる
    • 成長の機会を提供する成長目標の設定
    • 部下の成熟度に応じた4つの関わり方
    • 上司に感じる恩と絆が離職を思い止まらせる
  • 第5章 公欲――やりがいを持たせ離職を防ぐ
    • 人に喜んでもらいたいという本能的欲求
    • 何のために仕事をするのかを伝える意味
    • 部下に感謝できない上司の特徴
  • 第6章 年代別、意欲・能力別の離職の要因と対応
    • 年代と意欲・能力によって異なる離職の要因
    • 新人若手・上位【ホープ】
    • 新人若手・中位【ルーキー】
    • 新人若手・下位【問題児】
    • 中間世代・上位【エリート】
    • 中間世代・中位【現場牽引者】
    • 中間世代・下位【未開花者】
    • 年長世代・上位【経営幹部】
    • 年長世代・中位【中間管理職】
    • 年長世代・下位【窓際社員】
  • 第7章 離職を防ぐため会社に求められる対応
    • 部下の離職を防ぐために必要な評価制度
    • 商品の価格と離職率には相関関係がある
  • 第8章 部下と向き合う前に自分と向き合う
    • 「読んでも実践しない」を克服する方法
    • 部下と本気で向き合うことで上司は成長する

その他

海の教科書(著者:柏野 祐二)

出版社:講談社 / 発行日:2016年06月21日

目次
  • 第1章 海洋、その面白さと重要性
  • 第2章 海を調べる
  • 第3章 海水の性質
  • 第4章 海の姿が明らかになってきた
  • 第5章 海洋大循環はなぜ起こるか
  • 第6章 海の波の不思議
  • 第7章 朝汐とそのメカニズム
  • 第8章 エルニーニョ現象とその仲間たち
  • 第9章 凍る海
目次