Head First Object-Oriented Analysis and Design
A Brain Friendly Guide to OOA&D
(O'Reilly Media)
Brett McLaughlin (著), Gary Pollice (著)
David West (著)
邦訳
Head Firstオブジェクト指向分析設計
頭とからだで覚えるオブジェクト指向の基本
長瀬 嘉秀 (編集), 永田 渉 (編集)
株式会社テクノロジックアート (翻訳)
開発環境
- OS X Yosemite - Apple (OS)
- Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
- Java (プログラミング言語)
- javac (コンパイラ)
- java (application launcher)
Head First Object-Oriented Analysis and Design: A Brain Friendly Guide to OOA&D (Brett McLaughlin (著)、 Gary Pollice (著)、 David West (著) 、 O'Reilly Media)のChapter 5. Good Design = Flexible Software: Give Your Software a 30-minute Workout、CODE MAGNETS(No. 3245)を解いてみる。
その他参考書籍
CODE MAGNETS(No. 3245)
コード(BBEdit, Emacs)
InstrumentSpec.java
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
public class InstrumentSpec {
private Map<String, Object> properties;
public InstrumentSpec(Map<String, Object> properties) {
if (properties == null) {
this.properties = new HashMap<String, Object>();
} else {
this.properties = new HashMap<String, Object>(properties);
}
}
public Object getProperty(String propertyName) {
return properties.get(propertyName);
}
public Map getProperties() {
return properties;
}
public boolean matches(InstrumentSpec otherSpec) {
for (Iterator i = otherSpec.getProperties().keySet().iterator();
i.hasNext();) {
String propertyName = (String)i.next();
if (!properties.get(propertyName)
.equals(otherSpec.getProperty(propertyName))) {
return false;
}
}
return true;
}
}
入出力結果(Terminal)
$ javac -Xlint:unchecked InstrumentSpec.java $
0 コメント:
コメントを投稿