메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

패턴으로 익히고 설계로 완성하는 리액트

TDD와 리팩터링으로 만드는 효율적이고 유지보수 가능한 클린 코드

한빛미디어

번역서

판매중

  • 저자 : 준타오 추
  • 번역 : 정재명
  • 출간 : 2025-02-14
  • 페이지 : 356 쪽
  • ISBN : 9791169213417
  • eISBN : 9791169219020
  • 물류코드 :11341
  • 초급 초중급 중급 중고급 고급
4.8점 (17명)
좋아요 : 10

프런트엔드 개발의 복잡성을 해결하고 
유지보수하기 쉬운 코드를 작성하는 핵심 노하우

 

리액트를 활용한 대규모 애플리케이션 개발은 비동기 처리, 상태 관리, 성능 최적화 등 다양한 도전을 동반합니다. 이 책은 리액트 개발에서 자주 발생하는 안티패턴을 정의하고, 이를 검증된 설계 원칙으로 해결하는 방법을 제시합니다. 실용적인 예제와 단계별 접근으로 코드 구조를 개선하고 TDD, 설계 원칙을 통해 신뢰할 수 있는 애플리케이션을 만드는 법을 배웁니다. 또한, 날씨 애플리케이션 프로젝트를 통해 배운 내용을 실전에 직접 적용해 볼 수 있습니다. 이 책은 리액트 개발자에게 견고하고 확장 가능한 애플리케이션을 만드는 확실한 길잡이가 될 것입니다.

 

준타오 추 저자

준타오 추

15년 이상 소프트웨어 개발 분야에서 경력을 쌓아 온 전문가로, 개발자들이 유지보수하기 쉬운 코드를 작성할 수 있도록 돕는 데 열정을 쏟고 있습니다. 『Maintainable React』(2022)와 『Test-Driven Development with React and TypeScript』(Apress, 2023) 등을 집필하며, 지속적으로 자신의 전문성을 공유하고 있습니다.

정재명 역자

정재명

브라우저에서 즉각적으로 결과를 확인할 수 있는 자바스크립트의 매력에 이끌려 프런트엔드 개발자의 길을 걷게 되었습니다. 특히 자바스크립트의 함수형 프로그래밍 패러다임을 통해 새로운 관점의 프로그래밍을 발견하게 되었고, 이를 깊이 있게 탐구하며 개발자로서의 역량을 넓혀가고 있습니다.

[PART 1 리액트 기본 개념]

 

CHAPTER 1 리액트 안티패턴 소개 
_1.1 UI 구축의 어려움에 대한 이해 
_1.2 상태 관리의 이해
_1.3 예외 흐름 탐색하기 
_1.4 리액트의 일반적인 안티패턴 살펴보기

 

CHAPTER 2 리액트 필수 개념 이해 
_2.1 리액트 정적 컴포넌트
_2.2 prop이 있는 컴포넌트 만들기 
_2.3 UI를 여러 컴포넌트로 나누기 
_2.4 리액트 내부 상태 관리 
_2.5 렌더링 과정 이해하기 
_2.6 많이 사용되는 리액트 훅

 

CHAPTER 3 리액트 애플리케이션 구조 
_3.1 구조화되지 않은 프로젝트의 문제점 
_3.2 프런트엔드 애플리케이션의 복잡함에 대한 이해 
_3.3 일반적인 리액트 애플리케이션 구조 
_3.4 프로젝트 구조를 체계적으로 유지하기

 

CHAPTER 4 리액트 컴포넌트 설계하기 
_4.1 단일 책임 원칙
_4.2 중복 배제 원칙 
_4.3 합성 활용하기 
_4.4 컴포넌트 설계 원칙의 결합

 

[PART 2 테스팅 기법]

 

CHAPTER 5 리액트 테스팅 
_5.1 테스트가 필요한 이유
_5.2 여러 종류의 테스트 알아보기 
_5.3 Jest로 하는 개별 단위 테스팅
_5.4 통합 테스트 
_5.5 Cypress를 이용한 E2E 테스트

 

CHAPTER 6 일반적인 리팩터링 기법 살펴보기
_6.1 리팩터링 이해하기 
_6.2 리팩터링 전 테스트 추가하기 
_6.3 변수 추출하기 
_6.4 반복문을 파이프라인으로 바꾸기 
_6.5 함수 추출하기 
_6.6 매개변수 객체 도입
_6.7 조건문 분해하기 
_6.8 함수 이동하기

 

CHAPTER 7 리액트에서의 테스트 주도 개발 
_7.1 TDD 이해하기
_7.2 태스킹 이해하기
_7.3 온라인 피자 가게 애플리케이션
_7.4 애플리케이션 요구사항 세분화
_7.5 애플리케이션 헤드라인 구현
_7.6 메뉴 목록 구현 
_7.7 장바구니 만들기 
_7.8 장바구니에 아이템 담기 
_7.9 애플리케이션 리팩터링

 

[PART 3 비즈니스 로직과 디자인 패턴 알아보기]

 

CHAPTER 8 리액트 데이터 관리
_8.1 비즈니스 로직 누수 현상
_8.2 ACL(오류 방지 계층)
_8.3 Prop Drilling 문제 살펴보기
_8.4 Context API를 통한 Prop Drilling 문제 해결

 

CHAPTER 9 리액트 설계 원칙 적용 
_9.1 단일 책임 원칙 
_9.2 의존관계 역전 원칙 
_9.3 명령과 조회 책임 분리 원칙

 

CHAPTER 10 합성 패턴 
_10.1 고차 컴포넌트를 통한 합성의 이해
_10.2 리액트 훅
_10.3 드롭다운 목록 컴포넌트 만들기
_10.4 헤드리스 컴포넌트 패턴

 

[PART 4 실무에서의 구현]

 

CHAPTER 11 리액트 계층 구조 애플리케이션 
_11.1 리액트 애플리케이션의 진화
_11.2 코드 오븐 애플리케이션 개선하기
_11.3 장바구니 컴포넌트 구현
_11.4 계층 구조 알아보기

 

CHAPTER 12 E2E 프로젝트 구현하기 
_12.1 날씨 애플리케이션에 필요한 요구사항 확인
_12.2 초기 승인 테스트 작성
_12.3 도시 검색 기능 구현
_12.4 ACL 구현
_12.5 즐겨찾기 추가 기능 구현 
_12.6 애플리케이션 재실행 시 이전 날씨 데이터 불러오기

 

CHAPTER 13 리액트 안티패턴 원칙 돌아보기 
_13.1 일반적인 안티패턴 돌아보기
_13.2 디자인 패턴 훑어보기
_13.3 기본 설계 원칙 복습하기 
_13.4 기법과 실무 예제 정리

리액트 프로젝트의 품질을 한 단계 끌어올리는 실무 가이드 


이 책은 리액트의 기본 사용법을 넘어, 실무에서 마주치는 설계 문제를 해결하기 위한 가이드를 제공합니다. 컴포넌트 설계, TDD, 리팩터링, 그리고 패턴 기반 설계 원칙을 다루며, 유지보수성과 확장성이 뛰어난 애플리케이션을 구축하는 방법을 배울 수 있습니다. 단순한 이론에 그치지 않고, 실전 예제를 통해 설계와 테스트의 중요성을 자연스럽게 이해하며, 복잡한 문제를 해결할 수 있는 실용적인 방법을 익힐 수 있습니다.
 

리액트 프로젝트의 구조화, 상태 관리, 계층화된 아키텍처 설계 등 대규모 애플리케이션 개발 전략을 다룹니다. 또한, 안티패턴의 분석과 해결 방법, 명령과 조회 책임 분리(CQRS), 합성 패턴과 같은 고급 설계 기법까지 체계적으로 제시하여 리액트 개발자에게 필요한 실용적인 지식을 제공합니다.


초보 개발자에게는 탄탄한 기초를 제공하고, 경험 많은 개발자에게는 실력을 한 단계 더 발전시킬 기회를 제공하는 이 책은, 모든 리액트 개발자에게 실질적인 도움을 줄 것입니다.

리액트에 대한 많은 책들이 있지만 이번에 읽어본 "패턴으로 익히고 설계로 완성하는 리액트" 책은 리액트 문법 + 구조 + 설계 방식을 공부할 수 있는 책으로 리액트를 좀더 고급스럽게 사용할 수 있게 도움을 주는 책이라고 생각합니다.

 

리액트를 쓰면서 설계 방식의 실수, 추가적인 요구 사항으로 인해 코드가 점점 복잡해지고 구조적으로 문제가 발생할때가 있는데 해당 내용을 해결하는 방법은 솔직히 어렵고 어떻게 해야 할지 모를때가 있을때 "패턴으로 익히고 설계로 완성하는 리액트" 책을 통해 해당 문제의 해결 방법을 찾을 수가 있습니다.  

 

​"패턴으로 익히고 설계로 완성하는 리액트" 책의 주요 목차는 다음과 같습니다. 
총 4개의 파트 13개의 Chapter로 구성되어 있습니다.

 

PART1. 리액트 기본 개념
CHAPTER 1. 리액트 안티패턴 소개
CHAPTER 2. 리액트 필수 개념 이해
CHAPTER 3. 리액트 애플리케이션 구조
CHAPTER 4. 리액트 컴포넌트 설계하기

 

PART2. 테스팅 기법
CHAPTER 5. 리액트 테스팅
CHAPTER 6. 일반적인 리팩터링 기법 살펴보기
CHAPTER 7. 리액트에서의 테스트 주도 개발

 

PART3. 비즈니스 로직과 디자인 패턴 알아보기
CHAPTER 8. 리액트 데이터 관리
CHAPTER 9. 리액트 설계 원칙 적용
CHAPTER 10. 합성 패턴

 

