본문 바로가기

면접을 위한 CS 전공지식 노트14

MVVM 패턴 MVVM 패턴소프트웨어 디자인 패던, UI 개발에 사용. 뷰(View)와 모델(Model) 사이의 강한 결합을 줄이기 위해 도입Model : 애플리케이션의 데이터와 비즈니스 로직을 관리View : 사용자 인터페이스 요소ViewModel : View와 Model 사이에서 데이터를 중계하고, 데이터 바인딩을 통해 View에 데이터를 전달MVC와 MVVM의 차이점사용자 입력 처리:MVC: 사용자 입력을 Controller가 직접 처리MVVM: 사용자 입력은 ViewModel이 처리합니다.데이터 바인딩:MVC : 데이터 바인딩이 자동 X, Controller를 통해 수동으로 처리MVVM : 데이터 바인딩이 자동, View와 ViewModel 간의 데이터 동기화가 프레임워크에 의해 자동으로 처리예시 코드# Mod.. 2024. 9. 5.
전략 패턴 전략 패턴객체의 행위를 클래스를 통해 캡슐화하여 동적으로 행위를 변경할 수 있게 해주는 패턴 장점:코드의 유연성 : 서로 다른 알고리즘을 쉽게 교체할 수 있으므로, 코드의 유연성 높아짐재사용성 : 특정 행동(전략)을 별도의 클래스로 분리함으로써 여러 객체에서 재사용런타임에서 전략 선택 : 인터페이스를 통해 다양한 알고리즘(전략)을 구현 가능, 이를 런타임에 선택하거나 교체단점:클래스 수 증가 : 클래스로 분리하여 클래스의 수 증가함. 이로인해 코드 복잡해짐클라이언트 코드의 복잡성 : 객체 생성 및 관리 로직 추가됨의존성 증가 : 잘못 설계 시 유지보수 어려움예시 코드# 전략class MusicStrategy: def recommend_song(self): pass# 발라드class Ba.. 2024. 9. 5.