Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
design_pattern:abstract_factory_pattern [2017/10/28 16:44] – [Client] ledyxdesign_pattern:abstract_factory_pattern [2021/02/07 03:24] (current) – [Abstract Factory Pattern] ledyx
Line 3: Line 3:
   * 부품의 구체적인 구현에는 주목하지 않고, **인터페이스(API)에 주목**.   * 부품의 구체적인 구현에는 주목하지 않고, **인터페이스(API)에 주목**.
   * **추상적인 공장**(Abstract Factory)에서 **추상적인 부품**을 조립하고 **추상적인 제품**을 완성한다.   * **추상적인 공장**(Abstract Factory)에서 **추상적인 부품**을 조립하고 **추상적인 제품**을 완성한다.
 +    * 많은 수의 연관된 하위 클래스를 특정 그룹으로 묶어 한번에 교체.\\ ex) 특정 라이브러리 배포시 OS별로 지원하는 기능이 다를 때, OS별 기능 변경을 통합적으로 변경.
  
-{{tag>Architecture Modeling DesignPattern Creational}}+{{tag>Architecture Modeling Design_Pattern Creational}}
  
 = Factory = = Factory =
Line 390: Line 391:
     * API만 이용! 말그대로 <fc red>추상적인 공장(Abstract Factory)에서 추상적인 부품을 조립하고 추상적인 제품을 완성한다.</fc>     * API만 이용! 말그대로 <fc red>추상적인 공장(Abstract Factory)에서 추상적인 부품을 조립하고 추상적인 제품을 완성한다.</fc>
  
-<sxh java>+<sxh java ; highlight: [13]>
 import factory.Factory; import factory.Factory;
 import factory.LinkItem; import factory.LinkItem;
Line 431: Line 432:
   
   
- Page page = factory.createPage(className, "By xeyez");+ Page page = factory.createPage(className, "By ledyx");
  page.add(trary_community);  page.add(trary_community);
  page.add(tray_searchEngine);  page.add(tray_searchEngine);
Line 467: Line 468:
 </li></ul> </li></ul>
 </li></ul> </li></ul>
-<hr><footer>By xeyez</footer></body>+<hr><footer>By ledyx</footer></body>
 </html> </html>
 </sxh> </sxh>
- 
-<html> 
-<head><title>listfactory.ListFactory</title></head> 
-<body> 
-<h1>listfactory.ListFactory</h1><ul> 
-<li> 
-커뮤니티 
-<ul> 
-<li><a href="http://www.todayhumor.co.kr">오늘의 유머</a></li> 
-<li><a href="http://ruliweb.com/">루리웹</a></li> 
-</ul> 
-</li><li> 
-검색 엔진 
-<ul> 
-<li><a href="http://www.google.com">Google</a></li> 
-<li><a href="http://www.daum.net">Daum</a></li> 
-<li> 
-Naver 
-<ul> 
-<li><a href="http://www.naver.com">Naver</a></li> 
-<li><a href="http://m.naver.com">Naver Mobile</a></li> 
-</ul> 
-</li></ul> 
-</li></ul> 
-<hr><footer>By xeyez</footer></body> 
-</html> 
  
  
Line 541: Line 516:
 <br> <br>
 </div> </div>
-<hr><footer>By xeyez</footer></body>+<hr><footer>By ledyx</footer></body>
 </html> </html>
 </sxh> </sxh>
- 
-<html> 
-<head><title>divfactory.DivFactory</title></head> 
-<body> 
-<h1>divfactory.DivFactory</h1> 
-<div> 
-<div style="border: 1px solid black; ; margin: 5px; padding: 5px"> 
-<div>커뮤니티</div> 
- 
-<div> 
-<span><a href="http://www.todayhumor.co.kr">오늘의 유머</a></span> 
- 
-<span><a href="http://ruliweb.com/">루리웹</a></span> 
-</div> 
-</div> 
-<br> 
- 
-<div style="border: 1px solid black; ; margin: 5px; padding: 5px"> 
-<div>검색 엔진</div> 
- 
-<div> 
-<span><a href="http://www.google.com">Google</a></span> 
- 
-<span><a href="http://www.daum.net">Daum</a></span> 
- 
-<div style="border: 1px solid black; ; margin: 5px; padding: 5px"> 
-<div>Naver</div> 
- 
-<div> 
-<span><a href="http://www.naver.com">Naver</a></span> 
- 
-<span><a href="http://m.naver.com">Naver Mobile</a></span> 
-</div> 
-</div> 
-<br> 
-</div> 
-</div> 
-<br> 
-</div> 
-<hr><footer>By xeyez</footer></body> 
-</html> 
- 
design_pattern/abstract_factory_pattern.1509205444.txt.gz · Last modified: 2021/02/07 03:15 (external edit)