PART4. 실무에서의 구현
CHAPTER 11. 리액트 계층 구조 애플리케이션
CHAPTER 12. E2E 프로젝트 구현하기
CHAPTER 13. 리액트 안티패턴 원칙 돌아보기 
처음부터 읽어도 좋고 각 PART 중심으로 읽어도 좋을 구성으로 되어 있습니다. 저는 PART2 는 건너 띠고 PART1, PART3  으로 읽어 보았는데 읽는데 큰 문제가 없었습니다.


"패턴으로 익히고 설계로 완성하는 리액트" 책은 하나의 주제를 아래와 같이 구성하고 있습니다. 
각 주제의 핵심 설명,  기술적 요구사항, 주제에 대한 예제와 설명, 요약으로 구성되어 있으며 각 구성과 예제 소스를 개선하면서 각 목차의 핵심을 파악할 수 있도록 되어 있습니다.
그리고 리액트를 공부했다면 책에 설명된 예제 코드를 보고 어떻게 구성되어 있고 그리고 어떤 내용을 이야기 하고 있는지 쉽게 감을 잡을 수 있다고 생각합니다. 해당 내용을 책을 보면서 설명을 보면 왜 해당 방식으로 변경 및 설계 방식을 설명하는지 느낄 수 있을 겁니다.

 

"패턴으로 익히고 설계로 완성하는 리액트" 책은 리액트 기초, 기본 책을 공부한 후에 읽어보면 좋을 책 입니다.  리액트를 모르는 사람이라면 다른 리액트 책을 읽어본 후에 해당 책을 꼭 읽어 보면 좋을 것 같습니다.  어렵게 생각했던 부모에서 자식으로의 데이터 전송, 컴포넌트간의 구조, 테스트 등 리액트 기초 책을 읽고 프로젝트를 했을때  부딛치게 되는 리액트의 개선 방향 및 설계 방식에 대하여 확실히 학습 할 수 있는 책 입니다. 
좀더 고급스럽게 좋은 구조로 리액트 코드를 작성하려고 한다면 "패턴으로 익히고 설계로 완성하는 리액트 " 책의 공부는 필수라고 생각합니다.

 

리액트 기초 공부후에 해당 책을 꼭 읽어 보기를 추천합니다.  고급스럽게 리액트를 프로그래밍 할 수 있습니다. 

 

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

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

들어가며

웹 프론트엔드 개발자로 일하다 보니 리액트를 일상적으로 다루게 됩니다. 코드를 작성하며 자주 드는 생각이 있습니다. '설계부터 잘 해놓았으면 이렇게 변경사항이 많지 않았을텐데'라는 아쉬움이죠. 프로젝트가 진행될수록 코드 재사용성을 높이는 방법에 대한 고민도 깊어집니다.

목차

웹 프론트엔드 프로젝트 개발을 하면서 리액트를 라이브러리를 다룰일이 많은데요. 코드를 작성하며 자주 드는 생각이 있습니다. '설계부터 잘 해놓았으면 이렇게 변경사항이 많지 않았을텐데'라는 아쉬움이죠. 프로젝트가 진행될수록 코드 재사용성을 높이는 방법에 대한 고민도 깊어집니다. 이 책의 제목 "패턴으로 익히고 설계로 완성하는 리액트"는 그런 제 관심사와 정확히 맞닿아 있어 궁금증을 불러일으켰습니다. 특히 소규모 프로젝트에 익숙했던 제가 회사에서 대규모 프로젝트를 처음 접하게 되면서, 어떤 설계 패턴이 유용할지에 대한 고민이 더욱 커졌습니다. 이 책을 통해 리액트 프로젝트의 구조를 체계적으로 잡는 방법, 리팩토링 기법, 그리고 실무에서 효과적인 설계 원칙을 배울 수 있을 것이라는 기대가 생겼습니다.

주요 내용

이 책은 리액트 개발에서 흔히 마주치는 문제들을 설계 원칙과 패턴으로 해결하는 방법을 다룹니다. 단순히 리액트 문법을 알려주는 책이 아니라, 대규모 애플리케이션을 개발할 때 부딪히는 비동기 처리, 상태 관리, 성능 최적화 같은 실질적인 도전 과제에 대한 해결책을 제시합니다. 안티패턴을 정의하고 이를 검증된 설계 원칙으로 개선하는 과정을 통해 유지보수가 용이한 코드를 작성하는 노하우를 배울 수 있죠. 특히 책에서는 TDD와 리팩터링을 강조하며, 날씨 애플리케이션이나 온라인 피자 가게와 같은 실전 프로젝트를 통해 이론을 실습해요.

특징

이 책의 가장 큰 특징은 리액트의 기본 사용법을 넘어 소프트웨어 설계 원칙을 깊이 있게 탐구한다는 점입니다. 단일 책임 원칙, 의존관계 역전 원칙, 명령과 조회 책임 분리 원칙 등 객체지향 설계 원칙을 리액트에 적용하는 방법을 상세히 설명합니다. 또한 고차 컴포넌트, 헤드리스 컴포넌트 패턴 같은 고급 패턴도 다루고 있죠. 책은 크게 4부로 구성되어 있는데요. 1부에서는 리액트의 기본 개념을, 2부에서는 테스팅 기법을, 3부에서는 비즈니스 로직과 디자인 패턴을, 4부에서는 실무에서의 구현을 다룹니다. 이런 구성을 통해 독자들이 단계적으로 지식을 쌓아갈 수 있도록 한 것 같아요. 특히 테스트 주도 개발(TDD)과 리팩토링에 많은 내용을 다루고 있어서, 견고하고 신뢰할 수 있는 코드를 작성하는 방법을 배울 수 있습니다.

추천 이유와 대상

이 책은 리액트의 기본기를 익힌 후, 한 단계 더 성장하고자 하는 욕심이 있는 개발자들에게 적합할 것 같아요. 리액트 입문서가 아니라 중급 이상의 개발자를 위한 실무 가이드 정도로 생각하시면 좋을 것 같습니다. 특히 프로젝트가 커질수록 복잡해지는 코드 구조와 관리에 고민이 있는 개발자들에게 큰 도움이 될 것 같아요.

맺음말

<패턴으로 익히고 설계로 완성하는 리액트>는 단순히 '어떻게' 코딩하는지가 아니라 '왜' 그렇게 코딩해야 하는지를 알려주는 책입니다. 리액트의 기본 문법은 금방 익힐 수 있지만, 확장 가능하고 유지보수하기 쉬운 코드를 작성하는 것은 또 다른 문제죠. 이 책은 그 간극을 메워주는 다리 역할을 합니다.

시간이 지날수록 더 나은 코드와 구조에 대한 고민이 깊어지는 개발자라면, 이 책을 통해 많은 인사이트를 얻을 수 있을 것입니다. 특히 TDD와 리팩터링을 통한 클린 코드 작성법은 리액트뿐 아니라 다른 프로그래밍 영역에서도 활용할 수 있는 귀중한 지식일 것이라고 생각해요. 리액트로 더 나은 소프트웨어를 만들고 싶은 모든 개발자에게 이 책을 추천합니다.

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

작년즈음부터 자바스크립트와 리액트를 공부하기 시작했는데 개발에 익숙하지 않아서 간단한 건 구현할 수 있지만 코드를 짜면서도 ‘이게 맞나? 이렇게 하는 게 맞나?’ 라는 의문이 들었던 차에 좋은 기회에 내 궁금증을 해결할 수 있는 책을 받게 되었다.

책의 목차는 검색해보면 나오기는 하지만 아래와 같이 구성되어있다.

  • 1부: 리액트 기본개념
  • 2부: 테스팅 기법
  • 3부: 비즈니스 로직과 디자인 패턴 알아보기
  • 4부: 실무에서의 구현

목차에서도 살짝 느낄 수 있듯이 처음으로 리액트를 시작하는 101 책은 아니고 리액트를 접하긴 했지만 실무 적용 경험이 없거나 실무에서 어려움을 겪는 사람이 읽으면 더욱 좋은 책으로 리액트를 접하지 않았다면 최소한 자바스크립트, 타입스크립트 코드는 작성할 수 있는 사람이 읽어야 할 듯 하다.

 

1부에서 리액트 기본개념을 짚고 넘어가는데 내가 리액트를 배우면서 제일 이거 맞나라고 생각했던 props drilling부터 자주 발생하는 안티패턴으로부터 시작해서 가려운 부분을 긁어주면서 시작하고, 그 다음부터는 리액트의 기본 개념들을 다뤄서 넘어가서 실무적인 내용으로 넘어가기 전에 리액트를 복습할 수 있게 해준다.

 

2부부터는 테스팅이나 앞서 나왔던 안티패턴을 개선할 수 있는 구체적 방법들을 제시하고 있는데 특히 테스팅 부분은 AI 도구를 통해 테스팅 코드를 작성하기 편해진 것도 있고, 기존에 경험했던 프로젝트는 개인 프로젝트이거나 개발 속도가 중요한 외주 프로젝트여서 테스트에 다소… 소홀했던 경험이 있어 많은 도움이 되었다.

 

일단 책은 많이 두껍지 않아서 읽는데 오랜 시간이 걸리지 않는 점이 좋았고, 번역도 매끄러운 편이라 번역때문에 막히지 않아서 좋았다. 그리고 무엇보다 실무에서 겪을 수 있는 안티패턴과 그에 대한 해결책을 제시하는 책이라 회사에 시니어 엔지니어가 없는 주니어 엔지니어나 나처럼 리액트를 배우긴 했고 코드도 짤 줄 아는데 이렇게 짜는게 맞나라는 의문을 가지는 리액트 사용자에게 도움이 많이 될 듯한 책.

 

마지막으로 이 책의 예시코드가 타입스크립트 기반이라서 타입스크립트를 모르거나 사용해 본적이 없다면 관련 영상을 유투브에서 보고 책을 읽으면 좋을 듯 하다(물론 몰라도 리액트를 안다면 코드 이해가 안가진 않지만 가독성을 위해..).

 

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

 

『패턴으로 익히고 설계로 완성하는 리액트, TDD와 리팩터링으로 만드는 효율적이고 유지보수 가능한 클린 코드』는 리액트의 기본 개념을 이미 숙지한 개발자들에게 한 단계 더 도약할 수 있는 강력한 무기를 제공하는 실무 가이드이다. 이 책은 단순히 리액트의 사용법이나 기초 문법에 머무르지 않고, 실제 프로젝트에서 발생할 수 있는 복잡한 문제들을 체계적으로 해결할 수 있는 설계 원칙과 패턴, 그리고 테스트 주도 개발(TDD)과 리팩터링 기법을 심도 있게 다룬다.

 

프런트엔드 애플리케이션은 점차 복잡해지면서 비동기 처리, 상태 관리, 성능 최적화 등 여러 도전에 직면하게 된다. 이러한 상황에서 유지보수가 용이한 코드를 작성하는 것은 개발자들에게 매우 중요한 과제가 된다. 책은 먼저 리액트 안티패턴에 대해 소개하면서, UI 구축 과정에서 발생하는 어려움과 상태 관리의 문제, 예외 흐름을 효과적으로 다루지 못하는 상황 등을 짚어낸다. 이를 통해 무분별하게 코드를 작성하다 보면 발생할 수 있는 문제들을 미리 인지하고, 보다 체계적인 접근을 할 수 있도록 돕는다.

 

 

▲ 79p, 컴포넌트 기반 구

 

또한, 책의 첫 번째 파트에서는 리액트의 기본 개념과 필수 원리를 다시 한 번 정리한다. 정적 컴포넌트, prop을 활용한 컴포넌트 작성, 컴포넌트 분리와 내부 상태 관리, 렌더링 과정 및 리액트 훅의 활용 등 리액트의 기초를 탄탄하게 다지며, 이를 바탕으로 대규모 애플리케이션 구조를 어떻게 체계적으로 구성할 수 있는지에 대해 설명한다. 특히, 기능 기반 구조, 컴포넌트 기반 구조, 아토믹 디자인 구조와 같이 다양한 애플리케이션 구조를 소개함으로써, 프로젝트의 복잡성을 효과적으로 관리할 수 있는 방법을 제시한다. 이러한 구조적 접근법은 단순한 개발 실력을 넘어서, 코드의 확장성과 유지보수성을 고려한 설계 능력을 배양하는 데 큰 도움이 된다.

 

 

▲ 119p, 전통적인 테스트 피라미드

 

책의 두 번째 파트에서는 리액트 테스팅 기법을 다룬다. 테스트가 왜 필요한지, 그리고 어떤 종류의 테스트(단위 테스트, 통합 테스트, E2E 테스트 등)가 존재하는지에 대해 상세히 설명한다. Jest와 Cypress와 같은 도구를 활용한 구체적인 테스트 예제를 통해, 테스트 주도 개발(TDD)의 실제 적용 방법을 익힐 수 있다. TDD는 단순히 코드를 검증하는 도구가 아니라, 코드의 설계를 개선하고 예측 가능한 동작을 보장함으로써 안정적인 애플리케이션 개발에 크게 기여한다. 리액트 개발에 익숙한 개발자라면, 테스트를 통해 자신이 작성한 코드가 실제 상황에서 어떻게 작동하는지 검증하는 과정에서 큰 인사이트를 얻을 수 있을 것이다.

 

 

▲ 193p, 데이터 변환을 위한 ACL 도입

 

세 번째 파트에서는 비즈니스 로직과 디자인 패턴에 초점을 맞춘다. 리액트 애플리케이션 개발에서 흔히 발생하는 비즈니스 로직 누수 현상, Prop Drilling 문제 등은 개발자들이 자주 겪는 난관이다. 이 책은 ACL(오류 방지 계층)이나 Context API를 통한 해결 방안을 제시하며, 단일 책임 원칙, 의존관계 역전 원칙, 명령과 조회 책임 분리 원칙 등 고급 설계 원칙을 구체적으로 다룬다. 또한, 고차 컴포넌트를 비롯한 합성 패턴과 헤드리스 컴포넌트 패턴 등 리액트의 패턴 기반 설계 기법을 통해, 보다 유연하고 확장 가능한 코드 구조를 어떻게 만들 수 있는지에 대해 실무적인 접근법을 제시한다. 이러한 내용들은 리액트의 기본 개념을 이미 이해하고 있는 개발자들에게, 기존에 무심코 사용했던 기법들의 이유와 한계를 재인식하게 하며, 보다 깊이 있는 설계 철학을 전달한다.

 

마지막 파트에서는 실무에서의 구현 사례를 통해, 책에서 제시한 이론과 설계 원칙을 실제 애플리케이션에 어떻게 적용할 수 있는지를 보여준다. 날씨 애플리케이션 프로젝트를 예로 들며, 요구사항 확인부터 초기 승인 테스트 작성, 도시 검색 기능 구현, ACL 도입, 즐겨찾기 추가 기능 구현, 그리고 재실행 시 이전 데이터를 불러오는 기능까지, 단계별로 상세한 구현 과정을 다룬다. 또한, 최종적으로 리액트 안티패턴과 디자인 패턴을 다시 한 번 복습하면서, 기법과 실무 예제를 종합적으로 정리해 주는 부분은, 현업에서 마주치는 다양한 문제들을 효과적으로 해결할 수 있는 길잡이 역할을 한다.

 

이 책은 리액트 개발의 기본 개념을 이미 잘 알고 있는 개발자들에게, 한층 더 체계적이고 견고한 애플리케이션을 구축할 수 있는 실질적인 도움을 준다. 무지성으로 익혔던 리액트의 기법과 라이브러리들이 왜 필요한지, 그리고 그 사용 이유에 대한 해답을 명확하게 제시하며, 이를 통해 코드를 작성할 때 놓치기 쉬운 구조적 문제들을 예방할 수 있도록 한다. 또한, TDD와 리팩터링 기법을 통해 코드 품질을 개선하고, 복잡한 프로젝트에서도 유지보수가 용이한 클린 코드를 작성할 수 있는 구체적인 방법들을 제공한다.

 

실무에서 프로젝트를 진행하면서 겪는 다양한 난관에 부딪힌 경험이 있는 개발자라면, 이 책에서 제시하는 설계 원칙과 패턴, 그리고 테스트 전략이 큰 도움이 될 것이다. 리액트의 기본 개념을 넘어, 대규모 애플리케이션의 구조화와 상태 관리, 성능 최적화에 대한 심도 있는 논의는, 자신의 개발 역량을 한 단계 업그레이드하는 데 필수적인 요소로 다가온다.

 

결론적으로, 『패턴으로 익히고 설계로 완성하는 리액트, TDD와 리팩터링으로 만드는 효율적이고 유지보수 가능한 클린 코드』는 리액트 개발자로서 자신의 코드 품질과 설계 능력을 극대화하고자 하는 모든 이들에게 강력히 추천할 만한 필독서이다. 이 책을 통해 단순한 코드 작성이 아닌, 체계적이고 전략적인 개발 방법론을 익히며, 견고하고 확장 가능한 애플리케이션을 구축하는 길을 찾을 수 있을 것이다.

출처: https://patiencelee.tistory.com/1223 [PatienceLee:티스토리]

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

 

 

 

먼저 저자분은 아틀라시안에서 근무를 하고 계시는 분이고 이전에도 리액트와 관련된 책을 많이 쓰셨던 분입니다.

이 책은 리액트를 단순히 배우는 것에서 그치는 것이 아니라, 어떻게 하면 더 유지보수하기 쉽고 확장 가능한 구조로 개발할 수 있을지에 대해서 설명하고 있습니다. 확실히 저자의 경험을 통해서 많은 내용이 설명되어 있다는 느낌을 받을 수 있었습니다.

 

3가지 정도로 책의 포인트를 찝어봤습니다.

 

1. 패턴을 통해 리액트를 체계적으로 익히다

이 책은 단순히 리액트에서 제공하는 API를 개념적으로만 나열하는 방식이 아니라, 실무에서 자주 사용되는 패턴을 중심으로 리액트를 학습할 수 있도록 구성되어 있습니다. 컴포넌트의 재사용성을 높이는 방법, 상태 관리를 효율적으로 하는 패턴, 성능 최적화 전략 등 실무에서 고민해야 하는 내용에 대해서 잘 다루고 있습니다.

2. 설계 원칙을 고민하게 하는 책

패턴을 익히는 것에서 끝나는 것이 아니라, 어떻게 하면 더 구조적으로 설계할 수 있을지에 대한 고민도 함께 할 수 있습니다. 디자인 패턴과 SOLID 원칙을 리액트 환경에서 어떻게 적용할 수 있는지 설명하는 부분이 좋았는데 보통 일반적인 책에서는 이에 대한 내용은 잘 다루지 않기 때문입니다.

 

 

 

3. 실무에서 바로 적용할 수 있는 내용이 많다

책에서 다루는 예제들은 실제로 개발을 하면서 접하게 될 문제들에 대한 해결책도 제시하고 있어서 실무에 바로 적용할 수 있다는 장점이 있습니다. 대부분의 사람들이 리액트로 개발을 하면서 고민했던 내용들이 많이 포함되어 있어서 공부한 내용을 실제로 회사의 코드에 녹이는 싸이클을 만들어 볼 수 있습니다.

 

총평

<패턴으로 익히고 설계로 완성하는 리액트>는 단순히 리액트를 배우는 것이 아니라, 더 좋은 리액트 애플리케이션을 만들기 위해 어떻게 설계해야 하는지를 고민할 수 있게 도와주는 책입니다. 실무에서 자주 고민하는 문제들을 깊이 있게 다루고 있어, 리액트를 더 깊이 있게 공부하고 싶은 개발자에게 적극 추천합니다.

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

 

어느 정도 규모 있는 회사는 협업 도구로 Jira를 많이 사용합니다. Jira는 Atlassian이 개발한 이슈 추적 및 프로젝트 관리 소프트웨어입니다. 쉽게 설명하면은 일정 관리 프로그램으로 웹을 통해서 개발자뿐만 아니라 다양한 직군에서 함께 씁니다. 대체제로는 가볍게 Github Issues를 쓰기도 합니다. 하지만 한계는 분명하죠. 더불어 Trello는 칸반 보드 기반으로 많은 기업에서 사용하다가 아틀라시안이 인수한 바 있습니다. ​

 

대부분 지라 외의 대체제는 사용하는 경우가 드뭅니다. 이러한 가운데 Atlassian 개발자인 준타오 추가 패턴으로 익히고 설계로 완성하는 리액트 책이 나왔습니다. 이 책은 저자가 Atlassian Design System의 컴포넌트에 몰두 중 동료들과 디자인 패턴에 대해 고민한 흔적이 묻어 나온 책입니다. 그럼 자세히 알아보도록 하겠습니다.

 

 

1) 리액트 안티패턴 찾기

불과 10년 전만 하더라도 프런트엔드 개발이 까다롭거나 어렵게 받아드리지는 않았습니다. 당시 HTML, CSS, JavaScript가 주요 도구였으며, jQuery가 DOM 조작과 브라우저로 충분했습니다. 하지만 현재는 상황이 다르죠. 사용자가 기술에 대한 이해도가 높아져 요구사항 또한 늘어나게 됩니다. 자연스럽게 프런트엔드 개발자는 많이 필요하게 되면서 규모가 커지면 커질수록 복잡성이 배로 증가하게 됩니다. ​

 

이에 따라 새로운 기능을 추가하는데 생각보다 많은 시간이 필요하게 되고 결함을 찾아 수정하는 것도 쉽지 않게 됩니다. 이 책은 문제의 원인을 안티패턴이라고 바라봅니다. 책에서 말한 안티패턴을 이해하고 개선된 방향으로 설계 원칙을 적용하면서 설계에 대한 이해도를 높이는 책입니다.

 

 

2) 3가지 원칙

 

책에서 말한 안티패턴은 명백한 기술적 오류는 아닙니다. 처음에는 코드가 문제가 없이 잘 동작합니다. 그러다 기능이 늘어날수록 문제를 일으킬 확률이 높아집니다. 즉 역할이 늘어날수록 불안정해지면서 수정하기 까다로운 부분일 수 있습니다. 이러한 점은 설계 부분에서 잘못된 확률이 높습니다. 이 책은 리액트 컴포넌트 설계에 대해서 3가지 원칙에 대해 알려줍니다. ​

 

가장 먼저 단일 책임원칙은 각각의 컴포넌트는 하나의 특정한 목적을 가져야 함을 강조하는 원칙입니다. 이 원칙을 지키면 컴포넌트를 읽기 편할 뿐만 아니라 테스트하고 유지 보수하기 쉽습니다. 두 번째는 중복 배제 원칙인데요. 중복을 최소화하고 재사용성을 높여줍니다. 마지막으로 컴포넌트 합성 원칙은 단순하고 재사용할 수 있는 컴포넌트를 조합하여 복잡함 UI를 구성하는 데 효율적으로 사용할 수 있습니다.

 

"패턴으로 익히고 설계로 완성하는 리액트" - 서평

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

프론트엔드 개발은 정해진 패턴이 명확하지 않아 '무엇이 정석인가'라는 고민이 끊임없이 생깁니다. '패턴으로 익히고 설계로 완성하는 리액트'는 이런 고민 속에서 개발자들에게 중요한 이정표 역할을 해줍니다.

이 책은 리액트 기본 개념, 테스팅 기법, 비즈니스 로직과 디자인 패턴, 실무에서의 구현으로 구성되어 있어 이론부터 실전까지 체계적으로 배울 수 있습니다.

특히 인상적인 점은:

  • 다양한 애플리케이션 구조(기능 기반, 컴포넌트 기반, 아토믹 디자인, MVVM)를 시각적 도식과 함께 명확하게 설명
  • GitHub 레포지토리를 통해 제공되는 실용적인 예제 코드로 바로 실습 가능
  • 테스팅 라이브러리 활용법과 TDD 방법론을 구체적인 예제로 설명
  • 파편화된 코드가 아닌 하나의 완성된 애플리케이션으로 실무 적용법 제시

다른 리액트 서적들이 문법과 기능 구현에 초점을 맞추는 것과 달리, 이 책은 '패턴'과 '설계'에 집중하여 "어떻게 더 나은 구조로 설계할 것인가"에 대한 해답을 제시합니다.

이 책은 리액트 입문자보다는 하나 이상의 리액트 애플리케이션을 구축해본 경험이 있는 개발자, 특히 코드 품질과 유지보수성을 고려하는 개발자에게 적합합니다. 팀 내 스터디 교재로도 추천합니다.

실무에서 바로 적용할 수 있는 지식을 담고 있어 가볍게 읽어보기에도 정말 재미있는 책입니다.

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


영어 회화 공부에서 흔히 말하는 '패턴을 익혀서 생각 없이 말이 나오는 단계'처럼, 개발 구조나 패턴이 손에 익어야 유지보수나 확장이 수월해진다고 느꼈다. 물론 본질적으로 딥다이브를 통해 전체 구조를 온몸으로 이해하면 좋으나 그건 시간이 다소 필요한 부분이기도 해서 먼저 구조와 패턴에 익숙해지는 것도 나쁘지 않은 선택이라고 생각한다. 이 책은 그런 ‘손과 몸에 익는 구조’를 위해 실무 관점에서 React 개발자에게 필요한 개념과 패턴, 그리고 안티패턴을 구체적으로 다루고 있어 실용적인 구성이 인상 깊었다.

 

첫 번째 파트에서는 React에서 흔히 마주하는 안티패턴과 주요 개념들을 정리한다. React의 필수 개념 이해를 돕는 챕터는 상태 관리나 자주 사용되는 훅을 다루는데, 이미 익숙한 개발자라면 빠르게 훑고 넘어갈 수 있는 정도지만 초심자에게는 먼저 개념을 정리하는 데 도움이 될 것 같았다. 개인적으로는 안티패턴을 소개하는 첫 번째 챕터의 내용을 읽으며 사내 프로젝트에 적용할 수 있는 부분이 있는지 점검해 보기도 했고, 그 과정에서 평소 무심코 지나쳤던 구조의 문제를 되짚어보게 되었다.

 

주니어 개발자 입장에서 프로젝트를 처음 작업하려다 보면 구조에 대해 고민하게 되는데, 웹을 통해 접하는 글이나 영상은 마치 넷플릭스에서 컨텐츠를 고르는 것처럼 ‘뭘 좋아할지 몰라서 다 준비했어.’ 같은 느낌이라 다소 혼란스러운 경우가 많았다. 구조와 관련된 이 챕터에서는 기능 기반 구조, 컴포넌트 기반, 아토믹 디자인 구조, MVVM 구조 이렇게 네 가지만 다룬다. MVVM을 제외하고는 한 번씩은 경험해 봤던 구조였는데, 특히 최근에 잘못된 아토믹 디자인 구조가 적용된 프로젝트로 지지고 볶는 와중이라 더욱이 와닿는 챕터였다. 어쨌든 한 구조에 매몰될 필요도 없고 적당히 두 개의 구조를 섞어서 사용할 수도 있겠지만, 결국 어떤 구조든 프로젝트의 성격과 팀의 상황에 맞게 선택해야 하며 그 기준을 외부에서 찾기보다는 스스로의 판단을 기준으로 삼아야 한다고 생각한다. 완벽한 계층 구조를 가지지 못하더라도 일단 스스로 유지보수하는 데에 용이한 부분이 있다면 어느 정도는 좋은 선택이지 않을까 하는 생각을 갖고 있는데, 이 챕터가 그런 고민에 충분한 도움이 된다.

 

그다음으로는 컴포넌트 설계를 위해 단일 책임 원칙, 중복 배제 원칙, 합성 활용하기, 컴포넌트 설계 원칙의 결합을 다룬다. 사실 소프트웨어 공학의 알려진 개념들은 연차가 쌓일수록 직접 경험을 통해 체득했던 부분이 있는 것 같다. 취업을 준비하던 시기에 단일 책임 원칙을 접했을 땐 이래야 유지보수가 쉽겠다 싶은 마음으로 글을 읽어왔었는데, 막상 프로젝트를 하다 보니 주요한 원칙을 종종 놓치기도 했다. 이후에 그 원칙을 지키지 못했던 기술 부채 같은 느낌으로 비로소 유지보수의 늪에 빠져서야 그 의미가 와닿았던 경험이 있다.

 

