'CS Study/디자인패턴' 카테고리의 글 목록 (9 Page)
본문 바로가기
728x90
반응형

CS Study/디자인패턴84

22-04-11-비지터패턴-2부-패턴적용하기 01.비지터패턴 적용하기 01.1 Shape.java before public interface Shape { void printTo(Device device); }// 모든 디바이스에 쓰기 위함 after public interface Shape { void printTo(Phone phone); void printTo(Watch watch); } 01.2 Circle.java before public class Circle implements Shape{ @Override public void printTo(Device device){ if(device instanceof Phone){ System.out.println("print Circle to Phone"); }else if(device ins.. 2022. 4. 12.
22-04-11-비지터패턴-1부-패턴소개 01.사용되는 상황 기존 코드를 건드리지 않고 새로운 기능 추가하는 것 기능을 구현할 때 기존 클래스에 코드를 추가하는데 그럴수 없는 경우가 있고 원치 않는 경우가 있을 수 있음 단일 책임 원칙 (Single responsibility principle)을 지키고 싶고, 책임을 증가시키고 싶지 않는 경우 버그가 생길 수 있어서 그곳에 넣지 않고 분리하고 싶은 경우 그 코드가 가진 특성상 여러 곳에서 사용해야하는 경우나 한곳에 모으고 싶은 경우 02.코드로 확인해보기 02.1 여러디바이스에 추가하고 싶은 경우 기기 마다 달라진다는 가정으로 구현된 디자인 패턴이 적용되지 않은 경우 public interface Device{ } public Phone implements Device{ } public Wat.. 2022. 4. 12.
22.03.03_디자인패턴이란 01.디자인패턴이란? 설계자로 하여금 재사용이 가능한 설계를 선택하고, 재사용을 방해하는 설계는 배제하도록 도와줌 또한 패턴을 쓰면 이미 만든 시스템의 유지보수나 문서화도 개선할 수 있고, 클래스의 명세도 정확하게 할 수 있고, 객체 간의 상호작용 또는 설계 의도까지 명확하게 정의 할 수 있음 간단히 말해서 디자인 패턴은 설계자들이 올바른 설계를 빨리 만들 수 있도록 도와줌 기존 환경 내에서 반복적으로 일어나는 문제를 어떻게 풀어나갈 것인가에 대한 일종의 솔루션 같은 것 생성 패턴구조 패턴행동 패턴 객체의 생성에 관련된 패턴, 객체의 생성 로직을 숨김으로써 유연성을 향상 시킴 클래스와 객체의 구성에 관련된 패턴 객체와 객체간의 통신에 관련된 패턴. Singleton Adapter Command Abstr.. 2022. 3. 4.
C#적용_22.02.21_전략패턴 1.전략패턴이란? 은연중에 많이 쓰는 패턴이다. 프레임워크에서 많이 표현해서 사용 어떤 일을 수행하는 방법이 여러개 일때 그 여러 알고리즘을 각 개별적인 클래스로 캡슐화하고 그 캡슐화하나 것을 공통된 인터페이스로 추상해서 로직을 수행하는 곳에서는 추상화된 인터페이스만 사용함으로써 클라이언트 코드는 바뀌지 않지만 사용하는 알고리즘이 추가되거나 수정되어도 클라이언트 코드에 이상이 없음 Compareater인터페이스를 예로 들수 있음 2.전략패턴 적용 전 소스 2.1 생성자에서 변수적용 2.1.1 BlueLightRedLight.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System... 2022. 3. 3.
728x90
반응형