GOF 3

[스파르타 ][TIL] 유니티 스파르타 7기 33일차 - MVP패턴

MVP(Model-View-Presenter) 패턴은 GUI 애플리케이션 개발에서 사용되는 아키텍처 패턴 중 하나로, MVC(Model-View-Controller) 패턴의 변형입니다. 이 패턴은 View와 Model 간의 결합도를 줄이고, 테스트 용이성을 높이는 것이 목적입니다.🔹 MVP 패턴의 구성 요소Model (모델)데이터 및 비즈니스 로직을 관리합니다.데이터베이스, API, 도메인 로직 등을 처리합니다.View (뷰)UI 요소를 담당합니다.사용자 입력을 처리하고, 화면을 갱신하는 역할을 합니다.Presenter에 의해 업데이트됩니다.Presenter (프레젠터)View와 Model 사이에서 중간 역할을 합니다.View에서 받은 사용자 입력을 처리하고, Model에서 데이터를 가져와 View를 ..

[ 스파르타 ][TIL] 유니티 스파르타 7기 23일차 - 객체지향의 디자인패턴

1. 단일 책임 원칙 (SRP, Single Responsibility Principle)“클래스는 단 하나의 책임만 가져야 한다.”➡ 하나의 클래스는 하나의 기능만 담당해야 하며, 변경 이유도 하나여야 한다.✅ 예시 (잘못된 코드)public class Report{ public void GenerateReport() { /* 보고서 생성 로직 */ } public void SaveToFile() { /* 파일 저장 로직 */ }}보고서를 생성하는 역할과 저장하는 역할을 하나의 클래스에서 처리하고 있음. public class ReportGenerator{ public void GenerateReport() { /* 보고서 생성 로직 */ }}public class ReportSaver..

[ 스파르타 ][TIL] 유니티 스파르타 7기 18일차 - Command 패턴

실행 취소(Undo) 기능 추가하기커맨드 패턴의 큰 장점 중 하나는 Undo(실행 취소) 기능을 쉽게 구현할 수 있다는 것입니다.실행된 커맨드를 스택(Stack)에 저장했다가 실행 취소할 수 있습니다.인터페이스public interface ICommand{ void Execute(); void Undo();} 구체화public class FireCommand : ICommand{ private Gun gun; public FireCommand(Gun gun) { this.gun = gun; } public void Execute() { gun.Shoot(); } public void Undo() { gun.C..