두 번째 파트는 단위 테스트, 통합 테스트, E2E 테스트 등을 포함한 테스팅 기법을 다룬다. 테스트에 대한 전반적인 개념 정리는 물론, Jest와 Cypress 등을 활용한 실습 중심의 접근이 매우 유용했다. 아직 테스트 주도 개발(TDD)을 실무에서 적용해 본 경험은 없지만, 이 책에서는 TDD의 핵심 단계인 레드-그린-리팩터는 물론 ATDD, BDD까지 폭넓게 다뤄줘 개념을 잡는 데 도움이 되었다. 예제 프로젝트를 통해 TDD의 상향식/하향식 접근 방식을 비교해 볼 수 있는 구성으로 이해하는 데에 용이했다.

 

세 번째 파트에서는 비즈니스 로직과 디자인 패턴과 관련된 실제 업무 중 마주치는 다양한 상황에 대한 해법을 제시한다. Context API를 통한 데이터 관리와 더불어 단일 책임 원칙, 의존관계 역전 원칙 같은 익숙한 설계 원칙들도 다시 한번 실무 중심으로 조명되며, 단순히 이론적으로만 알았던 원칙들이 실제 상황에서 얼마나 중요한지 체감하는 데에 도움이 된다. 특히 합성 패턴을 다룬 10장이 인상적이었다. 고차 컴포넌트, 헤드리스 컴포넌트 등의 패턴은 복잡한 기능을 분리하고 재사용하는 데 중요한 역할을 하기 때문에 앞으로 더 많은 실무에 활용하고 싶은 부분이다. 실무와 가장 밀접한 부분이면서도 과하게 설명만 늘여놓지 않아 다시 읽는다면 이 범위 내의 내용을 실무에 적용해 보고 싶다는 생각이 들었다.

 

마지막 파트는 실무 프로젝트 구현에 가까운 흐름으로 이어간다. 특히 OpenWeatherMap API를 활용한 날씨 애플리케이션 구축 챕터는 E2E 테스트를 실제로 경험해 보고 싶은 개발자에게 훌륭한 실습 자료가 될 것 같았다. 단위 테스트가 어느 정도 익숙해졌거나 E2E를 실제로 구현해 보고 테스트해 보고 싶은 사람에게는 특히나 전반적으로 도움이 될 파트 같았다.

 

마지막 챕터에서는 다시 안티패턴을 되짚고, 앞서 나온 설계 원칙과 기법들을 종합적으로 정리한다. 실무에서 자신이 저지르고 있는 실수를 발견하거나 개선 포인트를 도출해 볼 수 있는 챕터라 반복해서 찾아보기에 적합하다. 마지막으로 앞서 언급했던 내용과 더불어 React의 안티패턴을 다시 돌아보고 그런 패턴을 피하기 위해서, 혹은 수정하기 위해서 어떤 액션을 하면 좋을지에 대한 내용이 담겨 있다. 앞서의 내용을 복습하는 일종의 요약 같은 챕터인데 본인에게 해당하는 안티 패턴이 있다면 언급된 솔루션에 맞게 해당 챕터로 다시 건너뛰어 내용을 훑어보는 방식이 적절해 보였다.

 

이 책은 단순히 React의 기능을 소개하는 데 그치지 않고, 실무에서 고민하게 되는 구조, 테스트, 패턴, 유지보수의 복잡성을 어떻게 풀어갈 수 있는지를 단계적으로 설명한다. 한 번에 모든 내용을 실전에 적용하기는 어렵겠지만, 한 챕터씩 자신이 작업 중인 프로젝트와 비교하며 천천히 소화해 본다면 분명 도움이 될 거라 생각한다. 개인적으로는 ‘지금 내가 하는 선택이 유지보수 측면에서 도움이 되는가?’를 스스로 묻게 되는 책이었다. React를 어느 정도 사용해 본 개발자라면 실무에서 한 걸음 더 나아가고 싶은 시점에 이 책을 천천히 곱씹어보기를 추천한다.

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

이번에 리뷰할 서적은 한빛미디어에서 출판된 "패턴으로 익히고 설계로 완성하는 리액트" 입니다.

도서 개요 
이 책은 리액트(React) 개발의 기초 개념부터안티패턴, 설계 원칙, 디자인 패턴, 테스트, 실무 프로젝트 구현까지 체계적으로 다루는고급 리액트 개발서입니다.  
단순히 리액트의 기본 문법을 설명하는 것이 아니라,실무에서 발생할 수 있는 문제를 예방하고, 유지보수가 쉬운 코드 구조를 만드는 방법을 중심으로 설명하고 있습니다.  
특히컴포넌트 설계, 상태 관리, TDD(테스트 주도 개발), 디자인 패턴 적용, 계층적 아키텍처 설계등의 내용을 포함하여, 
리액트 애플리케이션을체계적으로 설계하고 개선하는 방법을 배우고 싶은 개발자에게 적합한 책입니다.  


PART 1: 리액트 기본 개념

CHAPTER 1: 리액트 안티패턴 소개 
첫 장에서는리액트 개발에서 자주 발생하는 안티패턴을 소개합니다.  
- UI 구축의 어려움  
- 상태 관리 실수  
- 예외 흐름 문제  
- 일반적인 리액트 안티패턴  

이러한 내용을 설명하며,올바른 설계가 중요한 이유를 강조합니다. 초보 개발자들이 실수할 가능성이 높은 패턴들을 미리 짚어주기 때문에 매우 유용합니다.  

CHAPTER 2: 리액트 필수 개념 이해 
리액트의 기본 개념과 렌더링 원리를 다루며, 다음과 같은 내용을 포함합니다.  
- 정적 컴포넌트와 동적 컴포넌트의 차이  
- props와 state 활용  
- 렌더링 과정과 주요 리액트 훅 (`useState`, `useEffect` 등)  

리액트의 핵심 개념을 정리하는 장으로, 초보자와 중급자 모두에게 도움이 됩니다.  

CHAPTER 3: 리액트 애플리케이션 구조 
- 구조화되지 않은 프로젝트의 문제점  
- 복잡한 애플리케이션에서의 설계 원칙  
- 리액트 애플리케이션을 유지보수하기 쉬운 구조로 만드는 법  

리액트 프로젝트의디렉터리 구조와 모듈화 전략을 고민하는 개발자에게 유익한 내용이 많습니다.  

CHAPTER 4: 리액트 컴포넌트 설계하기 
- 단일 책임 원칙(SRP)  
- 중복 배제 원칙(DRY)  
- 합성(Composition) 활용  

리액트에서컴포넌트 설계를 어떻게 해야 유지보수가 쉬운 구조가 되는지에 대한 구체적인 원칙을 다룹니다. 특히합성을 통한 컴포넌트 설계는 실무에서 큰 도움이 되는 내용입니다.  


PART 2: 테스팅 기법

CHAPTER 5: 리액트 테스팅 
- 테스트의 필요성과 다양한 테스트 기법 설명  
- Jest를 활용한단위 테스트 
- Cypress를 활용한E2E(End-to-End) 테스트

리액트 애플리케이션에서테스트 자동화의 중요성을 이해하는 데 매우 유용합니다.  

CHAPTER 6: 일반적인 리팩터링 기법 살펴보기 
- 리팩터링 전 테스트 추가  
- 변수 및 함수 추출  
- 반복문 최적화  
- 조건문 분해  

코드 가독성을 높이고 유지보수를 쉽게 만드는 리팩터링 기법을 상세하게 설명합니다.  

CHAPTER 7: 리액트에서의 테스트 주도 개발(TDD) 
- TDD(Test-Driven Development)의 개념  
- 실습 프로젝트(온라인 피자 가게)  
- 요구사항 분석 → 테스트 코드 작성 → 기능 구현 → 리팩터링  

실제TDD 방식을 적용한 프로젝트 예제가 포함되어 있어, 실무에서 어떻게 활용할 수 있는지 배울 수 있습니다.  


PART 3: 비즈니스 로직과 디자인 패턴

CHAPTER 8: 리액트 데이터 관리 
- 비즈니스 로직 누수 현상 
- Prop Drilling 문제 해결  
- Context API 활용  

리액트에서상태 관리를 잘못하면 발생하는 문제점을 설명하고,Context API를 활용한 해결 방법을 다룹니다.  

CHAPTER 9: 리액트 설계 원칙 적용 
- 단일 책임 원칙(SRP)  
- 의존관계 역전 원칙(DIP)  
- CQRS(명령과 조회 분리)  

실무에서 적용할 수 있는소프트웨어 설계 원칙을 리액트에 어떻게 적용하는지 설명합니다.  

CHAPTER 10: 합성 패턴 
- 고차 컴포넌트(HOC) 
- 리액트 훅을 활용한 패턴 
- 헤드리스 컴포넌트 패턴

이 장에서는재사용 가능한 컴포넌트를 설계하는 방법을 배울 수 있습니다.  


PART 4: 실무에서의 구현

CHAPTER 11: 리액트 계층 구조 애플리케이션 
- 계층 구조를 적용한 프로젝트 개선  
- 장바구니 기능 구현  

CHAPTER 12: E2E 프로젝트 구현 
- 날씨 애플리케이션 개발 실습 
- Cypress를 활용한 E2E 테스트 적용

실무 프로젝트 예제를 활용하여 실제 애플리케이션을 개선하는 방법을 배울 수 있습니다.  

CHAPTER 13: 리액트 안티패턴 원칙 돌아보기 
- 일반적인 안티패턴 복습 
- 올바른 설계 원칙 다시 정리

마지막 장에서는책에서 배운 내용을 복습하고, 실무에서 어떻게 적용할 것인지 정리하는 과정이 포함되어 있습니다.  

총평

장점 
- 리액트의 안티패턴을 분석하여 올바른 설계를 학습 가능 
- 설계 원칙, 디자인 패턴, 리팩터링 기법까지 폭넓게 다룸 
- 테스팅(TDD, Jest, Cypress 등)에 대한 설명이 체계적 
- 실무 예제(온라인 피자 가게, 날씨 앱)로 실습 가능 
- 고급 리액트 개발자로 성장하기 위한 지침서

