├── .gitattributes ├── README.md ├── 第一章設計模式 ├── DecoyDuck.class ├── DecoyDuck.java ├── Duck.class ├── Duck.java ├── FlyBehavior.class ├── FlyBehavior.java ├── FlyNoWay.class ├── FlyNoWay.java ├── FlyRocketPowered.class ├── FlyRocketPowered.java ├── FlyWithWings.class ├── FlyWithWings.java ├── MallardDuck.class ├── MallardDuck.java ├── MiniDuckSimulator.class ├── MiniDuckSimulator.java ├── ModelDuck.class ├── ModelDuck.java ├── MuteQuack.class ├── MuteQuack.java ├── Quack.class ├── Quack.java ├── QuackBehavior.class ├── QuackBehavior.java ├── RubberDuck.class ├── RubberDuck.java ├── Squeak.class ├── Squeak.java └── 介紹設計模式-歡迎到來設計模式.txt ├── 第七章轉接器模式與表象模式 ├── adapter │ ├── ducks │ │ ├── Duck.java │ │ ├── DuckAdapter.java │ │ ├── DuckTestDrive.java │ │ ├── MallardDuck.java │ │ ├── Turkey.java │ │ ├── TurkeyAdapter.java │ │ ├── TurkeyTestDrive.java │ │ ├── WildTurkey.java │ │ └── challenge │ │ │ ├── Drone.java │ │ │ ├── DroneAdapter.java │ │ │ └── SuperDrone.java │ └── iterenum │ │ ├── EI.java │ │ ├── EnumerationIterator.java │ │ ├── EnumerationIteratorTestDrive.java │ │ ├── IteratorEnumeration.java │ │ └── IteratorEnumerationTestDrive.java ├── ducks │ ├── Duck.java │ ├── DuckAdapter.java │ ├── DuckTestDrive.java │ ├── MallardDuck.java │ ├── Turkey.java │ ├── TurkeyAdapter.java │ ├── TurkeyTestDrive.java │ └── WildTurkey.java ├── facade │ └── hometheater │ │ ├── Amplifier.java │ │ ├── CdPlayer.java │ │ ├── DvdPlayer.java │ │ ├── HomeTheaterFacade.java │ │ ├── HomeTheaterTestDrive.java │ │ ├── PopcornPopper.java │ │ ├── Projector.java │ │ ├── Screen.java │ │ ├── TheaterLights.java │ │ └── Tuner.java └── 轉接器模式與表象模式-隨遇而安.txt ├── 第三章裝飾者模式 ├── 咖啡 │ ├── Beverage$Size.class │ ├── Beverage.class │ ├── Beverage.java │ ├── CondimentDecorator.class │ ├── CondimentDecorator.java │ ├── DarkRoast.class │ ├── DarkRoast.java │ ├── Decaf.java │ ├── Espresso.class │ ├── Espresso.java │ ├── HouseBlend.class │ ├── HouseBlend.java │ ├── Milk.java │ ├── Mocha.class │ ├── Mocha.java │ ├── Soy.class │ ├── Soy.java │ ├── StarbuzzCoffee.class │ ├── StarbuzzCoffee.java │ ├── Whip.class │ └── Whip.java ├── 裝飾者模式-裝飾物件.txt └── 輸入流 │ ├── InputTest.class │ ├── InputTest.java │ ├── LowerCaseInputStream.class │ ├── LowerCaseInputStream.java │ └── test.txt ├── 第九章反覆器與合成模式 ├── collections │ ├── Collections.java │ ├── iterator │ │ ├── Cafe.java │ │ ├── DinerMenu.java │ │ ├── DinerMenuIterator.java │ │ ├── Iterator.java │ │ ├── Menu.java │ │ ├── PancakeHouseMenu.java │ │ └── PancakeHouseMenuIterator.java │ └── iterator_builtin │ │ ├── Cafe.java │ │ ├── DinerMenu.java │ │ ├── DinerMenuIterator.java │ │ ├── Menu.java │ │ └── PancakeHouseMenu.java ├── composite │ ├── menu │ │ ├── Menu.java │ │ ├── MenuComponent.java │ │ ├── MenuItem.java │ │ ├── MenuTestDrive.java │ │ └── Waitress.java │ └── menuiterator │ │ ├── CompositeIterator.java │ │ ├── Menu.java │ │ ├── MenuComponent.java │ │ ├── MenuItem.java │ │ ├── MenuTestDrive.java │ │ ├── NullIterator.java │ │ └── Waitress.java ├── iterator │ ├── dinermerger │ │ ├── AlternatingDinerMenuIterator.java │ │ ├── ArrayIterator.java │ │ ├── ArrayListIterator.java │ │ ├── DinerMenu.java │ │ ├── DinerMenuIterator.java │ │ ├── Iterator.java │ │ ├── Menu.java │ │ ├── MenuItem.java │ │ ├── MenuTestDrive.java │ │ ├── PancakeHouseMenu.java │ │ ├── PancakeHouseMenuIterator.java │ │ └── Waitress.java │ ├── dinermergercafe │ │ ├── AlternatingDinerMenuIterator.java │ │ ├── CafeMenu.java │ │ ├── DinerMenu.java │ │ ├── DinerMenuIterator.java │ │ ├── Menu.java │ │ ├── MenuItem.java │ │ ├── MenuTestDrive.java │ │ ├── PancakeHouseMenu.java │ │ └── Waitress.java │ ├── dinermergeri │ │ ├── AlternatingDinerMenuIterator.java │ │ ├── DinerMenu.java │ │ ├── DinerMenuIterator.java │ │ ├── Menu.java │ │ ├── MenuItem.java │ │ ├── MenuTestDrive.java │ │ ├── PancakeHouseMenu.java │ │ └── Waitress.java │ ├── implicit │ │ ├── DinerMenu.java │ │ ├── DinerMenuIterator.java │ │ ├── Menu.java │ │ ├── MenuItem.java │ │ ├── MenuTestDrive.java │ │ ├── PancakeHouseMenu.java │ │ └── Waitress.java │ └── transition │ │ ├── DinerMenu.java │ │ ├── DinerMenuIterator.java │ │ ├── Menu.java │ │ ├── MenuItem.java │ │ ├── MenuTestDrive.java │ │ ├── PancakeHouseMenu.java │ │ └── Waitress.java └── 反覆器與合成模式-管理良好的聚合.txt ├── 第二章觀察者模式 ├── Swing 介面 │ ├── SwingObserverExample.class │ └── SwingObserverExample.java ├── 天氣觀測 │ ├── CurrentConditionsDisplay.class │ ├── CurrentConditionsDisplay.java │ ├── DisplayElement.class │ ├── DisplayElement.java │ ├── ForecastDisplay.class │ ├── ForecastDisplay.java │ ├── HeatIndexDisplay.class │ ├── HeatIndexDisplay.java │ ├── Observer.class │ ├── Observer.java │ ├── StatisticsDisplay.class │ ├── StatisticsDisplay.java │ ├── Subject.class │ ├── Subject.java │ ├── WeatherData.class │ ├── WeatherData.java │ ├── WeatherStation.class │ ├── WeatherStation.java │ ├── WeatherStationHeatIndex.class │ └── WeatherStationHeatIndex.java └── 觀察者模式.txt ├── 第五章獨體模式 ├── singleton │ ├── chocolate │ │ ├── ChocolateBoiler.java │ │ └── ChocolateController.java │ ├── classic │ │ ├── Singleton.java │ │ └── SingletonClient.java │ ├── dcl │ │ ├── Singleton.java │ │ └── SingletonClient.java │ ├── stat │ │ ├── Singleton.java │ │ └── SingletonClient.java │ ├── subclass │ │ ├── CoolerSingleton.java │ │ ├── HotterSingleton.java │ │ ├── Singleton.java │ │ └── SingletonTestDrive.java │ └── threadsafe │ │ ├── Singleton.java │ │ └── SingletonClient.java └── 獨體模式-獨一無二的物件.txt ├── 第八章封裝演算法 ├── templatemethod │ ├── applet │ │ ├── AppletSource.txt │ │ └── MyApplet.java │ ├── barista │ │ ├── BeverageTestDrive.java │ │ ├── CaffeineBeverage.java │ │ ├── CaffeineBeverageWithHook.java │ │ ├── Coffee.java │ │ ├── CoffeeWithHook.java │ │ ├── Tea.java │ │ └── TeaWithHook.java │ ├── frame │ │ └── MyFrame.java │ ├── simplebarista │ │ ├── Barista.java │ │ ├── Coffee.java │ │ └── Tea.java │ └── sort │ │ ├── Duck.java │ │ └── DuckSortTestDrive.java └── 樣板訪法模式-封裝演算法.txt ├── 第六章命令模式 ├── command │ ├── party │ │ ├── CeilingFan.java │ │ ├── CeilingFanHighCommand.java │ │ ├── CeilingFanMediumCommand.java │ │ ├── CeilingFanOffCommand.java │ │ ├── Command.java │ │ ├── Hottub.java │ │ ├── HottubOffCommand.java │ │ ├── HottubOnCommand.java │ │ ├── Light.java │ │ ├── LightOffCommand.java │ │ ├── LightOnCommand.java │ │ ├── LivingroomLightOffCommand.java │ │ ├── LivingroomLightOnCommand.java │ │ ├── MacroCommand.java │ │ ├── NoCommand.java │ │ ├── RemoteControl.java │ │ ├── RemoteLoader.java │ │ ├── Stereo.java │ │ ├── StereoOffCommand.java │ │ ├── StereoOnCommand.java │ │ ├── StereoOnWithCDCommand.java │ │ ├── TV.java │ │ ├── TVOffCommand.java │ │ └── TVOnCommand.java │ ├── remote │ │ ├── CeilingFan.java │ │ ├── CeilingFanOffCommand.java │ │ ├── CeilingFanOnCommand.java │ │ ├── Command.java │ │ ├── GarageDoor.java │ │ ├── GarageDoorDownCommand.java │ │ ├── GarageDoorUpCommand.java │ │ ├── Hottub.java │ │ ├── HottubOffCommand.java │ │ ├── HottubOnCommand.java │ │ ├── Light.java │ │ ├── LightOffCommand.java │ │ ├── LightOnCommand.java │ │ ├── LivingroomLightOffCommand.java │ │ ├── LivingroomLightOnCommand.java │ │ ├── NoCommand.java │ │ ├── RemoteControl.java │ │ ├── RemoteLoader.java │ │ ├── Stereo.java │ │ ├── StereoOffCommand.java │ │ ├── StereoOnWithCDCommand.java │ │ └── TV.java │ ├── remoteWL │ │ ├── CeilingFan.java │ │ ├── Command.java │ │ ├── GarageDoor.java │ │ ├── Hottub.java │ │ ├── Light.java │ │ ├── RemoteControl.java │ │ ├── RemoteLoader.java │ │ ├── Stereo.java │ │ └── TV.java │ ├── simpleremote │ │ ├── Command.java │ │ ├── GarageDoor.java │ │ ├── GarageDoorOpenCommand.java │ │ ├── Light.java │ │ ├── LightOffCommand.java │ │ ├── LightOnCommand.java │ │ ├── RemoteControlTest.java │ │ └── SimpleRemoteControl.java │ ├── simpleremoteWL │ │ ├── Command.java │ │ ├── GarageDoor.java │ │ ├── Light.java │ │ ├── RemoteControlTest.java │ │ └── SimpleRemoteControl.java │ └── undo │ │ ├── CeilingFan.java │ │ ├── CeilingFanHighCommand.java │ │ ├── CeilingFanLowCommand.java │ │ ├── CeilingFanMediumCommand.java │ │ ├── CeilingFanOffCommand.java │ │ ├── Command.java │ │ ├── DimmerLightOffCommand.java │ │ ├── DimmerLightOnCommand.java │ │ ├── Light.java │ │ ├── LightOffCommand.java │ │ ├── LightOnCommand.java │ │ ├── NoCommand.java │ │ ├── RemoteControlWithUndo.java │ │ └── RemoteLoader.java └── 命令模式-封裝調用.txt ├── 第十一章代理人模式 ├── proxy │ ├── gumball │ │ ├── GumballMachine.java │ │ ├── GumballMachineRemote.java │ │ ├── GumballMachineTestDrive.java │ │ ├── GumballMonitor.java │ │ ├── GumballMonitorTestDrive.java │ │ ├── HasQuarterState.java │ │ ├── NoQuarterState.java │ │ ├── README.md │ │ ├── SoldOutState.java │ │ ├── SoldState.java │ │ ├── State.java │ │ └── WinnerState.java │ ├── gumballmonitor │ │ ├── GumballMachine.java │ │ ├── GumballMachineTestDrive.java │ │ ├── GumballMonitor.java │ │ ├── HasQuarterState.java │ │ ├── NoQuarterState.java │ │ ├── SoldOutState.java │ │ ├── SoldState.java │ │ ├── State.java │ │ └── WinnerState.java │ ├── javaproxy │ │ ├── MatchMakingTestDrive.java │ │ ├── NonOwnerInvocationHandler.java │ │ ├── OwnerInvocationHandler.java │ │ ├── PersonBean.java │ │ └── PersonBeanImpl.java │ └── virtualproxy │ │ ├── ImageComponent.java │ │ ├── ImageProxy.java │ │ └── ImageProxyTestDrive.java └── 代理人模式-控制物件存取.txt ├── 第十三章與設計模式相處 └── 與設計模式相處-真實世界中的模式.txt ├── 第十二章複合模式 ├── combined │ └── djview │ │ ├── BPMObserver.java │ │ ├── BeatBar.java │ │ ├── BeatController.java │ │ ├── BeatModel.java │ │ ├── BeatModelInterface.java │ │ ├── BeatObserver.java │ │ ├── ControllerInterface.java │ │ ├── DJTestDrive.java │ │ ├── DJView.java │ │ ├── DJViewServlet.java │ │ ├── HeartAdapter.java │ │ ├── HeartController.java │ │ ├── HeartModel.java │ │ ├── HeartModelInterface.java │ │ ├── HeartTestDrive.java │ │ ├── README.md │ │ └── jsp │ │ ├── WEB-INF │ │ └── web.xml │ │ ├── djview.jsp │ │ └── index.html ├── combining │ ├── adapter │ │ ├── DecoyDuck.java │ │ ├── DuckCall.java │ │ ├── DuckSimulator.java │ │ ├── Goose.java │ │ ├── GooseAdapter.java │ │ ├── MallardDuck.java │ │ ├── Quackable.java │ │ ├── RedheadDuck.java │ │ └── RubberDuck.java │ ├── composite │ │ ├── AbstractDuckFactory.java │ │ ├── CountingDuckFactory.java │ │ ├── DecoyDuck.java │ │ ├── DuckCall.java │ │ ├── DuckFactory.java │ │ ├── DuckSimulator.java │ │ ├── Flock.java │ │ ├── Goose.java │ │ ├── GooseAdapter.java │ │ ├── MallardDuck.java │ │ ├── QuackCounter.java │ │ ├── Quackable.java │ │ ├── RedheadDuck.java │ │ └── RubberDuck.java │ ├── decorator │ │ ├── DecoyDuck.java │ │ ├── DuckCall.java │ │ ├── DuckSimulator.java │ │ ├── Goose.java │ │ ├── GooseAdapter.java │ │ ├── MallardDuck.java │ │ ├── QuackCounter.java │ │ ├── Quackable.java │ │ ├── RedheadDuck.java │ │ └── RubberDuck.java │ ├── ducks │ │ ├── DecoyDuck.java │ │ ├── DuckCall.java │ │ ├── DuckSimulator.java │ │ ├── MallardDuck.java │ │ ├── Quackable.java │ │ ├── RedheadDuck.java │ │ └── RubberDuck.java │ ├── factory │ │ ├── AbstractDuckFactory.java │ │ ├── CountingDuckFactory.java │ │ ├── DecoyDuck.java │ │ ├── DuckCall.java │ │ ├── DuckFactory.java │ │ ├── DuckSimulator.java │ │ ├── Goose.java │ │ ├── GooseAdapter.java │ │ ├── MallardDuck.java │ │ ├── QuackCounter.java │ │ ├── Quackable.java │ │ ├── RedheadDuck.java │ │ └── RubberDuck.java │ └── observer │ │ ├── .QuackDecorator.java.swp │ │ ├── AbstractDuckFactory.java │ │ ├── CountingDuckFactory.java │ │ ├── DecoyDuck.java │ │ ├── DuckCall.java │ │ ├── DuckFactory.java │ │ ├── DuckSimulator.java │ │ ├── Flock.java │ │ ├── Goose.java │ │ ├── GooseAdapter.java │ │ ├── MallardDuck.java │ │ ├── Observable.java │ │ ├── Observer.java │ │ ├── QuackCounter.java │ │ ├── QuackObservable.java │ │ ├── Quackable.java │ │ ├── Quackologist.java │ │ ├── RedheadDuck.java │ │ └── RubberDuck.java └── 複合模式-模式中的模式.txt ├── 第十四章剩下的模式 └── 附錄-剩下的模式.txt ├── 第十章狀態模式 ├── proxy │ ├── gumball │ │ ├── GumballMachine.java │ │ ├── GumballMachineRemote.java │ │ ├── GumballMachineTestDrive.java │ │ ├── GumballMonitor.java │ │ ├── GumballMonitorTestDrive.java │ │ ├── HasQuarterState.java │ │ ├── NoQuarterState.java │ │ ├── README.md │ │ ├── SoldOutState.java │ │ ├── SoldState.java │ │ ├── State.java │ │ └── WinnerState.java │ ├── gumballmonitor │ │ ├── GumballMachine.java │ │ ├── GumballMachineTestDrive.java │ │ ├── GumballMonitor.java │ │ ├── HasQuarterState.java │ │ ├── NoQuarterState.java │ │ ├── SoldOutState.java │ │ ├── SoldState.java │ │ ├── State.java │ │ └── WinnerState.java │ ├── javaproxy │ │ ├── MatchMakingTestDrive.java │ │ ├── NonOwnerInvocationHandler.java │ │ ├── OwnerInvocationHandler.java │ │ ├── PersonBean.java │ │ └── PersonBeanImpl.java │ └── virtualproxy │ │ ├── ImageComponent.java │ │ ├── ImageProxy.java │ │ └── ImageProxyTestDrive.java └── 狀態模式-事物的狀態.txt └── 第四章工廠模式 ├── CaliforniaPizzaStore.java ├── CaliforniaPizzaStoreStyleCheesePizza.java ├── CaliforniaPizzaStoreStyleClamPizza.java ├── CaliforniaPizzaStoreStylePepperoniPizza.java ├── CaliforniaPizzaStoreStyleVeggiePizza.java ├── CheesePizza.java ├── ChicagoPizzaStore.java ├── ChicagoStyleCheesePizza.java ├── ChicagoStyleClamPizza.java ├── ChicagoStylePepperoniPizza.java ├── ChicagoStyleVeggiePizza.java ├── ClamPizza.java ├── NYPizzaIngredientFactory.java ├── NYPizzaStore.java ├── NYStyleCheesePizza.java ├── NYStyleClamPizza.java ├── NYStylePepperoniPizza.java ├── NYStyleVeggiePizza.java ├── PepperoniPizza.java ├── Pizza.java ├── PizzaIngredientFactory.java ├── PizzaStore.java ├── PizzaTestDrive.java ├── SimplePizzaFactory.java ├── VeggiePizza.java └── 工廠模式-烘培OO的精華.txt /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/.gitattributes -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/README.md -------------------------------------------------------------------------------- /第一章設計模式/DecoyDuck.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/DecoyDuck.class -------------------------------------------------------------------------------- /第一章設計模式/DecoyDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/DecoyDuck.java -------------------------------------------------------------------------------- /第一章設計模式/Duck.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/Duck.class -------------------------------------------------------------------------------- /第一章設計模式/Duck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/Duck.java -------------------------------------------------------------------------------- /第一章設計模式/FlyBehavior.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/FlyBehavior.class -------------------------------------------------------------------------------- /第一章設計模式/FlyBehavior.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/FlyBehavior.java -------------------------------------------------------------------------------- /第一章設計模式/FlyNoWay.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/FlyNoWay.class -------------------------------------------------------------------------------- /第一章設計模式/FlyNoWay.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/FlyNoWay.java -------------------------------------------------------------------------------- /第一章設計模式/FlyRocketPowered.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/FlyRocketPowered.class -------------------------------------------------------------------------------- /第一章設計模式/FlyRocketPowered.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/FlyRocketPowered.java -------------------------------------------------------------------------------- /第一章設計模式/FlyWithWings.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/FlyWithWings.class -------------------------------------------------------------------------------- /第一章設計模式/FlyWithWings.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/FlyWithWings.java -------------------------------------------------------------------------------- /第一章設計模式/MallardDuck.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/MallardDuck.class -------------------------------------------------------------------------------- /第一章設計模式/MallardDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/MallardDuck.java -------------------------------------------------------------------------------- /第一章設計模式/MiniDuckSimulator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/MiniDuckSimulator.class -------------------------------------------------------------------------------- /第一章設計模式/MiniDuckSimulator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/MiniDuckSimulator.java -------------------------------------------------------------------------------- /第一章設計模式/ModelDuck.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/ModelDuck.class -------------------------------------------------------------------------------- /第一章設計模式/ModelDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/ModelDuck.java -------------------------------------------------------------------------------- /第一章設計模式/MuteQuack.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/MuteQuack.class -------------------------------------------------------------------------------- /第一章設計模式/MuteQuack.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/MuteQuack.java -------------------------------------------------------------------------------- /第一章設計模式/Quack.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/Quack.class -------------------------------------------------------------------------------- /第一章設計模式/Quack.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/Quack.java -------------------------------------------------------------------------------- /第一章設計模式/QuackBehavior.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/QuackBehavior.class -------------------------------------------------------------------------------- /第一章設計模式/QuackBehavior.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/QuackBehavior.java -------------------------------------------------------------------------------- /第一章設計模式/RubberDuck.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/RubberDuck.class -------------------------------------------------------------------------------- /第一章設計模式/RubberDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/RubberDuck.java -------------------------------------------------------------------------------- /第一章設計模式/Squeak.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/Squeak.class -------------------------------------------------------------------------------- /第一章設計模式/Squeak.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/Squeak.java -------------------------------------------------------------------------------- /第一章設計模式/介紹設計模式-歡迎到來設計模式.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第一章設計模式/介紹設計模式-歡迎到來設計模式.txt -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/Duck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/Duck.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/DuckAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/DuckAdapter.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/DuckTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/DuckTestDrive.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/MallardDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/MallardDuck.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/Turkey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/Turkey.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/TurkeyAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/TurkeyAdapter.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/TurkeyTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/TurkeyTestDrive.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/WildTurkey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/WildTurkey.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/challenge/Drone.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/challenge/Drone.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/challenge/DroneAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/challenge/DroneAdapter.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/ducks/challenge/SuperDrone.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/ducks/challenge/SuperDrone.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/iterenum/EI.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/iterenum/EI.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/iterenum/EnumerationIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/iterenum/EnumerationIterator.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/iterenum/EnumerationIteratorTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/iterenum/EnumerationIteratorTestDrive.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/iterenum/IteratorEnumeration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/iterenum/IteratorEnumeration.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/adapter/iterenum/IteratorEnumerationTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/adapter/iterenum/IteratorEnumerationTestDrive.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/ducks/Duck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/ducks/Duck.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/ducks/DuckAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/ducks/DuckAdapter.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/ducks/DuckTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/ducks/DuckTestDrive.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/ducks/MallardDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/ducks/MallardDuck.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/ducks/Turkey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/ducks/Turkey.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/ducks/TurkeyAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/ducks/TurkeyAdapter.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/ducks/TurkeyTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/ducks/TurkeyTestDrive.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/ducks/WildTurkey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/ducks/WildTurkey.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/Amplifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/Amplifier.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/CdPlayer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/CdPlayer.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/DvdPlayer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/DvdPlayer.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/HomeTheaterFacade.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/HomeTheaterFacade.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/HomeTheaterTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/HomeTheaterTestDrive.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/PopcornPopper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/PopcornPopper.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/Projector.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/Projector.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/Screen.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/Screen.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/TheaterLights.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/TheaterLights.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/facade/hometheater/Tuner.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/facade/hometheater/Tuner.java -------------------------------------------------------------------------------- /第七章轉接器模式與表象模式/轉接器模式與表象模式-隨遇而安.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第七章轉接器模式與表象模式/轉接器模式與表象模式-隨遇而安.txt -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Beverage$Size.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Beverage$Size.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Beverage.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Beverage.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Beverage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Beverage.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/CondimentDecorator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/CondimentDecorator.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/CondimentDecorator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/CondimentDecorator.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/DarkRoast.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/DarkRoast.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/DarkRoast.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/DarkRoast.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Decaf.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Decaf.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Espresso.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Espresso.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Espresso.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Espresso.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/HouseBlend.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/HouseBlend.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/HouseBlend.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/HouseBlend.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Milk.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Milk.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Mocha.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Mocha.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Mocha.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Mocha.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Soy.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Soy.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Soy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Soy.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/StarbuzzCoffee.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/StarbuzzCoffee.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/StarbuzzCoffee.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/StarbuzzCoffee.java -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Whip.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Whip.class -------------------------------------------------------------------------------- /第三章裝飾者模式/咖啡/Whip.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/咖啡/Whip.java -------------------------------------------------------------------------------- /第三章裝飾者模式/裝飾者模式-裝飾物件.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/裝飾者模式-裝飾物件.txt -------------------------------------------------------------------------------- /第三章裝飾者模式/輸入流/InputTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/輸入流/InputTest.class -------------------------------------------------------------------------------- /第三章裝飾者模式/輸入流/InputTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/輸入流/InputTest.java -------------------------------------------------------------------------------- /第三章裝飾者模式/輸入流/LowerCaseInputStream.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/輸入流/LowerCaseInputStream.class -------------------------------------------------------------------------------- /第三章裝飾者模式/輸入流/LowerCaseInputStream.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第三章裝飾者模式/輸入流/LowerCaseInputStream.java -------------------------------------------------------------------------------- /第三章裝飾者模式/輸入流/test.txt: -------------------------------------------------------------------------------- 1 | I know the Decorator Pattern therefore I RULE! -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/Collections.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/Collections.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator/Cafe.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator/Cafe.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator/DinerMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator/DinerMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator/DinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator/DinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator/Iterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator/Iterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator/Menu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator/Menu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator/PancakeHouseMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator/PancakeHouseMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator/PancakeHouseMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator/PancakeHouseMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator_builtin/Cafe.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator_builtin/Cafe.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator_builtin/DinerMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator_builtin/DinerMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator_builtin/DinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator_builtin/DinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator_builtin/Menu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator_builtin/Menu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/collections/iterator_builtin/PancakeHouseMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/collections/iterator_builtin/PancakeHouseMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menu/Menu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menu/Menu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menu/MenuComponent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menu/MenuComponent.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menu/MenuItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menu/MenuItem.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menu/MenuTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menu/MenuTestDrive.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menu/Waitress.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menu/Waitress.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menuiterator/CompositeIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menuiterator/CompositeIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menuiterator/Menu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menuiterator/Menu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menuiterator/MenuComponent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menuiterator/MenuComponent.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menuiterator/MenuItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menuiterator/MenuItem.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menuiterator/MenuTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menuiterator/MenuTestDrive.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menuiterator/NullIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menuiterator/NullIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/composite/menuiterator/Waitress.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/composite/menuiterator/Waitress.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/AlternatingDinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/AlternatingDinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/ArrayIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/ArrayIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/ArrayListIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/ArrayListIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/DinerMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/DinerMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/DinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/DinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/Iterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/Iterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/Menu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/Menu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/MenuItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/MenuItem.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/MenuTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/MenuTestDrive.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/PancakeHouseMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/PancakeHouseMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/PancakeHouseMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/PancakeHouseMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermerger/Waitress.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermerger/Waitress.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergercafe/AlternatingDinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergercafe/AlternatingDinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergercafe/CafeMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergercafe/CafeMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergercafe/DinerMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergercafe/DinerMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergercafe/DinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergercafe/DinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergercafe/Menu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergercafe/Menu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergercafe/MenuItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergercafe/MenuItem.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergercafe/MenuTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergercafe/MenuTestDrive.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergercafe/PancakeHouseMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergercafe/PancakeHouseMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergercafe/Waitress.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergercafe/Waitress.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergeri/AlternatingDinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergeri/AlternatingDinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergeri/DinerMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergeri/DinerMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergeri/DinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergeri/DinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergeri/Menu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergeri/Menu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergeri/MenuItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergeri/MenuItem.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergeri/MenuTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergeri/MenuTestDrive.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergeri/PancakeHouseMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergeri/PancakeHouseMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/dinermergeri/Waitress.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/dinermergeri/Waitress.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/implicit/DinerMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/implicit/DinerMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/implicit/DinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/implicit/DinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/implicit/Menu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/implicit/Menu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/implicit/MenuItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/implicit/MenuItem.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/implicit/MenuTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/implicit/MenuTestDrive.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/implicit/PancakeHouseMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/implicit/PancakeHouseMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/implicit/Waitress.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/implicit/Waitress.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/transition/DinerMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/transition/DinerMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/transition/DinerMenuIterator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/transition/DinerMenuIterator.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/transition/Menu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/transition/Menu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/transition/MenuItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/transition/MenuItem.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/transition/MenuTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/transition/MenuTestDrive.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/transition/PancakeHouseMenu.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/transition/PancakeHouseMenu.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/iterator/transition/Waitress.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/iterator/transition/Waitress.java -------------------------------------------------------------------------------- /第九章反覆器與合成模式/反覆器與合成模式-管理良好的聚合.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第九章反覆器與合成模式/反覆器與合成模式-管理良好的聚合.txt -------------------------------------------------------------------------------- /第二章觀察者模式/Swing 介面/SwingObserverExample.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/Swing 介面/SwingObserverExample.class -------------------------------------------------------------------------------- /第二章觀察者模式/Swing 介面/SwingObserverExample.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/Swing 介面/SwingObserverExample.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/CurrentConditionsDisplay.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/CurrentConditionsDisplay.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/CurrentConditionsDisplay.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/CurrentConditionsDisplay.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/DisplayElement.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/DisplayElement.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/DisplayElement.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/DisplayElement.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/ForecastDisplay.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/ForecastDisplay.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/ForecastDisplay.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/ForecastDisplay.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/HeatIndexDisplay.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/HeatIndexDisplay.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/HeatIndexDisplay.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/HeatIndexDisplay.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/Observer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/Observer.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/Observer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/Observer.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/StatisticsDisplay.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/StatisticsDisplay.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/StatisticsDisplay.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/StatisticsDisplay.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/Subject.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/Subject.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/Subject.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/Subject.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/WeatherData.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/WeatherData.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/WeatherData.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/WeatherData.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/WeatherStation.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/WeatherStation.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/WeatherStation.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/WeatherStation.java -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/WeatherStationHeatIndex.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/WeatherStationHeatIndex.class -------------------------------------------------------------------------------- /第二章觀察者模式/天氣觀測/WeatherStationHeatIndex.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/天氣觀測/WeatherStationHeatIndex.java -------------------------------------------------------------------------------- /第二章觀察者模式/觀察者模式.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第二章觀察者模式/觀察者模式.txt -------------------------------------------------------------------------------- /第五章獨體模式/singleton/chocolate/ChocolateBoiler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/chocolate/ChocolateBoiler.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/chocolate/ChocolateController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/chocolate/ChocolateController.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/classic/Singleton.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/classic/Singleton.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/classic/SingletonClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/classic/SingletonClient.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/dcl/Singleton.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/dcl/Singleton.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/dcl/SingletonClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/dcl/SingletonClient.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/stat/Singleton.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/stat/Singleton.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/stat/SingletonClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/stat/SingletonClient.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/subclass/CoolerSingleton.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/subclass/CoolerSingleton.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/subclass/HotterSingleton.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/subclass/HotterSingleton.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/subclass/Singleton.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/subclass/Singleton.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/subclass/SingletonTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/subclass/SingletonTestDrive.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/threadsafe/Singleton.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/threadsafe/Singleton.java -------------------------------------------------------------------------------- /第五章獨體模式/singleton/threadsafe/SingletonClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/singleton/threadsafe/SingletonClient.java -------------------------------------------------------------------------------- /第五章獨體模式/獨體模式-獨一無二的物件.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第五章獨體模式/獨體模式-獨一無二的物件.txt -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/applet/AppletSource.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/applet/AppletSource.txt -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/applet/MyApplet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/applet/MyApplet.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/barista/BeverageTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/barista/BeverageTestDrive.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/barista/CaffeineBeverage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/barista/CaffeineBeverage.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/barista/CaffeineBeverageWithHook.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/barista/CaffeineBeverageWithHook.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/barista/Coffee.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/barista/Coffee.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/barista/CoffeeWithHook.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/barista/CoffeeWithHook.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/barista/Tea.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/barista/Tea.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/barista/TeaWithHook.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/barista/TeaWithHook.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/frame/MyFrame.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/frame/MyFrame.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/simplebarista/Barista.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/simplebarista/Barista.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/simplebarista/Coffee.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/simplebarista/Coffee.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/simplebarista/Tea.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/simplebarista/Tea.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/sort/Duck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/sort/Duck.java -------------------------------------------------------------------------------- /第八章封裝演算法/templatemethod/sort/DuckSortTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/templatemethod/sort/DuckSortTestDrive.java -------------------------------------------------------------------------------- /第八章封裝演算法/樣板訪法模式-封裝演算法.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第八章封裝演算法/樣板訪法模式-封裝演算法.txt -------------------------------------------------------------------------------- /第六章命令模式/command/party/CeilingFan.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/CeilingFan.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/CeilingFanHighCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/CeilingFanHighCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/CeilingFanMediumCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/CeilingFanMediumCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/CeilingFanOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/CeilingFanOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/Command.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/Command.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/Hottub.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/Hottub.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/HottubOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/HottubOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/HottubOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/HottubOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/Light.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/Light.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/LightOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/LightOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/LightOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/LightOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/LivingroomLightOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/LivingroomLightOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/LivingroomLightOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/LivingroomLightOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/MacroCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/MacroCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/NoCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/NoCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/RemoteControl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/RemoteControl.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/RemoteLoader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/RemoteLoader.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/Stereo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/Stereo.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/StereoOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/StereoOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/StereoOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/StereoOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/StereoOnWithCDCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/StereoOnWithCDCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/TV.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/TV.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/TVOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/TVOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/party/TVOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/party/TVOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/CeilingFan.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/CeilingFan.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/CeilingFanOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/CeilingFanOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/CeilingFanOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/CeilingFanOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/Command.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/Command.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/GarageDoor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/GarageDoor.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/GarageDoorDownCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/GarageDoorDownCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/GarageDoorUpCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/GarageDoorUpCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/Hottub.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/Hottub.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/HottubOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/HottubOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/HottubOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/HottubOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/Light.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/Light.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/LightOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/LightOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/LightOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/LightOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/LivingroomLightOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/LivingroomLightOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/LivingroomLightOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/LivingroomLightOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/NoCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/NoCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/RemoteControl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/RemoteControl.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/RemoteLoader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/RemoteLoader.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/Stereo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/Stereo.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/StereoOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/StereoOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/StereoOnWithCDCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/StereoOnWithCDCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/remote/TV.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remote/TV.java -------------------------------------------------------------------------------- /第六章命令模式/command/remoteWL/CeilingFan.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remoteWL/CeilingFan.java -------------------------------------------------------------------------------- /第六章命令模式/command/remoteWL/Command.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remoteWL/Command.java -------------------------------------------------------------------------------- /第六章命令模式/command/remoteWL/GarageDoor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remoteWL/GarageDoor.java -------------------------------------------------------------------------------- /第六章命令模式/command/remoteWL/Hottub.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remoteWL/Hottub.java -------------------------------------------------------------------------------- /第六章命令模式/command/remoteWL/Light.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remoteWL/Light.java -------------------------------------------------------------------------------- /第六章命令模式/command/remoteWL/RemoteControl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remoteWL/RemoteControl.java -------------------------------------------------------------------------------- /第六章命令模式/command/remoteWL/RemoteLoader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remoteWL/RemoteLoader.java -------------------------------------------------------------------------------- /第六章命令模式/command/remoteWL/Stereo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remoteWL/Stereo.java -------------------------------------------------------------------------------- /第六章命令模式/command/remoteWL/TV.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/remoteWL/TV.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremote/Command.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremote/Command.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremote/GarageDoor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremote/GarageDoor.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremote/GarageDoorOpenCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremote/GarageDoorOpenCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremote/Light.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremote/Light.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremote/LightOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremote/LightOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremote/LightOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremote/LightOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremote/RemoteControlTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremote/RemoteControlTest.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremote/SimpleRemoteControl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremote/SimpleRemoteControl.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremoteWL/Command.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremoteWL/Command.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremoteWL/GarageDoor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremoteWL/GarageDoor.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremoteWL/Light.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremoteWL/Light.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremoteWL/RemoteControlTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremoteWL/RemoteControlTest.java -------------------------------------------------------------------------------- /第六章命令模式/command/simpleremoteWL/SimpleRemoteControl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/simpleremoteWL/SimpleRemoteControl.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/CeilingFan.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/CeilingFan.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/CeilingFanHighCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/CeilingFanHighCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/CeilingFanLowCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/CeilingFanLowCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/CeilingFanMediumCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/CeilingFanMediumCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/CeilingFanOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/CeilingFanOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/Command.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/Command.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/DimmerLightOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/DimmerLightOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/DimmerLightOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/DimmerLightOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/Light.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/Light.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/LightOffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/LightOffCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/LightOnCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/LightOnCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/NoCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/NoCommand.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/RemoteControlWithUndo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/RemoteControlWithUndo.java -------------------------------------------------------------------------------- /第六章命令模式/command/undo/RemoteLoader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/command/undo/RemoteLoader.java -------------------------------------------------------------------------------- /第六章命令模式/命令模式-封裝調用.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第六章命令模式/命令模式-封裝調用.txt -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/GumballMachine.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/GumballMachine.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/GumballMachineRemote.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/GumballMachineRemote.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/GumballMachineTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/GumballMachineTestDrive.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/GumballMonitor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/GumballMonitor.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/GumballMonitorTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/GumballMonitorTestDrive.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/HasQuarterState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/HasQuarterState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/NoQuarterState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/NoQuarterState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/README.md -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/SoldOutState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/SoldOutState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/SoldState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/SoldState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/State.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/State.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumball/WinnerState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumball/WinnerState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumballmonitor/GumballMachine.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumballmonitor/GumballMachine.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumballmonitor/GumballMachineTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumballmonitor/GumballMachineTestDrive.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumballmonitor/GumballMonitor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumballmonitor/GumballMonitor.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumballmonitor/HasQuarterState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumballmonitor/HasQuarterState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumballmonitor/NoQuarterState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumballmonitor/NoQuarterState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumballmonitor/SoldOutState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumballmonitor/SoldOutState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumballmonitor/SoldState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumballmonitor/SoldState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumballmonitor/State.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumballmonitor/State.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/gumballmonitor/WinnerState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/gumballmonitor/WinnerState.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/javaproxy/MatchMakingTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/javaproxy/MatchMakingTestDrive.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/javaproxy/NonOwnerInvocationHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/javaproxy/NonOwnerInvocationHandler.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/javaproxy/OwnerInvocationHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/javaproxy/OwnerInvocationHandler.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/javaproxy/PersonBean.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/javaproxy/PersonBean.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/javaproxy/PersonBeanImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/javaproxy/PersonBeanImpl.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/virtualproxy/ImageComponent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/virtualproxy/ImageComponent.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/virtualproxy/ImageProxy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/virtualproxy/ImageProxy.java -------------------------------------------------------------------------------- /第十一章代理人模式/proxy/virtualproxy/ImageProxyTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/proxy/virtualproxy/ImageProxyTestDrive.java -------------------------------------------------------------------------------- /第十一章代理人模式/代理人模式-控制物件存取.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十一章代理人模式/代理人模式-控制物件存取.txt -------------------------------------------------------------------------------- /第十三章與設計模式相處/與設計模式相處-真實世界中的模式.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十三章與設計模式相處/與設計模式相處-真實世界中的模式.txt -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/BPMObserver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/BPMObserver.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/BeatBar.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/BeatBar.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/BeatController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/BeatController.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/BeatModel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/BeatModel.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/BeatModelInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/BeatModelInterface.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/BeatObserver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/BeatObserver.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/ControllerInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/ControllerInterface.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/DJTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/DJTestDrive.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/DJView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/DJView.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/DJViewServlet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/DJViewServlet.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/HeartAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/HeartAdapter.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/HeartController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/HeartController.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/HeartModel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/HeartModel.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/HeartModelInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/HeartModelInterface.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/HeartTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/HeartTestDrive.java -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/README.md -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/jsp/WEB-INF/web.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/jsp/WEB-INF/web.xml -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/jsp/djview.jsp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/jsp/djview.jsp -------------------------------------------------------------------------------- /第十二章複合模式/combined/djview/jsp/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combined/djview/jsp/index.html -------------------------------------------------------------------------------- /第十二章複合模式/combining/adapter/DecoyDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/adapter/DecoyDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/adapter/DuckCall.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/adapter/DuckCall.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/adapter/DuckSimulator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/adapter/DuckSimulator.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/adapter/Goose.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/adapter/Goose.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/adapter/GooseAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/adapter/GooseAdapter.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/adapter/MallardDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/adapter/MallardDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/adapter/Quackable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/adapter/Quackable.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/adapter/RedheadDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/adapter/RedheadDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/adapter/RubberDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/adapter/RubberDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/AbstractDuckFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/AbstractDuckFactory.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/CountingDuckFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/CountingDuckFactory.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/DecoyDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/DecoyDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/DuckCall.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/DuckCall.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/DuckFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/DuckFactory.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/DuckSimulator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/DuckSimulator.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/Flock.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/Flock.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/Goose.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/Goose.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/GooseAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/GooseAdapter.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/MallardDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/MallardDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/QuackCounter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/QuackCounter.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/Quackable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/Quackable.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/RedheadDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/RedheadDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/composite/RubberDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/composite/RubberDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/DecoyDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/DecoyDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/DuckCall.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/DuckCall.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/DuckSimulator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/DuckSimulator.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/Goose.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/Goose.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/GooseAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/GooseAdapter.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/MallardDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/MallardDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/QuackCounter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/QuackCounter.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/Quackable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/Quackable.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/RedheadDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/RedheadDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/decorator/RubberDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/decorator/RubberDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/ducks/DecoyDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/ducks/DecoyDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/ducks/DuckCall.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/ducks/DuckCall.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/ducks/DuckSimulator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/ducks/DuckSimulator.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/ducks/MallardDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/ducks/MallardDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/ducks/Quackable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/ducks/Quackable.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/ducks/RedheadDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/ducks/RedheadDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/ducks/RubberDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/ducks/RubberDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/AbstractDuckFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/AbstractDuckFactory.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/CountingDuckFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/CountingDuckFactory.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/DecoyDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/DecoyDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/DuckCall.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/DuckCall.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/DuckFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/DuckFactory.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/DuckSimulator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/DuckSimulator.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/Goose.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/Goose.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/GooseAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/GooseAdapter.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/MallardDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/MallardDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/QuackCounter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/QuackCounter.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/Quackable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/Quackable.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/RedheadDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/RedheadDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/factory/RubberDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/factory/RubberDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/.QuackDecorator.java.swp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/.QuackDecorator.java.swp -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/AbstractDuckFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/AbstractDuckFactory.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/CountingDuckFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/CountingDuckFactory.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/DecoyDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/DecoyDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/DuckCall.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/DuckCall.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/DuckFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/DuckFactory.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/DuckSimulator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/DuckSimulator.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/Flock.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/Flock.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/Goose.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/Goose.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/GooseAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/GooseAdapter.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/MallardDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/MallardDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/Observable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/Observable.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/Observer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/Observer.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/QuackCounter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/QuackCounter.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/QuackObservable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/QuackObservable.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/Quackable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/Quackable.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/Quackologist.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/Quackologist.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/RedheadDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/RedheadDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/combining/observer/RubberDuck.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/combining/observer/RubberDuck.java -------------------------------------------------------------------------------- /第十二章複合模式/複合模式-模式中的模式.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十二章複合模式/複合模式-模式中的模式.txt -------------------------------------------------------------------------------- /第十四章剩下的模式/附錄-剩下的模式.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十四章剩下的模式/附錄-剩下的模式.txt -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/GumballMachine.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/GumballMachine.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/GumballMachineRemote.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/GumballMachineRemote.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/GumballMachineTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/GumballMachineTestDrive.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/GumballMonitor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/GumballMonitor.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/GumballMonitorTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/GumballMonitorTestDrive.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/HasQuarterState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/HasQuarterState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/NoQuarterState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/NoQuarterState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/README.md -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/SoldOutState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/SoldOutState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/SoldState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/SoldState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/State.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/State.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumball/WinnerState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumball/WinnerState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumballmonitor/GumballMachine.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumballmonitor/GumballMachine.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumballmonitor/GumballMachineTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumballmonitor/GumballMachineTestDrive.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumballmonitor/GumballMonitor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumballmonitor/GumballMonitor.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumballmonitor/HasQuarterState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumballmonitor/HasQuarterState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumballmonitor/NoQuarterState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumballmonitor/NoQuarterState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumballmonitor/SoldOutState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumballmonitor/SoldOutState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumballmonitor/SoldState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumballmonitor/SoldState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumballmonitor/State.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumballmonitor/State.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/gumballmonitor/WinnerState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/gumballmonitor/WinnerState.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/javaproxy/MatchMakingTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/javaproxy/MatchMakingTestDrive.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/javaproxy/NonOwnerInvocationHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/javaproxy/NonOwnerInvocationHandler.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/javaproxy/OwnerInvocationHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/javaproxy/OwnerInvocationHandler.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/javaproxy/PersonBean.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/javaproxy/PersonBean.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/javaproxy/PersonBeanImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/javaproxy/PersonBeanImpl.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/virtualproxy/ImageComponent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/virtualproxy/ImageComponent.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/virtualproxy/ImageProxy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/virtualproxy/ImageProxy.java -------------------------------------------------------------------------------- /第十章狀態模式/proxy/virtualproxy/ImageProxyTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/proxy/virtualproxy/ImageProxyTestDrive.java -------------------------------------------------------------------------------- /第十章狀態模式/狀態模式-事物的狀態.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第十章狀態模式/狀態模式-事物的狀態.txt -------------------------------------------------------------------------------- /第四章工廠模式/CaliforniaPizzaStore.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/CaliforniaPizzaStore.java -------------------------------------------------------------------------------- /第四章工廠模式/CaliforniaPizzaStoreStyleCheesePizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/CaliforniaPizzaStoreStyleCheesePizza.java -------------------------------------------------------------------------------- /第四章工廠模式/CaliforniaPizzaStoreStyleClamPizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/CaliforniaPizzaStoreStyleClamPizza.java -------------------------------------------------------------------------------- /第四章工廠模式/CaliforniaPizzaStoreStylePepperoniPizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/CaliforniaPizzaStoreStylePepperoniPizza.java -------------------------------------------------------------------------------- /第四章工廠模式/CaliforniaPizzaStoreStyleVeggiePizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/CaliforniaPizzaStoreStyleVeggiePizza.java -------------------------------------------------------------------------------- /第四章工廠模式/CheesePizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/CheesePizza.java -------------------------------------------------------------------------------- /第四章工廠模式/ChicagoPizzaStore.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/ChicagoPizzaStore.java -------------------------------------------------------------------------------- /第四章工廠模式/ChicagoStyleCheesePizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/ChicagoStyleCheesePizza.java -------------------------------------------------------------------------------- /第四章工廠模式/ChicagoStyleClamPizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/ChicagoStyleClamPizza.java -------------------------------------------------------------------------------- /第四章工廠模式/ChicagoStylePepperoniPizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/ChicagoStylePepperoniPizza.java -------------------------------------------------------------------------------- /第四章工廠模式/ChicagoStyleVeggiePizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/ChicagoStyleVeggiePizza.java -------------------------------------------------------------------------------- /第四章工廠模式/ClamPizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/ClamPizza.java -------------------------------------------------------------------------------- /第四章工廠模式/NYPizzaIngredientFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/NYPizzaIngredientFactory.java -------------------------------------------------------------------------------- /第四章工廠模式/NYPizzaStore.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/NYPizzaStore.java -------------------------------------------------------------------------------- /第四章工廠模式/NYStyleCheesePizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/NYStyleCheesePizza.java -------------------------------------------------------------------------------- /第四章工廠模式/NYStyleClamPizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/NYStyleClamPizza.java -------------------------------------------------------------------------------- /第四章工廠模式/NYStylePepperoniPizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/NYStylePepperoniPizza.java -------------------------------------------------------------------------------- /第四章工廠模式/NYStyleVeggiePizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/NYStyleVeggiePizza.java -------------------------------------------------------------------------------- /第四章工廠模式/PepperoniPizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/PepperoniPizza.java -------------------------------------------------------------------------------- /第四章工廠模式/Pizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/Pizza.java -------------------------------------------------------------------------------- /第四章工廠模式/PizzaIngredientFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/PizzaIngredientFactory.java -------------------------------------------------------------------------------- /第四章工廠模式/PizzaStore.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/PizzaStore.java -------------------------------------------------------------------------------- /第四章工廠模式/PizzaTestDrive.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/PizzaTestDrive.java -------------------------------------------------------------------------------- /第四章工廠模式/SimplePizzaFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/SimplePizzaFactory.java -------------------------------------------------------------------------------- /第四章工廠模式/VeggiePizza.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/VeggiePizza.java -------------------------------------------------------------------------------- /第四章工廠模式/工廠模式-烘培OO的精華.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kib06277/Head-First-Design-Patterns/HEAD/第四章工廠模式/工廠模式-烘培OO的精華.txt --------------------------------------------------------------------------------