본문 바로가기

Study/Book2

[Clean Architecture] 2부를 읽고 정리하며 생각해보기 1. 구조적 프로그래밍 제어흐름의 직접적인 전환에 대한 규칙 부과 최초로 적용된 패러다임이다. goto문을 제거하며 점프들을 if, then, else, do, while, until로 대체한다. 모듈 기반 알고리즘에 활용한다. 프로그래밍에도 과학적, 수학적원리를 적용할 수 있을까? 유클리드 계층 구조는 증명 없이 참으로 받아들이는 명제이다. 이 구조를 코드와 결합시켜 코드가 올바르다는 사실을 스스로 증명하는 방식으로 프로그램에 적용했다. 단, 이러한 제어구조는 순차적으로 실행되어야 한다. 이를 통해 모든 프로그램을 순차, 분기, 반복 3가지 구조로 표현할 수 있다는 것을 증명했다. 2. 객체 지향 프로그래밍 제어흐름의 간접적인 전환에 대해 규칙 부과 함수 포인터를 제거하며 객체로 대체한다. 함수 호출 .. 2022. 6. 20.
[Clean Architecture] 1부를 읽고 정리하며 생각해보기 로버트C. 마틴의 Clean Architecture는 개발자 필독서라고 불리는 책 중 하나이다. 이 책을 공부하면서 이해가 되지 않는 부분이나 나의 궁금증을 함께 정리해보고자 한다. 필독서라고 해도 다양한 의견이 존재할 수는 있지 않을까..? 저자가 이 책을 쓰게 된 이유에 대해 지금까지 구축한 다양한 시스템들이 있지만 이들은 모두 비슷한 아키텍처 규칙을 공유한다. 따라서 소프트웨어 아키텍처의 규칙은 다른 모든 변수에 독립적이다. 반세기 동안 하드웨어는 많이 변해온 것에 비해, 소프트웨어는 여전히 순차, 분기, 반복의 집합체이다. 좋은 소프트웨어 설계의 목표? 프로그램을 동작하게 만드는 것과 제대로 만드는 일은 전혀 다르다. 제대로 된 소프트웨어를 만들면 최소한의 노력으로 기능과 유연성을 최대화할 수 .. 2022. 6. 20.