학습차원으로 "클린아키텍쳐" 도서를 읽고 정리한 글입니다. ISP: 인터페이스 분리법칙 (문제사항) 다수의 사용자가 OPS클래스의 오퍼레이션을 사용한다. User1은 오직 op1을, User2는 op2만을, User3는 op3만을 사용한다고 가정한다. OPS 가 정적타입언어로 작성된 클래스라고 해보자 이경우 User1에서는 op2와 op3를 전혀 사용하지 않음에도 User1의 소스코드는 이 두 메소드에 의존하게된다. 이러한 의존성에 의해 OPS클래스에서 op2의 소스코드가 변경되면 User1도 다시 컴파일한 후 새로 배포해야한다. 사실 User1과 관련된 코드는 전혀 변경되지 않았음에도 말이다. 이러한 문제는 오퍼레이션을 인터페이스 단위로 분리하여 해결할 수 있다. User1의 소스코드는 U1Ops와 o..
학습차원으로 "클린아키텍쳐" 도서를 읽고 정리한 글입니다. SRP: 단일 책임 원칙 단일 모듈은 변경의 이유가 하나, 오직 하나뿐이어야한다. 하나의 모듈은 하나의, 오직 하나의 액터(actor)에 대해서만 책임져야한다. SRP가 말하는 “변경의 이유”란 바로 이들 사용자와 이해관계자를 가리킨다. 소프트웨어 시스템은 사용자와 이해관계자를 만족시키기 위해 변경된다. actor은 사용자/이해관계자 집단을 의미한다. 클래스는 하나의 유효범위가 되며, 유효범위 바깥에서는 private 멤버가 있는지를 전혀 알 수 없다. 단일 책임원칙은 메소드와 클래스 수준의 원칙이다. OCP: 개방-폐쇄 원칙 소프트웨어 개체(artifact)는 확장에는 열려있어야하고, 변경에는 닫혀있어야한다. 소프트웨어 개체의 행위는 확장할 수..
학습차원으로 "클린아키텍쳐" 도서를 읽고 정리한 글입니다. 좋은 소프트웨어 시스템은 깔끔한 코드로부터 시작한다. 좋은 벽돌을 사용하더라도 빌딩의 아키텍쳐를 엉망으로 만들 수 있다. 좋은 벽돌로 좋은 아키텍쳐를 정의하는 원칙이 필요한데, 그게 바로 SOLID다. SOLID S - SRP(Single Responsibility Principle): 단일책임법칙 소프트웨어 시스템이 가질 수 있는 최적의 구조는 시스템을 만드는 조직의 사회적 구조에 커다란 영향을 받는다. 각 소프트웨어 모듈은 변경의 이유가 하나, 단 하나여야만 한다. O - OCP(Open-Closed Principle): 개방-폐쇄 원칙 기존코드를 수정하기 보다는 반드시 새로운 코드를 추가하는 방식 시스템의 행위를 변경할 수 있도록 설계해야만..
- Total
- Today
- Yesterday
- Mongoose
- RDBMS
- 디지털디톡스
- 스마트폰중독
- 미완
- vscode
- typeORM
- 개발용어
- Nest.js
- IT용어
- node.js
- MySQL
- git
- 갓생살자
- nestjs jest
- Jekyll
- 나도 할 수 있다
- jest
- nestjs
- 한달어스
- OS
- TDD
- MongoDB
- 참고
- TypeScript
- 바이트디그리
- 클린아키텍쳐
- gem
- 한달독서
- 습관개선
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |