Swift의 프로토콜(Protocols)
개발을 하다 보면 구현해야 할 기능이 여러 가지이면서 상속 관계와는 상관없이 구현해야 하거나, 각기 다른 유형을 배열로 묶어야 할 때가 있습니다. 처음 이런 상황을 겪으면 상속을 이용해서 공통의 속성 또는 함수를 작성합니다. 처음 시작은 순조롭게 잘 되는 것 처럼 보이지만, 하위 유형을 상속으로만 만들어서 사용하다 보면 무언가 잘못되어가고 있다는 것을 깨닫습니다. 상속 깊이가 많이 차이 나는 하위 유형들에 공통의 속성 A를 추가하려고 할 때, 하위 유형들 공통의 부모 유형을 찾아서 속성을 추가하려고 할 것입니다. 공통의 부모 유형이 A 속성을 가지는 것이 타당하다면 그나마 다행이지만, A 속성이 터무니없는 속성이라면 오히려 유지보수에 악영향을 끼칠 것이 분명합니다. 어떤 목적으로 속성을 추가했는지도 불명..
Study/[iOS] Swift
2020. 4. 5. 18:16