Review/Book

멀티패러다임 프로그래밍 서평

Dev Lighthouse 2025. 5. 30. 16:35
320x100
320x100

멀티패러다임 프로그래밍 - 유인동 (한빛미디어)

 

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

 

도서정보

  • 발행일: 2025년 4월 21일
  • 출판사: 한빛미디어
  • 저자: 유인동
  • 총 페이지: 512

책 추천 포스트 - SNS

먼저 LinkedIn에서 본 저자이신 유인동님의 책 소개 글을 인용하면서 서평을 시작해본다.

유인동님은 마플코퍼레이션의 CTO이자 22년차 소프트웨어 엔지니어..!

유인동님의 책 소개

책을 추천하는 이유들만 봐도 꼭 읽어야겠다는 생각이 들었다!!

그리고 다른 분의 이 책을 극찬하는 포스팅도 봤다.

다른 책들도 뒤쳐지지 않을 정도로 좋은 책들인데 단연코 유인동님의 멀티패러다임 프로그래밍 책을 가장 추천한다고 하셨다.

 

책을 열어보면 추천의 말을 볼 수 있었는데

코드박스 CEO 서광열님, 마플코퍼레이션 테크리드 조현우님, 마플코퍼레이션 테크리드 김재민님, [실전 리액트 프로그래밍] 저자 이재승님, 인프랩 CTO 이동욱님, 네이버 프런트엔드 개발자 장기효님, 플렉스 프런트 엔지니어 편해걸님, 플렉스 백엔드 엔지니어 김영준님, [면접을 위한 CS 전공지식] 저자 주홍철님, 토스 프런트엔드 헤드 박서진님, 스모어톡 CTO 조현영님, 당근 기술위원회 백병한님, 코발트 CTO 이선협님, 마플개발대학 구독자 리뷰어

이름만 들어도 아주 유명한 분들께서 이 책을 추천해주시는 추천글도 볼 수 있었다.

 

독서

첫 시작 & 끝

책은 2주정도에 걸쳐서 봤다.

처음 독서 시작은 산뜻한 노래를 함께 들으며 출발 ~ 🎵

마지막 독서 끝은 노트북을 쓸 수 있는 학교 도서관에서 새벽 2시 다 되어갈 때까지 봤다~!

5/30일은 내 생일이었는데.... 생일파티 대신 개발 도서와 함께 정오를 넘어 새벽까지 함께했다.

Typescript는 FE를 할 때랑, Nest 할때 조금 써보고 커리어 내내는 Springboot를 Java,Kotlin으로 개발했는데..

TS로 BE를 해도 매우 재밌을 것 같다는 생각이 들었다!

 

책 서평

객체지향, 함수형, 명령형의 통합적 사고로 구현하는 소프트웨어 설계와 구현

인사이트 한 마디

책을 끝까지 보고 난 후, 가장 인상깊었던 문구는 "구조 문제는 객체지향으로, 로직 문제는 함수형으로 해결하기" 였다.

 

- 1장: 책은 현대 프로그래밍 언어가 멀티패러다임으로 발전하게 된 시작점과 교착점을 이야기하며 시작한다.

- 2장: LISP 라는 함수형 프로그래밍 언어로 함수형 언어의 장점, 타입 추론, 함수 타입, 제네릭 개념과 활용 방법을 알아본다. 그리고 메타 프로그래밍이란 무엇이고, 그 역할은 무엇인지 논의한다.

- 3장: 코드, 객체, 함수의 관계와 IP(명령형), OOP(객체지향), FP(함수형) 각각에서 어떻게 사용되는지 설명한다. 이 장에서는 하스켈 언어가 나오며 지연 평가, Generator, Iterator, 합성을 구현하고 활용하는 방법에 대해 배운다.

- 4장: 비동기 프로그래밍의 중요성과 다양한 모델을 알아보며, 비동기 작업의 결과를 값으로 다루며 가독성과 유지보수성을 높이는 방법을 배우며 비동기에서의 지연 평가 방법도 알아본다.

- 5장: 실전 함수형 프로그래밍에 대해서 배워본다. 함수형으로 알고리즘 문제 풀기, 백엔드 프로그래밍(스케줄러), 리스트 프로세싱 패턴화를 통해 실전 감각을 익혀본다. 이 장에서 마플코퍼레이션 현우님의 FxTS 라이브러리가 나온다! 얼마나 기쁠까.. 내 책에 같은 회사 동료분이 개발한 우리 회사의 라이브러리를 싣는 느낌은..!?

- 6장: HTML 템플릿 엔진, 동시성 핸들러를 만들면서 여러 패러다임을 조합한 프로그래밍을 배운다. 객체지향, 함수형, 명령형을 언제 어느 상황에서 조합해야 하는지 명확한 가이드를 받을 수 있었다.

