この本について
ソフトウェア技術者としてキャリアを開始した日のことを、今でもはっきりと思い出します。その日の私は、学生から社会人になることへの不安でいっぱいながら、本物のソフトウェア開発者になることに、とても興奮していました。高校生の時、地元の小さな会社のソフトウェアを作りながら「本物のプログラマー」になることを夢見ていた私が、国内有数のソフトウェア開発会社で、いよいよプロとしてコードを書く日がやってきたのです。
最初の数日は会社の決まり事の説明でした。社内メールのアカウントを設定し、勤怠管理システムの使い方を教えてもらいました。その後でようやく技術的な話になりました。すなわち、どういう設計スタイルで開発し、どんなコーディング規約でプログラミングしているかの説明です。コードを見ながら「こうやって全体をレイヤー構造にしてしっかりと設計することをたいせつにしているんだ」という話がありました。続いてそれぞれのレイヤーの定義を、データアクセス層、業務ロジック層、プレゼンテーション層の順番で教えてもらいました。データアクセス層で使っていたのはSQL Server 2000とADO.NETでした。プレゼンテーション層はデスクトップアプリケーションがWinForms、WebアプリケーションはASP.NET WebFormsを使っていました。説明の内容は、データアクセス層とプレゼンテーション層の話ばかりでした。私は「いつになったら業務ロジック層の話になるんだ?」と思い、質問をしてみました。
「ところで業務ロジック層はどうなっているんですか?」「そいつは簡単だ。ここに業務ロジックを書くだけさ」「ええっと、そもそも業務ロジックってどういう意味ですか?」「ああ業務ロジックっていうのはループ処理とif-else文のことさ。要求仕様書どおりにコードを書けばよい」 ...
Get ドメイン駆動設計をはじめよう ―ソフトウェアの実装と事業戦略を結びつける実践技法 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.