0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

設計の本を何冊読んでも分からなかった自分が、やっと「設計」を理解できた話

0
Last updated at Posted at 2025-12-25

はじめに

  • プログラミングの基礎は勉強した
  • 『リーダブルコード』を読んだ
  • 『良いコード/悪いコードで学ぶ設計入門(ミノ駆動本)』も読んだ

それでも、

「で、結局どう設計すればいいの?」

となっている人、いませんか。
少なくとも僕は、ずっとそうでした。

この記事は、

  • 設計の本を読んでも腹落ちしない
  • クラス図を書いてもコードに落とせない
  • リポジトリ?ドメイン?で毎回ググって終わる

そんな自分が、ようやく設計の全体像を掴めた学習ルートの話です。


なぜ設計が分からなかったのか

専門学校で学んだこと

専門学校でプログラミングを学びましたが、

  • 要件定義 → 設計 → 実装

一気通貫でやる授業がなかったです。

  • アプリ開発:いきなりコーディング
  • 設計の授業:設計図を書いて終わり

結果、「設計がコードにどうつながるか」が分からないままでした。


会社で見てきたコード

新卒で入ったのはシステム開発会社ではなくメーカーで、業務アプリを担当していました。

そこには、

  • 共通機能をまとめたクラス
  • 共通変数をまとめたインクルードファイル

はありましたが、

「なぜこのクラスが存在するのか」
「この責務はどの要件から来ているのか」

を説明できるコードは、正直ほとんど見たことがありませんでした。


何が分からなかったのか

当時の自分は、

  • クラスはなんとなく区切るもの
  • 共通化できそうならまとめるもの

くらいの理解でした。

だから、

  • 要件とコードの関係
  • 設計図と実装のつながり

これが一切説明できなかったんだと思います。


転機:設計の「全体像」が見えた

① 要件定義〜クラス図までをリアルタイムでやる設計講座

この講座では、要件定義からクラス図までを実演してくれます。

特に衝撃だったのが、

「要件とコード(クラス)が1:1で対応する」

という考え方でした。

これを聞いた瞬間、

  • なぜ自分のコードは説明できなかったのか
  • なぜ設計がフワッとしていたのか

全部つながりました。

「クラスを作る」ではなく、
**「要件をコードに翻訳する」**のが設計なんだ、と。


② 設計図をコードに落とすところだけを丁寧に説明した本

講座だけだと、

「で、リポジトリってどう書くの?」
「ドメイン層って何を書くの?」

が分かりませんでした。

ネットで調べるとコードは出てきますが、
前提が分からず理解できない

この本は、

  • 設計図を
  • 下から(ボトムアップで)
  • 実際のコードに落とす

流れで書かれていて、処理が追いやすかったです。

「こういう理由でこのクラスがあるのか」と、初めて納得できました。


③ 「動物クラス」から卒業できたオブジェクト指向の記事

オブジェクト指向の理解も、

動物クラスの鳴くメソッド
犬はワン、猫はニャー

で止まっていました。

この記事では、

  • 変数の抽象化
  • 関数の抽象化
  • クラスの抽象化
  • 抽象化の実践

と段階的に説明されていて、
**「実際のコードでどう使われるか」**が分かりました。

ようやく、

オブジェクト指向=現場で使うための考え方

だと理解できました。


まとめ:設計は「センス」じゃなかった

今振り返ると、設計が分からなかった理由はシンプルで、

  • 知識が足りなかったわけでも
  • 頭が悪かったわけでもなく

**「学ぶ順番が合っていなかった」**だけでした。

もし今、

  • 設計の本を読んでもピンとこない
  • クラス図とコードがつながらない

なら、一度

要件 → 設計 → 実装

一気通貫で見る学習をしてみると、世界が変わるかもしれません。

少なくとも自分は、やっと「設計ってこういうことか」と思えるようになりました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?