유연한 소프트웨어를 만드는 설계 원칙 - 막다른 골목 없이 진화하는 시스템 개발하기
크리스 핸슨.제럴드 제이 서스먼 지음, 류광 옮김 / 한빛미디어 / 2022년 3월
평점 :
장바구니담기


※ 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

이번 도서 후기는 소프트웨어 철학과 설계 원칙에 대해 배울 수 있는 도서이다.

소프트웨어를 만드는 개발자들은 어떻게 하면 완성도 있는 소프트웨어를 개발할 수 있을까라는 고민은 늘 해오고 있을 것이다.

시간이 흐름에 따라 복잡하지만 견고하고 완성도 있는 시스템을 설계하는 것은 많은 경험과 고민, 그리고 기술과 숙련이 필요하다.

이 책은 총 8장으로 구성되어 있다.

1장에서는 프로그래밍 철학을 소개하는데, 유연성이라는 주제를 통해 여러 기법을 소개한다.

2장에서는 DSL을 통해 시스템을 구축하는 방법을 통해 DSL 개발을 위한 기본 수단들을 개발하는 방법과 이를 통해 하위 시스템을 조합하고 조직하는 방법을 다룬다.

3장에서는 일반 프로시저를 소개하여 산술 패키지를 확장하는 방법과 데이터에 형식 태그를 적용하여 일반화의 호율성을 높이는 방법의 기법을 배울 수 있다.

4장에서는 패턴 부합이라는 주제로 항 재작성 시스템을 구현하는 방법을 알아보고, 통합을 통해 형식 추론을 구현하는 방법도 알아본다.

5장에서는 해석과 컴파일, 프로시저를 사용하는 방법을 알아본다.

6장에서는 계층적 데이터와 프로시저들을 통해 시스템을 구축하는 방법을 알아본다.

7장에서는 전파에 대해 소개하여 전파 매커니즘, 다중대안 세계관, 값 병합 등에 대해 소개한다.

이 책은 스킴(Scheme) 언어를 통해 코드를 설명하고 연습 문제를 다루기 때문에 나에게는 많이 어려웠던 책이다.

그리고 읽는 내내 이해하기 어려운 내용들도 많았었다.

하지만 스킴(Scheme) 언어에 대한 기본 이해가 있으신 개발자분들은 나와 다르게 이해하기 수월하지 않을까라는 생각이 든다.

원천 시스템을 설계하기 위한 여러 프로그래밍 기법과 철학을 배울 수 있어 여러번 반복하다보면 유연성있는 시스템을 만들어 가는데 도움을 받을 수 있지 않을까 싶다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo