장바구니 담기 close

장바구니에 상품을 담았습니다.

기초부터 완성까지, 프런트엔드

기초부터 완성까지, 프런트엔드

  • 이재성 ,한정
  • |
  • 비제이퍼블릭
  • |
  • 2021-11-29 출간
  • |
  • 556페이지
  • |
  • 188 X 245 mm
  • |
  • ISBN 9791165921057
판매가

33,000원

즉시할인가

29,700

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
29,700

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평



개념과 실습, 두 마리 토끼를 잡고 싶은 욕심꾸러기 독자분께 추천합니다!

프런트엔드 개발을 위해 알아야 할 내용이 너무 많지 않나요? 다양한 강의와 웹 사이트에서 정보를 찾을 순 있지만, 파편화된 정보들을 정리하고 모으는 것도 충분히 어렵지 않으셨나요?

그렇게 힘들게 공부하고 계실 주니어 개발자들에게, 지름길을 알려 드리고자, 이 도서를 제작했습니다.
이 도서로 프런트엔드의 전반적인 흐름을 익혀 방향을 잡고, 꾸준히 성장하는 개발자가 되길 바랍니다.


목차


저자 소개
서문
베타 리더 추천사
이 책의 구성
프로젝트
감사의 말

1부

[1장. 프런트엔드 개발이란?]
1.1. 정의
1.2. 프런트엔드 개발의 과거와 현재
1.2.1. 프런트엔드 개발 영역의 확장
1.3. 개발 프로세스
1.3.1. 요구 사항 분석
1.3.2. 설계
1.3.3. 개발
1.3.4. 배포

[2장. HTML과 CSS]
2.1. HTML
2.1.1. HTML 요소 구성 살펴보기
2.1.2. HTML 요소 분류하기
2.1.3. HTML 문서 골격 만들기
2.1.4. 시맨틱(Semantic)
2.1.5. SEO(Search Engine Optimization)
2.2. CSS
2.2.1. 작성 방법
2.2.2. 상속
2.2.3. 선택자
2.2.4. 우선순위와 명시도(Specificity)
2.2.5. 박스 모델과 여백 상쇄
2.2.6. flex를 이용한 레이아웃 만들어 보기
2.2.7. 반응형 웹을 위한 미디어 쿼리
2.3. 접근성(Accessibility, a11y)
2.3.1. 웹 접근성 지침
2.4. 정리하기

[3장. 자바스크립트 기초 - 타입과 구문]
3.1. 변수 선언
3.1.1. var
3.1.2. let과 const
3.2. 객체와 타입
3.2.1. number
3.2.2. string
3.2.3. boolean
3.2.4. null과 undefined
3.2.5. Symbol
3.2.6. BigInt
3.2.7. 객체
3.3. 배열
3.3.1. 배열의 생성
3.3.2. 원소 접근과 동적인 원소 생성
3.3.3. 희소 배열
3.3.4. length 프로퍼티
3.3.5. 배열 조작
3.3.6. 유사 배열 객체
3.4. 랩퍼(Wrapper) 객체
3.4.1. 언박싱(Unboxing)
3.5. 구문과 연산자
3.5.1. 표현식(Expression)
3.5.2. 문(Statement)
3.5.3. 연산자(Operator)
3.6. 정리하기

[4장. 자바스크립트 기초 - 타입 변환과 함수]
4.1. 타입 변환
4.1.1. 명시적 강제 변환
4.1.2. 객체의 원시 타입 변환
4.1.3. 암시적 강제 변환
4.2. 함수
4.2.1. 함수란 무엇인가?
4.2.2. 함수의 정의 방법
4.2.3. 함수의 호출
4.2.4. 화살표 함수
4.2.5. this
4.3. 정리하기

[5장. 자바스크립트 심화 - 프로토타입과 스코프]
5.1. 프로토타입
5.1.1. 프로토타입과 프로토타입 체인
5.1.2 프로토타입과 생성자 함수
5.1.3. 프로토타입의 확장과 상속
5.1.4. class
5.2. 스코프(scope)
5.2.1. 함수 스코프와 블록 스코프
5.2.2. 렉시컬 스코프
5.3. 호이스팅(Hoisting)
5.3.1. 스코프별로 동작하는 호이스팅
5.3.2. 함수 선언문의 호이스팅
5.4. 클로저(closure)
5.4.1. 모듈 패턴
5.5. 모듈
5.5.1. export, import
5.5.2. default export
5.5.3. 식별자 충돌 피하기
5.5.4. 〈script type="module"〉
5.6. 정리하기

[6장. 자바스크립트 심화 - 실행 컨텍스트]
6.1. 실행 컨텍스트란 무엇인가?
6.2. 실행 컨텍스트의 구성 요소
6.2.1. Envinronment Records와 스코프 체인
6.2.2. 다양한 Envinronment Records
6.2.3. Lexical Environment와 Variable Environment
6.3. 실행 컨텍스트의 생성 과정
6.3.1. 1단계: 전역 컨텍스트 생성과 바인딩
6.3.2. 2단계: foo 실행 컨텍스트 생성과 바인딩
6.3.3. 3단계: bar 실행 컨텍스트 생성과 바인딩
6.3.4. 4단계: console.log() 메서드 실행
6.4. 실행 컨텍스트와 클로저
6.5. 정리하기

[7장. BOM과 DOM]
7.1. 문서 객체 모델
7.1.1. DOM 트리
7.1.2. Node
7.1.3. DOM Node 추가, 제거하기
7.1.4. 요소 검색하기
7.1.5. DOM 이벤트
7.2. 브라우저 객체 모델
7.2.1. window 객체
7.2.2. History 객체
7.2.3. Location 객체
7.2.4. navigator 객체
7.2.5. Web Storage
7.3. 정리하기

[8장. 브라우저 렌더링 과정]
8.1. 렌더링 과정 살펴보기
8.2. 렌더러 프로세스의 작업
8.2.1. 파싱, 렌더 트리(Render Tree) 생성
8.2.2. 레이아웃(Layout)
8.2.3. 페인트(Paint)
8.2.4. 합성(Compositing)
8.3. 브라우저별 렌더링 엔진
8.4. 정리하기

[9장. 네트워크 통신]
9.1. HTTP란?
9.1.1. 상태 코드
9.1.2. 메서드
9.1.3. 헤더
9.1.4. 쿠키
9.2. JSON(JavaScript Object Notation)
9.2.1. 구조
9.2.2. 메서드
9.3. Ajax
9.3.1. XMLHttpRequest
9.3.2. Promise
9.3.3. async, await
9.3.4. fetch()
9.4. 웹 소켓
9.5. 정리하기

2부

[10장. 프런트엔드 뉴스 게시판 만들기]
10.1. 마크업 작성하기
10.1.1. 헤더 영역
10.1.2. 메인 영역
10.2. 스타일 적용하기
10.2.1. 헤더 영역 스타일
10.2.2. 메인 영역 스타일
10.2.3. 푸터 영역 스타일
10.3. 목록 가져오기
10.3.1. DOMContentLoaded 이벤트 등록
10.3.2. 로딩 이미지 보여주기
10.3.3. 데이터 조회 및 DOM 추가
10.3.4. 로딩 이미지 제거하기
10.4. 반응형 레이아웃 적용
10.4.1. 태블릿 레이아웃
10.4.2. 모바일 레이아웃
10.5. 정리하기

[11장. 프런트엔드 개발 도구]
11.1. 의존성 관리
11.1.1. Node.js와 프런트엔드 개발
11.1.2. npm
11.1.3. package.json의 중요한 속성들
11.1.4. 의존성 버전과 semantic versioning
11.1.5. package-lock.json 파일의 중요성
11.1.6. yarn
11.2. webpack
11.2.1. 설치 및 사용법
11.2.2. entry와 output
11.2.3. Loader
11.2.4. Plugin
11.2.5. webpack-cli를 통한 설정 파일 초기화
11.2.6. webpack-dev-server
11.2.7. 더 나아가서
11.3. 트랜스파일러
11.3.1. Babel
11.3.2. Sass
11.4. Linter
11.4.1. ESLint
11.4.2. stylelint
11.4.3. Prettier
11.5. 정리하기

