지속 가능한 프런트엔드 엔지니어링 (유지보수하기 쉽고 확장성 있는 프런트엔드 구축을 위한 핵심 원칙과 기법)

지속 가능한 프런트엔드 엔지니어링 (유지보수하기 쉽고 확장성 있는 프런트엔드 구축을 위한 핵심 원칙과 기법)

$28.00
Description
모든 소프트웨어 개발 분야가 그렇듯이 기술이 해결해줄 수 있는 문제가 있고, 그렇지 못한 문제도 있습니다. 후자의 경우 기술만으로 접근하다가 실패할 때가 많습니다.

이 책은 그중 프런트엔드 개발 과정에서 마주하는 핵심 문제 중 하나인 ‘복잡함’을 관리하는 방법을 소개합니다. 복잡함 관리는 비단 프런트엔드만을 위한 기술은 아니며, 이 책은 소프트웨어 공학의 거장들이 남긴 지혜를 프런트엔드의 언어로 재해석한 결과입니다.

이 책을 읽고 나면 매일 마주하는 코드가 다르게 보이기 시작할 것입니다. 각종 프레임워크나 라이브러리가 제공하는 도구 너머에 있는 본질적인 문제와 해법을 볼 수 있게 되고, 복잡함을 관리하는 구체적인 기준과 방법을 갖추게 될 것입니다. 이는 곧 동료와 더 명확하게 소통하고, 지속 가능한 소프트웨어를 만드는 원동력이 될 것입니다.
저자

이문기

경제학과수학을전공하고컴퓨터공학과목을이수했다.퀀트를꿈꾸다개발자의길로들어섰다.웹개발로시작해프런트엔드엔지니어를거쳐,현재는다양한문제를해결하며리더의길을걷고있다.

목차

[1부]기본원칙

▣01장:의존성
1.1변수의존성
1.2함수의존성
1.3타입의존성
1.4불변속성의존성
1.5의존성역전과의존성주입

▣02장:인터페이스
2.1사용자인터페이스
2.2함수와인터페이스
2.3단일구현을위한인터페이스
2.4테스트와인터페이스
2.5개발자와인터페이스

▣03장:캡슐화
3.1캡슐화와스코프
3.2함수를사용한캡슐화
3.3클로저를이용한캡슐화
3.4클래스를이용한캡슐화
3.5캡슐화를해치는경우

▣04장:결합도와응집도
4.1모듈이란?
4.2모듈의범위
4.3결합도
4.4응집도
4.5결합도와응집도
4.6캡슐화,결합도,응집도의관계

▣05장:추상화
5.1추상화란?
5.2추상화수준
5.3추상화계층
5.4적절한추상화수준

▣06장:엔티티와값객체
6.1엔티티
6.2값객체

▣07장:관심사의분리

▣08장:DRY
8.1중복제거
8.2프런트엔드에서의중복사례
__8.2.1스타일중복
__8.2.2HTML요소중복
__8.2.3데이터모델중복
8.3중복제거전략

▣09장:부수효과
9.1부수효과의성질
9.2부수효과분리
9.3리액트와부수효과
9.4부수효과와블록컴포넌트

▣10장:DTO
10.1DTO의이해
10.2DTO사용시주의사항
10.3DTO와API

[2부]지속가능성

▣11장:비즈니스로직분리
11.1비즈니스로직을분리하는이유
11.2사례1:입력요소와에러메시지
11.3사례2:리스트필터링
11.4규모에맞게분리하기
11.5큰규모의코드에서비즈니스로직분리하기
11.6분리한비즈니스로직의사용법

▣12장:API관리
12.1간단한API요청
12.2리포지터리
12.3API요청흐름
__12.3.1관리API
__12.3.2조회API
12.4리포지터리를활용한API요청흐름관리

▣13장:컴포넌트분리
13.1컴포넌트를분리하는이유
13.2재사용가능한컴포넌트
__13.2.1재사용가능하다는것은일반적이라는것
__13.2.2HTML요소의재사용성
__13.2.3안정적인재사용성
__13.2.4배치및스타일재사용성
__13.2.5컴포넌트가재사용가능하다는것
13.3복잡한컴포넌트
13.4렌더링성능

▣14장:헤드리스UI

▣15장:폴더구조
15.1파일과폴더를모듈로이해하기
15.2역할중심구조와기능중심구조
15.3폴더의위계와의존성방향
15.4나는,그리고우리는어떤모습으로협업할까?
15.5너무오래고민하지않기

▣16장:테스트
16.1디버깅에도움이되는테스트
16.2테스트비용
16.3테스트수준을활용한비용관리
16.4중요한대상을먼저테스트하기
16.5스텁과목
16.6프라이빗메서드는테스트하지않는다
16.7완벽한테스트를지향하지않기

▣17장:스타일
17.1스타일결합자로영향범위제한하기
17.2스타일책임분리하기
17.3인지부하를낮추는스타일작성법

▣18장:AI와프런트엔드
18.1AI,그리고사람과협업하기
18.2AI와함께설계하기
18.3AI와함께테스트하기

출판사 서평

★이책에서다루는내용★

◎의존성,결합도/응집도등소프트웨어설계의핵심개념
◎비즈니스로직분리,컴포넌트분리기준등실무에곧바로적용가능한실천기법
◎스타일,테스트등관리하기까다로운영역을다루는방법
◎프런트엔드개발자를위한각종실무노하우