닭발개발

[클린코드] 23일차. 206-215pg | DSL, 깨끗한 아키텍쳐 본문

책책책 책을 읽읍시다‼ ver.개발/[ 클린코드 ]

[클린코드] 23일차. 206-215pg | DSL, 깨끗한 아키텍쳐

D269 2023. 9. 30. 10:20
728x90

 

23일차.

클린코드[4주차_ 금요일]
206-215pg 



#요약

11. 시스템

1) 도시를 세운다면?

2) 시스템 제작과 시스템 사용을 분리하라.

3) 확장

* 자바에서 사용하는 관점 or 관점과 유사한 메커니즘 3개

a. 자바 프록시

b. 순수 자바 AOP 프레임워크

c. AspectJ 관점 : 관심사를 관점으로 분리하는 가장 강력한 언어도구, 언어 차원에서 관점을 모듈화 구성으로 지원하는 자바 언어 확장. 

 

4) 테스트 주도 시스템 아키텍쳐 구축

- 코드 수준에서 아키텍쳐 관심사를 분리할수 있으면 진정한 테스트 주도 아키텍처 구축이 가능해진다.

 

5) 의사결정을 최적화하라

- 의사결정을 최대한 미루는게 최선이며, 가장 적합한 사람에게 의사결정을 맡기면 좋다.

 

6) 명백한 가치가 있을 때 표준을 현명하게 사용하라

- 여러 형태로 아주 과장되게 포장된 표준에 집착하는 것은 안좋다.

 

7) 시스템은 도메인 특화 언어가 필요하다.

- 최근 DSL(Domain Specific Language)이 조명 받는데,

- DSL : 간단한 스크립트 언어나 표준 언어로 구현한 API

- 좋은 DSL은 도메인 개념과 그 개념을 구현한 코드 사이에 존재하는 '의사소통 간극'을 줄여준다.

 

8) 결론

- 깨끗하지 못한 아키텍쳐는 도메인 논리를 흐리며 기민성을 떨어뜨린다.

 

 

 

12. 창발성

 

 

 

 

728x90
반응형