본문 바로가기

책/클린 아키텍쳐 (완)

1부 소개

1장 설계와 아키텍쳐란?

  • 우선 첫째로 주장하고 싶은 바는 둘(설계, 아키텍쳐) 사이에는 차이가 없다는 점이다.
  • 개별로는 존재할 수 없고, 실제로 이 둘을 구분 짓는 경계는 뚜렷하지 않다.

무엇이 잘못되었나?

  • 이들 개발자는 "코드는 나중에 정리하면 돼. 당장은 시장에 출시하는게 먼저야!" 라는 흔해 빠진 거짓말에 속는다.
  • 엉망으로 만들면 깔끔하게 유지할 때보다 항상 더 느리다. 시간 척도를 어떻게 보든지 관계없이 말이다.
  • 빨리 가는 유일한 방법은 제대로 가는 것이다.

2장 두가지 가치에 대한 이야기

행위

이들은(프로그래머) 요구사항을 기계에 구현하고 버그를 수정하는 일이 자신의 직업이라고 믿는다. 슬픈 일이지만 그들은 틀렸다.

 

아키텍쳐

  • 소프트웨어가 가진 본연의 목적을 추구하려면 소프트웨어는 반드시 '부드러워'야 한다. 다시 말해 변경하기 쉬워야 한다.
  • 이러한 변경사항을 적용하는 데 드는 어려움은 변경되는 범위에 비례해야 하며, 변경사항의 형태와는 관련이 없어야 한다.
  • 문제는 당연히 시스템의 아키텍쳐다. 아키텍처가 특정 형태를 다른 형태보다 선호하면 할수록, 새로운 기능을 이 구조에 맞추는 게 더 힘들어진다. 따라서 아키텍처는 형태에 독립적이어야 하고, 그럴수록 더 실용적이다.

아키텍처를 위해 투쟁하라

하나만 기억하자. 아키텍처가 후순위가 되면 시스템을 개발하는 비용이 더 많이 들고, 일부 또는 전체 시스템에 변경을 가하는 일이 현실적으로 불가능해진다.

 

 

 

' > 클린 아키텍쳐 (완)' 카테고리의 다른 글

6부 세부사항  (0) 2024.05.31
5부 아키텍처  (0) 2024.05.02
4부 컴포넌트 원칙  (0) 2024.04.30
3부 설계원칙  (1) 2024.04.27
2부 벽돌부터 시작하기: 프로그래밍 패러다임  (0) 2024.04.01