목록DesignPattern (2)
without haste but without rest
SOLID Principle
파이썬 클린코드 SRP - Single Reponsibility Principle 소프트웨어 컴포넌트가 단 하나의 책임을 져야한다는 원칙이다. 즉 클래스는 하나의 구체적인 일만을 담당한다. 따라서 도메인의 문제가 변경되면 클래스를 변경하게 되며 그 이외의 이유로 클래스를 수정해야한다면 추상화가 잘못 되어서 클래스에 너무 많은 책임이 있다는 것을 뜻한다. SRP를 지키지 않은 예 class SystemMoniter: def load_activity(self): """ 소스에서 처리할 이벤트를 가져오기""" def identify_events(self): """ 가져온 데이터를 파싱해서 도메인""" def stream_events(self): """파싱한 이벤트를 외부 에이전트로 전송""" 이 클래스의 문제..
Computer Science
2022. 2. 10. 10:51
Layered Architecture
https://cs.uwaterloo.ca/~m2nagapp/courses/CS446/1195/Arch_Design_Activity/Layered.pdf Presentation Layer 인터페이스로, 요청에만 집중하고 내부 비지니스 로직은 신경쓰지 않는다. Business Layer 로직 처리에 집중한다. 이때 변경 및 추가사항의 일관성(받는 요청의 형태와 리턴하는 결과의 형태의 일관성)이 필요하다. Persistent Layer business layer로부터 전달 받은 결과를 저장하는 것에 집중한다.
Computer Science
2022. 2. 10. 10:10