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 7. Architecture: Bringing Order to Chaos、DESIGN PUZZLE(No. 4523)を解いてみる。
その他参考書籍
DESIGN PUZZLE(No. 4523)
コード(BBEdit, Emacs)
Unit.java
public class Unit {
private Weapon weapon;
public Unit(Weapon weapon){
this.weapon = weapon;
}
}
Tank.java
public class Tank extends Unit{
private int attack;
private int experience;
private double defense;
public Tank(Weapon weapon, int attack, int experience, double defense){
super(weapon);
this.attack = attack;
this.experience = experience;
this.defense = defense;
}
}
Soldier.java
public class Soldier extends Unit {
private String name;
public Soldier(Weapon weapon, String name){
super(weapon);
this.name = name;
}
}
Airplane.java
public class Airplane extends Unit{
private int speed;
private String model;
public Airplane(Weapon gun, int speed, String model){
super(gun);
this.speed = speed;
this.model = model;
}
}
Weapon.java
public enum Weapon{
Bazooka,
Gatling
}
入出力結果(Terminal)
$ javac Unit.java Tank.java Soldier.java Airplane.java $
0 コメント:
コメントを投稿