소프트웨어 패턴이란?

seunlee·2024년 12월 8일
0
post-thumbnail

🔎 패턴이란?

  • 특정한 문제를 효과적으로 해결하기 위한 일반화된 설계 방법이나 해결책
  • 반복적으로 나타나는 문제와 그 해결 방식을 체계적으로 정리하여, 개발자들이 이를 재사용할 수 있도록 도움

📌  패턴은 코드의 재사용성과 유지보수성을 높이고, 팀원 간의 커뮤니케이션을 효율적으로 만들 수 있음

🔎 패턴의 종류

  1. 디자인 패턴: 객체지향 설계에서 자주 사용되는 문제 해결 기법
  2. 아키텍처 패턴: 소프트웨어의 전체 구조를 설계하기 위한 패턴
  3. 행동 패턴: 코드 내에서 객체나 클래스가 상호작용하는 방식을 정의

🔎 MVC 패턴이란?

  • 소프트웨어 아키텍처 패턴 중 하나로, Model-View-Controller로 구성
  • 애플리케이션을 세 가지 주요 구성 요소로 나누어 책임을 분리해 유지보수성과
    확장성을 높이는 데 중점을 둠
  1. Model(모델)

    • 데이터와 비즈니스 로직 처리
    • 데이터베이스와 상호작용하거나 데이터를 가공
    • View와는 독립적으로 작동, 데이터가 변경되면 Controller에 알림
  2. View(뷰)

    • 사용자 인터페이스(UI) 담당
    • Model로부터 데이터를 받아 화면에 표시
    • 사용자로부터 입력을 받아 Controller로 전달
  3. Controller(컨트롤러)

    • Model / View 사이의 중개 역할
    • 사용자의 입력을 처리, 적절한 Model, View 업데이트
    • 비즈니스 로직은 주로 Model에 위임, View는 결과를 표시

📌 장점

  • 유지보수성: 각 구성 요소가 독립적이므로 코드 변경 용이
  • 재사용성: View와 Model을 분리해 UI나 데이터 로직의 재사용이 가능
  • 유연성: 기능 확장이나 구조 변경이 비교적 간단함

📌 단점

  • 초기 설계와 구현이 복잡할 수 있음
  • 작은 애플리케이션에는 과도한 설계가 될 수 있음
profile
코린이의 생존 일기 💻🌱

0개의 댓글

관련 채용 정보