Design Pattern, Architecture

Youngwoo Lee·2021년 3월 8일
0
post-thumbnail

Design Pattern?

  • Design Patterns
    • 객체 지향 프로그래밍 설계를 할 때 자주 발생하는 문제들을 피하기 위해 사용되는 패턴
    • 디자인 패턴은 의사소통 수단의 일종으로서 이런 문제를 해결해준다. 예를 들어 문제 해결의 제안에 있어서도 “기능마다 별도의 클래스를 만들고, 그 기능들로 해야할 일을 한번에 처리해주는 클래스를 만들자.”라고 제안하는 것보다 "Facade 패턴을 써보자."라고 제안하는 쪽이 이해하기 쉽다.
    • 설계 양식, 템플릿과 비슷함
    • 코드 설계시에 가장 많이 나타나는 패턴을 양식화 함
  • Design Patterns 의 의미
    • OOP의 다양한 문제상황에 대한 예방
    • 프로그래머 사이의 협업효율 향상
    • 프로그래머 사이의 의사소통 증진
    • 코드의 안정화 및 최적화
    • 코드의 재사용성 증가
  • Design Pattern 을 적절히 사용하지 않았을 때는?
    • 패턴병에 걸릴 수 있다(패턴을 지킬려고 하는 고집으로 인해 효율이 떨어짐)
    • 목적으로 삼는 순간 주객전도가 된다!

Architectures

  • Architecture
    • 소프트웨어 전반적으로 영향을 미치는 뼈대 같은 느낌의 패턴
    • Design Pattern은 이것과 다르게 부분적인 해결책을 의미한다.
    • 아키텍처란 시스템을 구성하는 서브 시스템, 컴포넌트와 같이 구성요소 간의 관계를 관리하는 시스템 구조
    • ex) 한국식 구조의 집(아키텍처)에 에스컬레이터를 통해서 움직임을 해소(디자인 패턴)
profile
iOS Developer Student

0개의 댓글