도서(Book)

클린아키텍처 - 1. 설계와 아키텍처란?

먹보 개발자 2024. 9. 26. 09:57

서문 중 인상 깊었던 내용은

'아키텍처의 규칙은 동일하다'

새로운 언어, 새로운 프레임워크, 패러다임만 바뀌었을 뿐이지 소프트웨어의 아키텍처는 예나 지금이나 일관된 규칙을 갖고있다는 점이 새로웠다.

 

1-1. 설계와 아키텍처란? (둘 사이에 아무런 차이는 없다)

'설계'는 저수준의 구조 또는 결정사항 등을 의미한다.

'아키텍처'는 저수준의 세부사항과는 분리된 고수준의 무언가를 가리킬때 사용

 

고수준에서 저수준으로 향하는 의사결정의 연속성만이 있을 뿐이다.

 

소프트웨어 아키텍처의 목표는 필요한 시스템을 만들고 유지보수하는 데 투입되는 인력을 최소화 하는 데 있다.

 

빨리가는 유일한 방법은 제대로 가는것이다. 

 

 

1-2 두 가지 가치에 대한 이야기

소프트웨어가 가진 본연의 목적을 추구하려면 소프트웨어는 반드시 '부드러워'야 한다. = 변경하기 쉬워야한다.

 

완벽하게 동작하지만 수정이 불가능한 프로그램  vs 동작은 하지 않지만 변경이 쉬운 프로그램

 

* 확장하기 쉬운 아키텍처를 만들자, 아키텍처가 후순위가 되면 시스템 개발 비용이 많이 들고 시스템 변경이 어려워진다. 즉 옳은 가치를 위한 투쟁을 충분히 하지 않았다는 것이다.