단점 
- 초급자에게는 다소 난이도가 높을 수 있음 
- Redux, Zustand 등 상태 관리 라이브러리에 대한 설명이 부족 
- 실제 프로젝트에서 발생하는 복잡한 문제에 대한 해결책이 조금 더 다양했으면 좋았을 것


추천 독자 
- 리액트 기본 개념을 익힌 후, 더 깊이 있는 개발 패턴과 설계 원칙을 배우고 싶은 개발자 
- 리액트 프로젝트를 보다 체계적으로 설계하고 유지보수하고 싶은 개발자 
- 테스트와 리팩터링 기법을 실무에서 적용하고 싶은 개발자 
- React 기반의 대규모 애플리케이션 설계를 고민하는 개발자

이 책은 단순히리액트 문법을 배우는 입문서가 아니라, 실무에서 올바른 리액트 애플리케이션을 설계하는 방법을 학습하는 책입니다.  
리액트를 깊이 있게 이해하고, 유지보수성과 확장성이 높은 프로젝트를 개발하고 싶은중급~고급 개발자에게 강력 추천합니다!

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

 

React의 설계 감각을 키워주는 책

리액트로 프로젝트를 만들고 있지만 늘 아래의 궁금증이 있었다

“컴포넌트를 제대로 나누고 있는게 맞을까?”

 ”상태 관리는 왜 이렇게 복잡하게 된걸까?”

 ”이렇게 구조를 나누는 게 맞는걸까?”

이 책을 읽으면서 물음에 대한 나만의 답을 만들어가는 시간이 되었다.

 

프로그래밍에 완벽한 정답은 없다는 것에 동의한다. 

그래도 ‘기준’이라는 건 있어야 한다고 생각하는 주의다.

그렇기 때문에 나는 늘 ‘잘 하고 있는지, 옳게 하고 있는지’에 대해 고민이 많았다.

 이 책을 읽고 프로젝트에 적용해 보면서 ‘이렇게 하면 되겠다’라는 

나만의 기준을 만들 수 있을 것 같다는 생각을 하게 되어서 굉장히 유익했다.


< 패턴으로 익히고 설계로 완성하는 리액트 > 는 
나와 같은 고민을 하는 주니어들에게 실질적인 해답을 주는 책이라고 할 수 있을 것 같다. 

기초 문법과 더불어 리액트 앱을 어떻게 ‘설계’하고 ‘구조화’해야 하는지를 알려주기 때문이다. 
각 파트별로 어떤 내용이 있는지 간단하게 살펴보고, 

더불어 파트를 읽으며 느꼈던 부분에 대해서도 짤막하게 이야기하겠다.

 

Part01. 리액트 앱의 ‘설계’ 마인드셋 갖추는 법

  • React 애플리케이션의 안티 패턴들을 설명하고,
  • JSX, Props, State 같은 필수 개념을 다루며
  • 애플리케이션의 구조를 어떻게 구성해야 하는지에 대해 설명한다.

상태관리는 어떻게 하는 게 좋을지, 컴포넌트를 어떻게 나누고 조립할 것인지에 대해 초점을 맞춰 이야기한다. 

React 컴포넌트를 구성할 때 어떻게 하면 더 효율적인 구조를 구성할 수 있을지에 대한 아이디어를 얻을 수 있었다.

 

Part02. Testing 패턴 적용법

  • 테스트가 꼭 필요한가에 대한 내용
  • 개별 단위 테스팅 기법
  • 간단한 애플리케이션을 만들어보며 TDD적용하기

이 책의 두번째 챕터는 React테스팅에 대한 내용인데,

아직 나는 Testing을 배워본 적이 없어서 ‘이렇게 하는 거구나’하는 정도로 이해했다.

 

Part03. 비즈니스 로직을 기준으로 한 패턴 적용법

첫번째 단계의 업그레이드 버전이다. 

React와 데이터가 만났을 때, 이 데이터를 어떻게 관리하는 게 좋을지에 대한 전략을 제시한다.

내가 제일 눈여겨 봤던 파트이기도 하다. 실제 프로젝트에 적용해보면서 확실히 눈에 띄게 프로젝트가 깔끔해짐을 느꼈다. 아래 내용들을 통해서 컴포넌트의 재사용성과 확장성을 높이는 구체적인 방법들을 적용해 볼 수 있었다. 컴포넌트에 패턴을 적용해보면 컴포넌트를 왜 그렇게 분리했는지에 대한 의도, 그리고 활용성에 대해 생각해게 됐다.

  • 데이터 흐름, 컨텍스트, Prop Drilling 해결법 등 복잡한 구조에서 마주하는 문제 해결 전략을 제시한다.
  • 디자인 패턴( ACL )으로 비즈니스 로직 누수 현상 문제를 해결하며 데이터를 어떻게 관리애햐 하는지에 대한 애플리케이션 설계
  • 컴포넌트 설계 원칙들 ( 단일 책임 원칙, 모듈화, 의존 관계 역전 원칙, 인터페이스 분리 등)을 기반으로 한 설계 예시

 

Part04. 실무에서의 구현

마지막장은 실제 프로젝트에 여러 패턴들을 적용하는 내용인데, 

나는 이미 하고 있는 프로젝트에 적용해봄으로써 책은 빠르게 눈으로 읽고 넘어갔다.

 

 

책을 읽고 난 뒤.

이 책을 통해 단순히 리액트를 ‘사용’하는 데서 멈추지 않고, 

어떻게 구조화하고 설계할 것인가라는 관점으로 한 단계 시야를 넓힐 수 있었다.

 

특히 프로젝트를 만들며 막연히 느껴왔던 “뭔가 어색한데, 더 좋은 해결방법”에 대한 부분. 

어떻게 해결할 수 있는지를 패턴 설계와 설계 원책을 통해 명확하게 짚어준 점이 정말 큰 수확이었다.

 

완벽한 정답이 없는 프로그래밍 세계에서 ‘내가 어떤 기준을 가지고 설계할 수 있는가’에 대한 감각은 꽤 중요한 것 같다는 생각이 든다. 그런 점에서 이 책은 나에게 ‘기준점’을 세울 수 있는 출발이 되었다. 무언가를 처음부터 잘하긴 어렵지만 ‘무엇이 좋은 방향인지’에 대한 감각을 키워가며 조금씩 더 나은 구조로 다듬어가는 과정이 성장이 아닐까 생각해본다.

 

이 책에서 나온 패턴들을 조금 더 다듬어 노션에 정리해놓으면 자주 보게 될 것 같다.

그렇게 나만의 패턴들을 조금씩 모아봐야겠다.

안녕하세요? 오늘은 패턴으로 익히고 설계로 완성하는 리액트에 대해서 서평을 해보도록 하겠습니다. 필자도 리액트를 이용해서 간단한 Front-End를 구현해본 적이 있는데요. 리액트는 현대 웹 개발에서 필수적인 라이브러리로 자리 잡았습니다. 그 이유는 리액트가 제공하는 컴포넌트 기반의 개발 방식이 코드의 재사용성과 유지보수성을 높여주기 때문입니다. 특히, 대규모 애플리케이션을 개발할 떄 리액트의 장점은 두드러집니다.

그럼 본격적으로 서평을 진행해보겠습니다.

목차.

[PART 1 리액트 기본 개념]

CHAPTER 1 리액트 안티패턴 소개

CHAPTER 2 리액트 필수 개념 이해

CHAPTER 3 리액트 애플리케이션 구조

CHAPTER 4 리액트 컴포넌트 설계하기

[PART 2 테스팅 기법]

CHAPTER 5 리액트 테스팅

CHAPTER 6 일반적인 리팩터링 기법 살펴보기

CHAPTER 7 리액트에서의 테스트 주도 개발

[PART 3 비즈니스 로직과 디자인 패턴 알아보기]

CHAPTER 8 리액트 데이터 관리

CHAPTER 9 리액트 설계 원칙 적용

CHAPTER 10 합성 패턴

[PART 4 실무에서의 구현]

CHAPTER 11 리액트 계층 구조 애플리케이션

CHAPTER 12 E2E 프로젝트 구현하기

CHAPTER 13 리액트 안티패턴 원칙 돌아보

서평

Part 1

리액트의 기본 개념에 대해서 소개를 하고 있습니다. 리액트를 처음 배우거나 이미 사용 중인 개발자들에게 이 책은 필수적인 가이드가 될 부분이 여기서부터 시작됩니다.

리액트에서 개발에서 흔히 저지르는 실수를 다루고 있습니다. 안티패턴을 이해함으로써, 우리는 더 나은 코드를 작성할 수 있는 기반을 마련할 수 있게 도움을 주고 있습니다. 필수 개념들도 깊이 있게 다루면서 독자로 하여금 리액트의 근본적인 원리를 이해하고, 이를 실제 프로젝트에 적용할 수 있도록 도움을 줍니다.

각 챕터는 실용적이고 명확한 설명으로 구성되어 있어, 독자들은 리액트의 기본 개념을 확실히 이해하고, 실무에 적용할 수 있도록 도움을 주는 부분이라고 생각했습니다.

Part 2

실질적인 테스팅 기법이 나옵니다. 리액트의 컴포넌트를 테스팅하면서 코드의 품질을 개선하는 방법들에 대해서 소개하고 있습니다. 코드의 가독성, 유지보수성, 효율성을 높이는 다양한 기법을 설명하며, 리팩터링이 테스팅과 어떻게 조화를 이루는지 보여줍니다.