- 7장: Setting App, Todo App을 만들고 발전시켜보면서 객체지향설계를 기반으로 한 프런트엔드 개발과 멀티패러다임 프로그래밍 패턴을 배워 볼 수 있다.


전반적으로 책 내용이 정말 좋았고, 구성도 짜임새 있게 되어있다고 생각한다.

그리고 나는 책에서 저자님의 생각 흐름도 볼 수 있어서 정말 좋았다!!

생각흐름 -> 독자에게 질문하는 느낌

저자분이 독자와 소통하는 것 같은 느낌으로 [왜 ~하지 않을까?], [가상의 예시] 등을 들어서 왜 그렇게 하지 않았는지에 대한 설명을 위한 빌드업을 느낄 수 있었다.

리마인드

반복적으로 요약해주기도 하였다.

ECMAScript History For Promise

JS/TS에 필수적인 Promise가 ES의 역사와 함께 어떻게 발전해왔나 알아볼 수 있었다.

Java로 치면 Future, CompletableFuture 등을 예로 들 수 있을 것 같다.

 

꿀팁!!

마..플 ..코퍼레이션에 면접을 앞두고 있다면 꼭! 위 질문들을 미리 준비하고 가면 좋을 것 같다..!!

그만큼 책에 저자님의 생각과 경험이 녹아있으니, 꼭 구매해서 더 많은 꿀팁들을 얻어가면 좋겠다.

연습 문제

제공되는 설명과 코드에 지쳐있는 당신을 위한 연습 문제도 있다. FE개발자라면 꼭 도전해보기!

Chat GPT 사용 & 개선

취준 or 현업 개발자를 막론하고 ChatGPT한테 코드 생성을 요청하고 우리는 가져다 쓴다. 근데 그 코드가 정말 좋은 퀄리티일까?에 대해서는 각각 생각이 다르다. 그리고 이 책에서도 실제 현업에서 일어날 것 같은 프롬프트 -> 개선 작업을 직접 저자님의 생각 + 코드와 함께 배워볼 수 있었다.

 

5, 6, 7장에서는 1~4장에서 배운 내용들을 토대로 실무에서 활용할법한 코드를 작성해보거나, HTML 템플릿 엔진을 만들고 고도화를 하기도 하고, 객체지향과 함수형을 적절히 섞어 고수준의 Todo App을 1->2->3단계로 업그레이드 해보며 멀티 패러다임 프로그래밍을 배웠다.

FxTS 라이브러리

FxTS

5장에서 제일 부러웠기도 하고 신기했던 것은 같은 회사에 계신 마플코퍼레이션 조현우님의 FxTS 라이브러리였다.

얼마나 기쁠까.. 내 책에 같은 회사 동료분이 개발한 우리 회사의 라이브러리의 사용법을 적는 것은!?

궁금하면 여기로 -> https://github.com/marpple/fxts

 

GitHub - marpple/FxTS: A functional programming library for TypeScript/JavaScript

A functional programming library for TypeScript/JavaScript - marpple/FxTS

github.com

이 FxTS를 사용하기도 하고, 사용 안하기도 하면서 리스트 프로세싱을 디자인패턴처럼 패턴화하여 여러 비즈니스 요구사항들을 A-B 패턴 형태로 소개해주기도 한다.

 

Kotlin's Multi Paradiam Programming

코틀린 멀티 패러다임 프로그래밍

책에 수많은 언어들이 나오지만 코틀린에 대한 내용이 없어서 아쉬울 코틀린 기반 백엔드/안드로이드 개발자분들을 위해서 저자님이 따로 Repository를 파주시기도 하셨다!!

궁금하시면 -> https://github.com/marpple/kotlin-multi-paradigm-iteration

 

GitHub - marpple/kotlin-multi-paradigm-iteration: 코틀린 멀티패러다임 이터레이션

코틀린 멀티패러다임 이터레이션. Contribute to marpple/kotlin-multi-paradigm-iteration development by creating an account on GitHub.

github.com

 

 

유인동님 유튜브

유인동님 유튜브

끝으로 저자님의 유튜브도 한번 알려드리며 오지랖(?) 넓은 서평을 마무리하고자 한다.

 

마치며

나도 두고두고 다시 읽어볼 정말 좋은 책을 한 권 찾은 것 같아 기쁘다!!

2025년 올 한 해 시간이 충분하다면 책을 n번 더 읽어보고 싶다.

그리고 Kotlin의 멀티 패러다임 이터레이션도 살펴볼 예정이다.

좋은 책을 만들어주신 유인동님께 감사드린다.

320x100