SlideShare a Scribd company logo
1 of 15
山口 博史 
クラスデザインで気をつけたいこと
クラスデザインとは
2
クラスデザイン = クラス設計
    こんなクラスはイヤだ
こんなクラスはイヤだ
4
同じ処理がいくつも書いてある
こんなクラスはイヤだ
5
StringUtil なのに足し算のメソッドがあ
る
こんなクラスはイヤだ
6
Public メソッドが 50 個
こんなクラスはイヤだ
7
似たような処理なのにコピーして
同じものを作らないと作れない
こんなクラスはイヤだ
8
新しい検索条件を加えるのに、
すべての条件を再テスト
気をつけたいこと
9
1. 共通化
2. 役割の明確化
3. 汎用性
1.共通化
10
同じ処理は2つ書かない!
2.役割の明確化
11
どのような処理がこのクラスの役
割か
3.汎用性
12
どんな処理が追加されるかの想像
事例紹介
13
こんな感じでクラス設計してます
どんなクラスが理想か
14
理想は、誰でも読みやすく、
保守がかんたん!
15
ご成長ありがとうございました

More Related Content

More from yumi_chappy

理想の教育、上から見るか?下から見るか?
理想の教育、上から見るか?下から見るか?理想の教育、上から見るか?下から見るか?
理想の教育、上から見るか?下から見るか?yumi_chappy
 
JAWS DAYS Report
JAWS DAYS ReportJAWS DAYS Report
JAWS DAYS Reportyumi_chappy
 
資料ビジュアル化のススメ
資料ビジュアル化のススメ資料ビジュアル化のススメ
資料ビジュアル化のススメyumi_chappy
 
美ら海水族館から考えるユーザー心理
美ら海水族館から考えるユーザー心理美ら海水族館から考えるユーザー心理
美ら海水族館から考えるユーザー心理yumi_chappy
 
IoT製品の魅力
IoT製品の魅力IoT製品の魅力
IoT製品の魅力yumi_chappy
 
新しい家族を紹介します~1台と1匹~
新しい家族を紹介します~1台と1匹~新しい家族を紹介します~1台と1匹~
新しい家族を紹介します~1台と1匹~yumi_chappy
 
Windows10でword2vecを使ってみた
Windows10でword2vecを使ってみたWindows10でword2vecを使ってみた
Windows10でword2vecを使ってみたyumi_chappy
 
色で伝えるイメージ
色で伝えるイメージ色で伝えるイメージ
色で伝えるイメージyumi_chappy
 
バランスを整える
バランスを整えるバランスを整える
バランスを整えるyumi_chappy
 
脆弱性のふさぎ方
脆弱性のふさぎ方脆弱性のふさぎ方
脆弱性のふさぎ方yumi_chappy
 

More from yumi_chappy (20)

Why
WhyWhy
Why
 
Itelt vol7 7
Itelt vol7 7Itelt vol7 7
Itelt vol7 7
 
Itelt vol7 1
Itelt vol7 1Itelt vol7 1
Itelt vol7 1
 
Itelt vol7 9
Itelt vol7 9Itelt vol7 9
Itelt vol7 9
 
Itelt vol7 8
Itelt vol7 8Itelt vol7 8
Itelt vol7 8
 
Itelt vol7 6
Itelt vol7 6Itelt vol7 6
Itelt vol7 6
 
Itelt vol7 2
Itelt vol7 2Itelt vol7 2
Itelt vol7 2
 
Itelt vol7 5
Itelt vol7 5Itelt vol7 5
Itelt vol7 5
 
Itelt vol7 4
Itelt vol7 4Itelt vol7 4
Itelt vol7 4
 
Itelt vol7 3
Itelt vol7 3Itelt vol7 3
Itelt vol7 3
 
理想の教育、上から見るか?下から見るか?
理想の教育、上から見るか?下から見るか?理想の教育、上から見るか?下から見るか?
理想の教育、上から見るか?下から見るか?
 
JAWS DAYS Report
JAWS DAYS ReportJAWS DAYS Report
JAWS DAYS Report
 
資料ビジュアル化のススメ
資料ビジュアル化のススメ資料ビジュアル化のススメ
資料ビジュアル化のススメ
 
美ら海水族館から考えるユーザー心理
美ら海水族館から考えるユーザー心理美ら海水族館から考えるユーザー心理
美ら海水族館から考えるユーザー心理
 
IoT製品の魅力
IoT製品の魅力IoT製品の魅力
IoT製品の魅力
 
新しい家族を紹介します~1台と1匹~
新しい家族を紹介します~1台と1匹~新しい家族を紹介します~1台と1匹~
新しい家族を紹介します~1台と1匹~
 
Windows10でword2vecを使ってみた
Windows10でword2vecを使ってみたWindows10でword2vecを使ってみた
Windows10でword2vecを使ってみた
 
色で伝えるイメージ
色で伝えるイメージ色で伝えるイメージ
色で伝えるイメージ
 
バランスを整える
バランスを整えるバランスを整える
バランスを整える
 
脆弱性のふさぎ方
脆弱性のふさぎ方脆弱性のふさぎ方
脆弱性のふさぎ方