swift 디자인 패턴 - 전략패턴(스트래티지 패턴)
swift 디자인 패턴 - 전략패턴(스트래티지 패턴) 목표 : 알고리즘 변화를 캡슐화하기 아톰과 태권브이 로봇을 만들어보자. -아톰의 기능: 주먹공격, 하늘날기 -태권브이의 기능: 미사일 공격, 걷기 아톰 클래스와 태권브이 클래스는 Robot이라는 추상 클래스의 자식클래스로 만들었다. 이유는 아톰과 태권브이는 둘다 공격(attack 메서드)와 이동 (move 메서드) 기능이 있는 로봇의 한 종류이기 때문이다. 아톰과 태권브이의 공격기능과 이동기능이 다르기 때문에 Robot 클래스에서 atack과 move 메서드를 추상 메서드로 설정해서 자식 클래스에서 정의하도록 했다. protocol Robot { var name: String { get set } func attack() func move() } //..