topic★★★★★난이도 · 약 20분
소프트웨어 아키텍처 패턴
Layered · MVC · Pipe-Filter · Broker · MSA 등 — 시스템 전체 구조의 재사용 가능한 청사진.
#아키텍처#MVC
왜 배우는가
각 아키텍처 패턴의 이름과 특징 매칭이 단답 빈출.
| 패턴 | 특징 | 예시 |
|---|---|---|
| 계층형 (Layered) | 역할별 계층으로 분리 | OSI 7계층, 3-Tier |
| 클라이언트-서버 | 요청-응답 모델 | 웹 시스템 |
| 파이프-필터 | 데이터 흐름 처리 | UNIX 파이프, 컴파일러 |
| 브로커 (Broker) | 중개자를 통한 통신 | CORBA, 메시지 브로커 |
| MVC | Model-View-Controller | 웹 프레임워크 |
| MVP / MVVM | MVC 변형 | Android, WPF |
| 마스터-슬레이브 | 제어-작업 분리 | DB 복제 |
| 이벤트 버스 | 발행-구독 | 이벤트 드리븐 시스템 |
| 블랙보드 | 공유 저장소 | AI, 패턴 인식 |
| 인터프리터 | 언어 해석 | 스크립트 엔진 |
MVC 3구성 — Model(데이터·비즈니스 로직), View(화면 표시), Controller(사용자 입력 처리 및 M/V 중재). 현대 웹 프레임워크의 기본.
4+1 아키텍처 뷰 (Kruchten) — 논리 뷰(기능), 프로세스 뷰(동시성), 구현 뷰(모듈 구성), 배포 뷰(물리 배치) + 유스케이스 뷰(시나리오).
| 품질 속성 | 의미 |
|---|---|
| 가용성 | 얼마나 자주 작동 가능 |
| 변경 용이성 | 수정·확장이 쉬움 |
| 성능 | 응답 시간, 처리량 |
| 보안성 | 인가·인증·암호화 |
| 사용성 | UI 학습 용이성 |
| 시험 용이성 | 테스트 가능성 |
실기 드릴 2문항
edit실기 드릴 · 단답형
데이터를 일방향으로 흐르며 단계별로 처리하는 아키텍처 패턴은?
edit실기 드릴 · 단답형
MVC의 3구성 요소를 쓰시오.