특히, 테스트 주도 개발(TDD)을 리액트 환경에 적용하는 방법을 설명하는 부분이 좋았습니다. 개발자들이 TDD를 통해 더 안정적이고 신뢰할 수 있는 소프트웨어를 개발할 수 있도록 안내하고 있습니다.

리액트의 애플리케이션의 품질 보장을 위한 필수적인 테스팅 기법을 다루고 있습니다. 테스팅의 중요성을 강조하며, 실무에서 바로 적용할 수 있는 실질적인 방법들을 제공하고 있습니다.

Part 3

리액트 애플리케이션을 설계하고 구현하는 데 있어, 비지니스 로직과 디자인 패턴은 그 복잡성을 줄이고 효율성을 높이는 부분에 대해서 설명하고 있습니다. 리액트 애플리케이션 설계에 적용할 수 있는 주요 설계 원칙에 대해서 설명하면서 구조적이고 확장 가능한 코드 사용법에 대해서 설명하고 있습니다.

해당 챕터는 애플리케이션의 비지니스 로직과 디자인 패턴을 심층적으로 이해하는 데 필요한 지식을 제공하고 있습니다. 좀 더 실무적인 부분에 집중하고 있으며, 명확하고 실용적인 예제를 통해서 설명하고 있습니다.

Part 4

리액트 애플리케이션의 계층 구조를 설명하고 실제로 프로젝트를 구현하는 부분에 대해서 설명하고 있습니다. E2E(End-to-End) 테스트의 중요성과 그 장점을 설명하고, 테스트 자동화 동구를 활용하여 사용자 경험을 보장하는 방법을 소개하고 있습니다.

마지막 부분에서는 실제 실무에서 성공적으로 적용하기 위한 실질적인 지침을 제공하고 있습니다. 리액트 개발자들이 실전에서 의 경험을 쌓고, 프로젝트의 성공을 이끌고자 한다면, 이 책은 훌륭한 참고서가 될 것입니다.

마치며..

이 책을 통해 얻은 통찰은 리액트 개발에 대한 깊은 이해를 제공합니다. 리액트는 단순한 라이브러리가 아니라, 효율적이고 유지보수 가능한 어플리케이션을 만드는 데 필요한 다양한 원칙과 패턴을 제공합니다. 이 책을 읽고 나며 리액트 개발에 대한 자신감이 생길 것입니다.

책을 각 Part를 읽고 실습하면서 단순히 기능 구현뿐만이 아니라 구조적으로 설계하고 확장 가능성이 있도록 만들어 나가야 한다는것을 배울 수 있었습니다. 리액트를 처음 접하는 독자에게는 다소 어려움이 있을 수 있지만 어느정도 리액트를 사용할줄 독자들에게는 중급에서 고급으로 넘어갈 수 있는 좋은 지침서가 될 것이라고 생각합니다.

본 포스팅은 “한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.”

 

 

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

프런트엔드 애플리케이션 구축은 현대 웹 개발에서 가장 까다로운 작업 중 하나입니다. 특히 규모가 커질수록 명확한 지침 없이는 복잡성이 기하급수적으로 증가합니다. 프론트엔드 개발자들은 단순히 UI 구현만이 아닌, 비동기 네트워크 요청, 접근성, 성능 최적화, 상태 관리 등 여러 도전적 요소들과 맞닥뜨리게 됩니다.

이 책은 이러한 복잡한 문제들을 어떻게 체계적으로 극복할 수 있는지 안내합니다. 주요 접근법은 안티패턴을 식별하고, 검증된 디자인 패턴과 설계 원칙을 적용하는 것입니다. SOLID 원칙, 중복 배제(DRY) 원칙 등 소프트웨어 공학의 기본 원리를 리액트 환경에 어떻게 적용할 수 있는지 상세히 설명합니다.

특히 인상적인 점은 실제 애플리케이션 개발 과정에서 발생하는 구체적인 문제들을 확립된 패턴과 사례를 통해 해결하는 방법을 제시한다는 것입니다. 이론에만 그치지 않고 실무에 즉시 적용할 수 있는 예제와 해결책을 제공합니다.

이 책은 다음과 같은 체계적인 구성으로 이루어져 있습니다.

  1. 리액트 안티패턴 소개
  2. 리액트 필수 개념 이해
  3. 리액트 애플리케이션 구조
  4. 리액트 컴포넌트 설계하기
  5. 테스트 기법
  6. 비즈니스 로직과 디자인 패턴

이 책을 통해 독자들은 리액트 프런트엔드 개발의 복잡한 측면을 더 깊이 이해하고, 유지보수가 용이하고 견고한 애플리케이션을 구축하는 실질적인 기술을 습득할 수 있을 것입니다. 프론트엔드 개발에서 흔히 마주치는 함정을 피하고 더 나은 코드를 작성하고자 하는 개발자에게 필수적인 지침서라고 할 수 있습니다.
 

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

책 표지출처: 한빛미디어

책 소개

최근에 어떻게 하면 코드를 더 잘 짤 수 있을지 고민하다가 『패턴으로 익히고 설계로 완성하는 리액트』라는 책을 접했다. 표지의 “패턴”과 “설계”라는 글자가 와닿았고 TDD와 리팩터링으로 계속 코드를 개선하는 가이드를 제시해줄 것이라고 기대했다.

책의 구성 및 내용

이 책은 리액트 애플리케이션 개발 시 자주 발생하는 안티패턴을 정의하고, 이를 해결하기 위한 설계 원칙과 패턴을 제시한다. 특히 TDD(테스트 주도 개발)와 리팩터링을 통해 코드 품질을 높이는 방법을 실용적인 예제를 통해 보여준다.

책은 크게 리액트 기본 개념, 안티패턴 이해하기, 효과적인 패턴과 테스트 방법, 그리고 실제 프로젝트 구현 등의 섹션으로 나누어져 있다.

Part2 테스팅 기법

Part2에서 테스트 방법론 같은 부분은 다른 책과 내용이 비슷했다. 하지만 7장에서 테스트 주도 개발을 제대로 보여줬다. 예시로 ‘코드 오븐’ 애플리케이션을 만들었는데 요구사항 분석과 세분화를 통해 테스트를 먼저 짜놓고 컴포넌트 개발에 들어갔다.

Part3 비즈니스 로직과 디자인 패턴 알아보기

가장 관심있던 부분은 Part3 비즈니스 로직과 디자인 패턴 알아보기였다. 요즘에 비즈니스 로직을 어떻게 잘 분리해서 작성할 수 있을지 고민이 많았기 때문이다. Part3의 내용을 요약해보면 다음과 같다.

ACL(오류 방지 계층)(Anti-Corruption Layer)

ACL은 각각 다른 언어를 사용하는 다른 서브시스템 간의 중재자 역할을 한다. 프론트엔드 ACL은 서버에서 받아 온 데이터를 프론트엔드에서 이해할 수 있는 형태로 변환한다. 그리고 캐시 처리, 오류 변환과 같은 여러 문제를 처리하는 전략 계층으로도 활용할 수 있다.

변환 함수를 사용하면 백엔드에서 주는 데이터 형식이 바뀌더라도 변경의 범위를 변환 함수로 제한할 수 있기 때문에 컴포넌트를 보존할 수 있다.

Context API를 통한 Prop Drilling 문제 해결

보통의 Prop Drilling은 상태값을 넘길 때 일어났지만 예시에서는 함수를 넘길 때의 상황을 다뤘다. 겹겹이 쌓인 컴포넌트에서 자식 컴포넌트의 onClick 함수를 그대로 전달하기 위해 부모 컴포넌트를 무의미하게 거치는 상황을 Context API를 통해 해결했다. 그러면 자식 컴포넌트에서 바로 onClick 함수에 접근이 가능해진다.

단일 책임 원칙

가장 많이 사용되는 기술

render prop

리액트 컴포넌트 간 코드 공유를 위해 함수 prop을 사용

const Title = ({ title, render }) => {
  return <div>{render(title)}</div>
}

부모 컴포넌트가 자식 컴포넌트의 렌더링 로직을 제어할 수 있어 컴포넌트를 더욱 유연하게 하고 재사용할 수 있게 한다.

핵심 로직을 변경하지 않고 컴포넌트 동작을 확장하거나 사용자에 맞게 지정할 수 있다.

합성(composition)

const MyAvatar = () => (
  <Tooltip name="My Avatar">
    <Avatar />
  </Tooltip>
)

예제와 같이 Tooltip 컴포넌트와 Avatar 컴포넌트를 분리함으로써 각자의 역할을 하면서 서로 합성할 수 있다.

Part4 실무에서의 구현

Part4에서는 앞에서 배운 개념들을 가지고 ‘코드 오븐’이라는 피자 가게 애플리케이션을 개발한다. 여기서는 타입을 클래스 기반의 모델로 변환하면서 데이터의 모든 변환 로직을 이곳에 모은다. 그리고 전략 패턴을 통해 할인을 제공하는 등의 요구사항을 개발했다. 이렇게 개발한 코드들을 마지막 계층 구조 챕터에서 봤을 때 유지 보수하기 쉬운 코드가 되었다는걸 알 수 있었다.

정리

책의 난이도는 어렵지 않은 편이라서 프론트엔드 개발자라면 누구나 읽을 수 있을 것이다. 그리고 이론과 실제 예제의 조화가 적절하고 예제가 이론을 이해하는데 큰 도움이 됐다. 어떻게 하면 더 나은 코드를 작성할 수 있을지 고민하고 있다면 큰 도움이 될 거라고 생각한다.



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

 