[12장. 디버깅]
12.1. 개발자 도구란?
12.2. 개발자 도구 활용해 보기
12.2.1. 모바일 환경에서 잘 나올까?
12.2.2. 내가 작성한 CSS 프로퍼티대로 화면에 나타나지 않을 때
12.2.3. 분명 요소에 이벤트를 추가했는데?
12.2.4. 무슨 에러가 발생한 걸까?
12.2.5. 에러가 발생한 시점의 정보를 알아내려면?
12.2.6. 우리집 인터넷은 빠른데...
12.3. 정리하기 394

[13장. 프런트엔드 테스트]
13.1. 좋은 테스트란 무엇인가?
13.1.1. Trade off
13.1.2. TDD와 Trade Off
13.2. 프런트엔드 테스트
13.2.1. 테스트의 종류
13.2.2. 사용자 관점의 테스트
13.2.3. 테스트 피라미드
13.2.4. jest
13.3. 메모 애플리케이션
13.3.1. 단위 테스트
13.3.2. 통합 테스트
13.3.3. Cypress
13.3.4. E2E 테스트
13.4. 정리하기

[14장. 스냅숏 테스트와 시각적 테스트]
14.1. 스냅숏(snapshot) 테스트
14.1.1. 스냅숏 테스트 작성하기
14.1.2. 스냅숏 테스트의 장점과 단점
14.1.3. 그럼 어떻게 작성해야 할까?
14.2. 시각적 회귀(visual regression) 테스트
14.2.1. 스토리북(Storybook)
14.2.2. Percy를 이용한 시각적 테스트 작성하기
14.3. 정리하기

[15장. 성능]
15.1. Performance 탭과 성능 최적화
15.1.1. Perfomance 탭의 구성
15.1.2. 렌더링 블록(Rendering Block)
15.1.3. 레이아웃 최소화
15.2. 메모리 관리하기
15.2.1. 가비지 컬렉션(Garbage Collection)
15.2.2. 메모리 누수 탐지하기
15.3. Performance 탭과 Web Vitals
15.3.1. Perfomance 탭의 다양한 지표들
15.3.2. Web Vitals
15.4. 라이트하우스(Lighthouse)
15.4.1. 보고서 만들기
15.4.2. 기준 살펴보기
15.5. 정리하기

부록

[부록1. 렌더링 방식과 프런트엔드 프레임워크]
1.1. 렌더링 방식
1.1.1. Single Page Application(SPA)과 Client Side Rendering(CSR)
1.1.2. Server Side Rendering(SSR)
1.2. 프레임워크
1.2.1. React
1.2.2. Vue.js
1.2.3. Svelte
1.3. 정리하기

[부록2. 타입스크립트 사용하기]
2.1. 타입스크립트(TypeScript)는 무엇인가요?
2.2. 타입스크립트는 어떻게 동작할까요?
2.3. 타입스크립트의 장점과 단점
2.4. 정리하기

[부록3. 오픈 소스 기여하기]
3.1. 오픈 소스 소프트웨어란?
3.2. 오픈 소스는 코드로만 기여하나요?
3.3. 어떻게 기여할까요?
3.3.1. 만들어진 프로젝트에 참여하기
3.3.2. 새로운 오픈 소스 프로젝트 만들기
3.4. 정리하기

[부록4. 코드 리뷰하기]
4.1. 리뷰 단계에서는 무엇을 확인해야 하나요?
4.2. 리뷰를 통해 무엇을 얻을까요?
4.3. 주의해야 할 점이 있을까요?
4.4. 정리하기

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.