ComputerScience 2

디자인 패턴 - 생성 패턴, 2) Abstract Factory

1. 추상 팩토리가 필요한 이유 초기 코드에서 UI 컴포넌트를 만들 때 보통 이렇게 쓴다고 해보자.Button button = new WindowsButton();Checkbox checkbox = new WindowsCheckbox();여기서 문제는 서로 관련된 여러 컴포넌트(Button, Checkbox, TextField…)가 “세트”로 움직여야 한다는 점이다. 예를 들어제품군(패밀리):Button, Checkbox, TextField, Dialog …변형(스타일/플랫폼):Windows 스타일MacOS 스타일Linux / Web 등우리가 원하는 건Windows용 UI를 쓸 때는 모든 컴포넌트가 Windows 스타일MacOS에서는 전부 MacOS 스타일섞이면 안 됨 (Mac 버튼 + Windows ..

Computer Science 2025.11.23

디자인 패턴 - 생성 패턴, 1) FactoryMethod

오늘은 소프트웨어 아키텍처에서 배운 내용을 바탕으로 디자인 패턴들에 대해서 한번 정리해보고자한다.밑의 내용은 다음 사이트를 참고하여 예스들을 작성하였다.https://refactoring.guru/ko/design-patterns/creational-patterns 생성 디자인 패턴 refactoring.guru 소프트웨어에서는 “어떻게 객체를 생성할 것인가?”가 매우 중요한 주제다.객체를 직접 new로 만들기 시작하면 코드가 강하게 결합되고, 확장하거나 테스트하기 어려워진다. 이를 해결하기 위해 객체 생성 과정을 별도의 구조로 분리하는 것이 생성 패턴(Creational Patterns) 이다. 1. 팩토리 메서드가 필요한 이유초기 코드에서 객체를 만들 때는 보통 이렇게 쓴다.Button button ..

Computer Science 2025.11.23