리액트를 조금 다뤄본 개발자라면, 이제 한 걸음 더 나아가고 싶다는 생각이 들 거예요. 이 책은 그런 분들에게 딱 맞는 책이에요. 단순히 리액트 문법이나 기능만 알려주는 게 아니라, 실제로 우리가 현장에서 부딪히는 문제들을 어떻게 잘 해결할 수 있을지 알려줘요. 예를 들면, 앱을 만들다 보면 코드가 점점 많아지고 복잡해지잖아요? 이럴 때 어떻게 구조를 잘 잡고 유지 보수하기 쉽게 만들 수 있을지, 또 나중에 기능을 추가하거나 고칠 때 덜 고생하려면 어떻게 짜야 하는지를 자세히 알려줘요.

 

이 책에서는 TDD(테스트 주도 개발), 테스트 기법, 그리고 객체지향 설계 원칙 같은 조금 어려워 보일 수 있는 개념들도 다뤄요. 근데 어렵게만 설명하는 게 아니라, 실제 예제랑 함께 설명해 줘서 생각보다 훨씬 쉽게 이해돼요. 이런 지식은 단지 리액트뿐만 아니라 다른 프로그래밍에도 두루두루 쓸 수 있어서 정말 유용하다고 느꼈어요.

 

책을 읽다 보면 “아, 나도 실무에서 이런 문제 겪은 적 있어” 하고 고개를 끄덕이게 되는 순간들이 많아요. 저자도 그런 실제 상황에서 자주 겪는 문제들을 중심으로 설명해 주거든요. 단순한 이론보다는 ‘이런 상황에서는 이렇게 해보면 좋아요’ 같은 느낌이라, 바로 써먹기 좋더라고요.

 

처음엔 저도 좀 어렵게 느껴졌어요. 신입 프론트엔드 개발자인 제 입장에서는 처음 보는 용어나 개념들이 있었거든요. 하지만 읽다 보면 “아, 이런 게 왜 중요한 거구나” 하고 하나씩 깨닫게 돼요. 특히 프로젝트 규모가 커질수록 코드 구조나 관리가 얼마나 중요한지 알게 되고, 좋은 구조를 만드는 데 도움이 되는 건 결국 ‘패턴’이라는 걸 배웠어요.

이 책은 리액트에 대해 어느 정도 알고 있고, 실무에서 더 잘하고 싶다!라는 생각이 있는 분들에게 진짜 좋아요. 단순히 리액트로 뭘 만드는 걸 넘어서, 어떻게 하면 더 좋은 코드, 더 유지 보수하기 쉬운 코드를 만들 수 있을지를 알려주거든요.

 

결국 이 책은 ‘리액트랑 소프트웨어 설계 원칙이 만나면 이런 멋진 결과가 나올 수 있어요!’라고 말해주는 책이에요. 애플리케이션을 만들 때 어떤 구조로 짜면 나중에도 유지 보수가 편한지, 테스트는 어떻게 해야 하고, 코드는 어떤 식으로 고쳐가야 좋은지를 친절하게 알려줘요.

 

그래서 리액트 공부를 어느 정도 한 다음에, “이제는 좀 더 잘하고 싶다"라는 생각이 드는 분들에게는 정말 실속 있는 가이드가 될 수 있어요. 이 책을 읽고 나면 컴포넌트 구조나 설계에 대한 개념도 정리되고, 더 나은 코드 작성을 위한 자신감도 생길 거예요. 실무 준비 중이거나 지금 하고 있는 프로젝트에서 구조나 품질에 대해 고민 중이라면 꼭 한 번 읽어보시길 추천드려요!



 

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

 

어떤 책을 읽었는가?

  • 책 제목: 패턴으로 익히고 설계로 완성하는 리액트
  • 저자: 준타오 추
  • 번역: 정재명
  • 출간: 2025.02.14
  • 출판사: 한빛미디어

 

왜 읽고 싶었나?

리액트로 기능을 구현할 수 있는 수준이지만, 클린 코드를 어떻게 작성해야 하는지에 대한 고민이 있었습니다. 특히, 유지보수하기 좋은 코드란 무엇인지, 이를 위해 어떤 학습 방법을 택해야 할지 막막했습니다. 그러던 중 패턴으로 익히고 설계로 완성하는 리액트라는 책을 알게 됐습니다. 책 표지에 적힌 TDD와 리팩터링으로 만드는 효율적이고 유지보수 가능한 클린 코드라는 문장이 눈에 들어왔습니다.

제가 가지고 있던 고민을 해결해줄 것만 같았습니다. 리액트에서 TDD를 적용할 때 어떤 라이브러리를 사용해야 하는지, 테스트 코드를 어떻게 작성해야 하는지, 리팩터링과 디자인 패턴을 활용한 개선 방법이 궁금했습니다.

책의 목차를 살펴보니, 리액트의 기본 개념부터 테스팅 기법, 비즈니스 로직과 디자인 패턴, 실무 적용까지 총 4개의 파트로 구성되어 있었습니다. 이 책을 통해 리액트에서 클린 코드를 작성하는 방법을 배울 수 있을 것 같아 읽어보고 싶었습니다.

 

누구에게 추천하고 싶은가?

이 책은 리액트의 기본 개념을 설명하고 있지만, 리액트로 간단한 애플리케이션을 만들어 본 경험이 있거나, 백엔드 개발자와 협업하여 API를 활용한 프로젝트를 진행해 본 사람이라면 재밌게 읽을 것 같습니다:)

특히, 초반에 소개되는 리액트 안티패턴 예제 코드를 보면서 "내 코드가 왜 여기 있지?" 하는 생각이 들었을 정도로 공감되는 부분이 많았습니다.

책에서 다뤄지는 여러 고민들, 예를 들어:

  • Prop Drilling 문제는 어떻게 해결할까?
  • 외부 API나 백엔드에서 전달받은 데이터를 어떻게 변환해야 할까?
  • 너무 많은 기능을 가진 컴포넌트를 어떻게 개선할 수 있을까?

개발하면서 한 번쯤 마주쳤던 문제들이라 반가웠습니다. 저자는 이러한 문제들을 어떻게 해결하는지 설명한 과정들이 재밌었습니다.

반면, 아직 리액트 문법만 배운 초기 단계이거나 실제 프로젝트 경험이 없는 분이라면 다소 어렵게 느껴질 수 있습니다. 책에 나오는 예제들이 리액트로 요구사항을 만족하는 기능을 구현한 후, 그 기능을 어떻게 리팩터링할 것인지에 대한 방법들을 다루고 있습니다. 이 과정에서 중복 배제 원칙, 헤드리스 컴포넌트 패턴, 고차 컴포넌트와 같은 개념들이 등장하는데, 저도 처음 접하는 이론이 아니었음에도 불구하고 이해하는 데 시간이 걸리더라고요...

그래서 책을 끝까지 읽어본 결과, 이런 분들께 추천하고 싶다고 생각했습니다.

실무에서 리액트를 사용하지만 유지보수 가능한 클린 코드 작성에 관심이 있는 개발자, 리액트를 공부하며 취업을 준비하는 취준생, 혹은 취미로 리액트 개발을 하는 사람이라면 이 책에서 많은 인사이트를 얻을 수 있을 것입니다. 특히,

  • 자신이 개발한 리액트 애플리케이션을 리팩터링하고 싶은 사람
  • Test-Driven Development(TDD)를 리액트에서 어떻게 적용할 수 있는지 궁금한 사람
  • 저자(15년 차 소프트웨어 엔지니어)가 리팩터링을 통해 효율적인 코드를 만드는 과정을 알고 싶은 사람

이라면 읽어보라고 권하고 싶습니다.

 

어떤 점이 좋았는가?

이 책의 가장 큰 장점은 TDD(Test-Driven Development)를 적용하여 개발하는 과정을 단계별로 볼 수 있다는 점입니다.

마치 사수가 코드 작성 과정을 옆에서 보여주듯, 테스트 코드 작성 → 테스트 코드가 통과하는 코드 작성 → 코드 리팩터링 순으로 진행하는 과정을 배울 수 있습니다.

Red-Green-Refactor 사이클을 실전에서 어떻게 활용하는지 감을 잡을 수 있도록, 온라인 피자 가게 애플리케이션, 날씨 애플리케이션과 같은 이해하기 쉬운 예제를 사용해 설명해줍니다. 덕분에, TDD를 적용하는 방식과 리팩터링하는 흐름을 자연스럽게 익힐 수 있었습니다.

무엇보다, 책에 나온 내용을 반복해서 실습해 내 것으로 만든다면 클린 코드를 작성할 수 있는 개발자가 되지 않을까? 하는 생각이 들었습니다. (얼른 저도… 책에 나온 과정을 따라 해봐야겠습니다!)

 

한 줄로 표현하자면?

TDD와 리팩터링을 통해 클린 코드를 작성하는 사수의 개발 과정을 엿볼 수 있는 책!

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

 

이 책은 단순히 리액트 문법을 알려주는 것이 아니라

구조와 설계에 대한 내용을 다루고 있습니다.

 

컴포넌트 구조, 폴더 구조 등 실무에서 마주치는 다양한 문제, 안티패턴들을 학습하면서

더 유지보수하기 쉬운 코드를 어떻게 설계할 수 잇는지 배울 수 있었습니다.

 

저는 개인적으로 Props Drilling 문제를 발견하고 개선하면서, 

코드 구조가 깔끔해지는 경험을 했습니다.

 

리액트를 단순히 사용하는데서 그치지 않고,

잘 설계 하고 싶은 독자들에게 추천하고 싶은 책입니다.

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

 

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원 무료배송
닫기

리뷰쓰기

닫기
* 상품명 :
패턴으로 익히고 설계로 완성하는 리액트
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
패턴으로 익히고 설계로 완성하는 리액트
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
패턴으로 익히고 설계로 완성하는 리액트
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?