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

한빛출판네트워크

앵귤러 첫걸음

개발 환경 설정부터 컴포넌트 테스트까지 다양한 예제로 익히는

한빛미디어

집필서

판매중

  • 저자 : 조우진
  • 출간 : 2017-06-01
  • 페이지 : 488 쪽
  • ISBN : 9788968486807
  • 물류코드 :2680
  • 초급 초중급 중급 중고급 고급
3.9점 (18명)
좋아요 : 13

타입스크립트, ECMAScript 6와 친해지는 실전 앵귤러 입문서!

 

새로운 기술을 배울 때 결과물이 없다면 쉽게 지치기 마련이다. 이 책은 1부 기초 다지기, 2부 기본기 향상하기, 3부 깊이 들어가기로 나누어 앵귤러를 설명하고 실제 프로젝트인 상품 관리 애플리케이션을 결과물로 만든다. 앵귤러를 시작하는 데 가장 큰 걸림돌인 타입스크립트를 쉽게 설명하여 학습 부담을 줄여주며, 저자의 실무 경험을 적극 살려 실무에 꼭 필요한 개념과 실수하기 쉬운 부분을 자세히 설명한다. 

 

undefined

 

조우진 저자

조우진

읽는 것을 좋아하는 개발자입니다. 사실 읽는 것보다 멋진 책을 모으는 것에서 더 큰 즐거움을 느낍니다. 대학원 시절 워드프레스로 NGO단체 홈페이지를 만들어 주면서 기술로 누군가에게 도움을 주는 일에 흥미를 느꼈습니다. 티켓몬스터에서 2년간 상품 등록/연동 업무를 했고 지금은 라인플러스에서 SNS 서비스 개발팀 일원으로 새로운 도전을 하고 있습니다.

PART I 기초 다지기

 

CHAPTER 1 앵귤러 준비하기

1.1 Node.js

1.2 NPM 다루기

__1.2.1 패키지 설치

__1.2.2 실습: welcome-msg-app

__1.2.3 패키지와 의존 관계

__1.2.4 로컬 환경과 전역 환경

__1.2.5 package.json

1.3 마치며

 

CHAPTER 2 앵귤러 시작하기

2.1 타입스크립트

__2.1.1 타입 언어

__2.1.2 상위 언어

__2.1.3 열린 언어

__2.1.4 에디터 설정

2.2 Hello, Angular

__2.2.1 ng new

__2.2.2 ng serve

__2.2.3 ng test

__2.2.4 타입 선언 정보

2.3 마치며

 

CHAPTER 3 앵귤러 아키텍처

3.1 뷰를 구성하는 요소

__3.1.1 컴포넌트와 템플릿

__3.1.2 컴포넌트 생명 주기

__3.1.3 컴포넌트 트리

__3.1.4 데이터 바인딩

__3.1.5 마치며

3.2 애플리케이션을 완벽하게 만드는 요소

__3.2.1 서비스와 의존성 주입

__3.2.2 상태 관리 및 공유

__3.2.3 지시자

__3.2.4 파이프

__3.2.5 모듈

3.3 머티리얼 패키지 적용

3.4 마치며

 

PART II 기본기 향상하기 

 

CHAPTER 4 뷰를 구성하는 기초

4.1 컴포넌트

__4.1.1 컴포넌트의 선언

__4.1.2 메타데이터

__4.1.3 부트스트래핑

__4.1.4 컴포넌트 트리

4.2 템플릿

__4.2.1 절차적 방식과 선언적 방식

__4.2.2 데이터 바인딩

__4.2.3 지시자

__4.2.4 파이프

4.3 마치며

 

CHAPTER 5 견고한 애플리케이션 만들기 

5.1 서비스

__5.1.1 서비스의 생성과 사용

__5.1.2 실습: 마우스 위치 로거

__5.1.3 싱글턴으로서의 서비스

5.2 의존성 주입

__5.2.1 Injectable, Inject 데코레이터

__5.2.2 providers

__5.2.3 의존성 주입기 트리

__5.2.4 Host, Optional 데코레이터

5.3 테스트 코드 작성

__5.3.1 서비스 테스트

__5.3.2 컴포넌트 테스트

5.4 디버깅

5.5 마치며

 

CHAPTER 6 컴포넌트 고급

6.1 독립된 요소: 컴포넌트

__6.1.1 웹 컴포넌트

__6.1.2 컴포넌트와 스타일 정보

__6.1.3 컴포넌트의 독립성을 깨뜨리는 안티패턴

6.2 컴포넌트 간 상태 공유와 이벤트 전파

__6.2.1 부모-자식 컴포넌트 간의 통신

__6.2.2 실습: 컴포넌트 통신 V2

__6.2.3 다양한 상태 공유 시나리오

__6.2.4 싱글턴 서비스를 이용한 상태 공유

6.3 앵귤러 방식의 템플릿 요소 탐색

__6.3.1 ViewChild를 사용한 요소 탐색

__6.3.2 템플릿 참조 변수와 ElementRef

__6.3.3 Content Projection과 ContentChild를 사용한 요소 탐색

6.4 컴포넌트 생명 주기

__6.4.1 ngOnInit과 ngOnDestroy

__6.4.2 ngAfterContentInit과 ngAfterViewInit

__6.4.3 ngOnChanges

__6.4.4 ngDoCheck

__6.4.5 ngAfterContentChecked와 ngAfterViewChecked

__6.4.6 지시자의 생명 주기

6.5 마치며

 

CHAPTER 7 HTTP 통신과 RxJS

7.1 HttpModule과 Http 서비스 기초

__7.1.1 실습: 초간단 사용자 조회 애플리케이션

__7.1.2 angular-in-memory-web-api 활용

7.2 RxJS

__7.2.1 왜 RxJS인가?

__7.2.2 RxJS 원리

__7.2.3 RxJS 연산자 활용

__7.2.4 RxJS를 활용한 마우스 위치 로거 코드 개선

7.3 게이트웨이 기반 Http 서비스 활용

__7.3.1 ApiGateway 서비스

__7.3.2 실습: 사용자 관리 애플리케이션

__7.3.3 HTTP 통신 관련 중복 코드 제거

7.4 마치며

 

CHAPTER 8 폼 다루기

8.1 폼의 구성

__8.1.1 폼 모델

__8.1.2 AbstractControl과 폼의 값 상태

__8.1.3 폼 지시자

__8.1.4 실습: NgModel과 FormControl

8.2 템플릿 주도 폼

__8.2.1 ngModel과 양방향 바인딩

__8.2.2 실습: 템플릿 주도 폼

__8.2.3 폼 유효성 검증

__8.2.4 커스텀 Validator 지시자 작성

8.3 반응형 폼(모델 주도 폼)

__8.3.1 ReactiveFormsModule

__8.3.2 FormBuilder

__8.3.3 FormGroup, FormControlName

__8.3.4 실습: 반응형 폼

__8.3.5 실습: 동적 폼

8.4 마치며

 

CHAPTER 9 앵귤러 동작 원리

9.1 부트스트랩과 컴파일

__9.1.1 애플리케이션의 최초 진입점

__9.1.2 JIT 컴파일

__9.1.3 AOT 컴파일

__9.1.4 부트스트랩 과정 분석

9.2 Zone.js와 변화 감지

__9.2.1 앵귤러를 움직이게 만드는 세 가지 이벤트

__9.2.2 Zone.js를 활용한 비동기 코드 감지

__9.2.3 상태 변화를 일으키는 세 가지 이벤트

__9.2.4 변화 감지 트리와 변화 감지 전략

9.3 마치며

 

PART III 깊이 들어가기

 

CHAPTER 10 프로젝트: 상품 관리 애플리케이션 구성

10.1 애플리케이션 설계

__10.1.1 기능 정의 및 도메인 모델

__10.1.2 컴포넌트 트리

10.2 프로젝트 구성

10.3 프로젝트 구현 1: 기본 레이아웃 구현

__10.3.1 주요 컴포넌트 생성

__10.3.2 컴포넌트 구현 코드

__10.3.3 라우터 없이 사이드바 기능 구현

10.4 마치며

 

CHAPTER 11 모듈과 라우터

11.1 모듈의 분리

__11.1.1 기능 모듈

__11.1.2 핵심 모듈

__11.1.3 모듈의 imports, exports

__11.1.4 프로젝트 구현 2: 도메인별 기본 구현

11.2 라우터 기본

__11.2.1 라우터 설정: Route

__11.2.2 Routes 등록

__11.2.3 RouterLink, RouterLinkActive

__11.2.5 프로젝트 구현 3: 라우터 설정

__11.2.6 라우터 사용의 장점

11.3 라우터 활용

__11.3.1 상태 관리

__11.3.2 Router

__11.3.3 ActivatedRoute

__11.3.4 가드의 설정

11.4 모듈별 라우터

__11.4.1 컴포넌트 경로

__11.4.2 라우팅 설정 분리하기

__11.4.3 프로젝트 구현 4: 라우터 설정 분리

11.5 마치며

 

CHAPTER 12 프로젝트: 파이어베이스 사용

12.1 파이어베이스 사용

__12.1.1 프로젝트 생성

__12.1.2 파이어베이스 CLI

__12.1.3 파이어베이스 연동

12.2 프로젝트 구현 5

__12.2.1 도메인 모델 클래스 구현

__12.2.2 사용자 세션 기능 구현

12.3 프로젝트 구현 6

__12.3.1 실시간 데이터베이스 사용

__12.3.2 NoCounterService 구현

__12.3.3 DataStoreService 구현

__12.3.4 파이어베이스 보안 규칙 설정

12.4 마치며

 

CHAPTER 13 프로젝트: 상품 관리 애플리케이션 구현 최종

13.1 프로젝트 구현 7

__13.1.1 카테고리 관리 뷰

__13.1.2 CategoryDetailComponent

__13.1.3 CategoryDetailResolverService

__13.1.4 CategoryItemComponent

__13.1.5 CategoryManagementComponent

__13.1.6 CategoryListResolverService

13.2 프로젝트 구현 8

__13.2.1 상품 관리 뷰

__13.2.2 ProductDetailComponent

__13.2.3 ProductDetailResolverService

__13.2.4 ProductListComponent

__13.2.5 ProductListResolverService

__13.2.6 CheckedProductSetService

__13.2.7 ButtonGroupComponent

__13.2.8 ProductBulkUpdaterService

__13.2.9 ProductManagementComponent

13.3 프로젝트 최종 구현

__13.3.1 MainDashboardComponent

__13.2.2 스피너

__13.3.3 상품 상태 파이프

__13.3.4 CanDeactivate 가드 설정

__13.3.5 세션 가드

13.4 마치며

 

부록. 자바스크립트의 진화: ES6(ECMAScript 6)

1. ES6 표준의 의미

2. 모듈 시스템

3. 모듈 번들러

4. 실습: area-calculator

더 쉽게, 더 꼼꼼하게, 더 실무에 가깝게! 

새로운 프레임워크가 등장하면 이를 공부하고 장점을 설명하는 사람이 많습니다. 그러나 이를 실제 업무에서 바로 적용할 수 있는 사람은 그리 많지 않습니다. 이 책은 실제 업무에서 앵귤러를 도입하였던 저자의 경험을 바탕으로 합니다. 

자료가 너무 부족해 직접 고민하고 부딪히며 과제를 해결해야 했고 그 덕에 더 꼼꼼하게, 더 쉽게, 더 실무에 가깝게 앵귤러를 이야기할 수 있게 되었습니다. 또한 지루하고 식상한 코드에서 벗어나고자 고민하였습니다.

 

“이 책은 전적으로 프로젝트의 경험에서 나온 산물입니다. 단순히 호기심으로 앵귤러를 살펴봤다면 지금과 같이 깊이 들여다 보지 않았을 것입니다. 프로젝트를 하면서 만난 다양한 이슈도 앵귤러를 어떻게 하면 더 잘 사용할 수 있을지 많은 생각을 남겨 주었습니다. 이러한 고민들이 큰 덩어리가 되어 하나의 책이 되었습니다.” - 지은이의 말 중에서

 

주요 내용

- 앵귤러 프레임워크 전체 구조

- 앵귤러 CLI를 활용한 애플리케이션 개발 방법 

- 앵귤러 생태계의 다양한 서드파티 라이브러리 활용

- 파이어베이스를 사용한 앵귤러 웹 애플리케이션 배포

 

깃허브에 코드도 엉성하고, 3독째인데

앵귤러 처음 시작하는 사람한텐 정말 이렇게 불친절한 책은 처음봅니다.

스프링 최범균씩 책도 정말 딱딱하다 느꼈는데 이 책의 어투는 친절해보였지만 실제 코드는 엄청 엉성하고 띄엄띄엄 진행되어

화가 날때도 많았구요.

이론이랑 앵귤러의 원칙에 대한 설명은 대부분 괜찮았지만 의존성의 필요성에 대한 코드 예제 5-1 , 5-2는 최악이였습니다.

다음엔 좀 더 처음 진입하는 학생 입장에서 고려해 책을 적으주셨으면 합니다

그래도 앵귤러 서적이 잘없는데 책을 적어주셔서 감사합니다


진심으로 감사를 드립니다.

 

항상 건강하시고 더욱 번창하십시오.

 

- 5년차 백엔드 개발자-

우선 초판치고 너무 오탈자도 많고 예제 코드에도 다른 코드 적혀있고, 설명도 적절하지 못한게 많았습니다.

이런 문제 많은 책에서 첫걸음이라는 제목은 어울리지 않네요;;

다음에는 발행하기 전에 확인 좀 꼼꼼히 하시길....

앵귤러는 프론트앤드 작업을 하기위해 필요한 프레임워크중 하니이고 개발자에 인기가 있다는 이야기를 들어왔고 학습을 하고 싶은 와중에 이 책이 출간되어 선택하여 읽게 되었다. 

 

우선 이책의 구성은 

1. 기초 다지기 : 앵귤러 아키텍처 설명, NPM, 개발환경 설정

2. 기본기 향상하기 : 뷰,폼, 앵귤러 동작원리 

3. 깊이 들어가기 : 앵귤러 프로젝트등

으로 구성되어 있다. 

 

우선 이책은 난이도가 조금 있다는 생각이 든다. 1.기초 다지기라고 했었지만 처음에 해당 내용을 이해하고 NPM, 개발 환경, git 등을 설치 할때 상당한 시간이 필요 했었다. 그리고 앵귤러 아키텍처를 이해하기위해서 해당 내용을 몇번 읽어본 후에 한빛 미디어에서 개최한  오프라인 강의 및 발표자료를 참고한 후에야 해당 내용이 이해가 되기 시작하였고 그 다음 기본기 향상하기, 깊이 돌아가기 등은 이해를 한 후에는 크게 어렵지 않게 테스트를 진행하면서 학습할 수 있었다. 

 

이 책의 장점, 단점은 아래와 같다. 

 

장점 

- 앵귤러의 아키텍처 및 기본 개념 파악

- 프로젝트 챕터를 통해 앵귤러의 다양한 적용 방법 학습 가능 

- 앵귤러의 내용을 다양한 방법으로 설명 및 확인 가능 (폼, 서비스 등등)

- 그림으로 구조를 설명 

 

단점 

- npm환경, 예외상황에 인하여 검색 및 학습 필요 (앵귤러 문제가 아닌 다른 환경 확인이 필요)

- 개발환경에 대한 적응 필요 (이클립스를 주로 쓰는 입장에서 다른환경에 대한 적응 필요)

 

 

우선 장점으로 앵귤러에 대해서 알아야 할 가장 중요한 아키텍처와 그리고 앵귤러 요소에 대한 예제와 방법을 상세히 설명을 하고 있다는 점이다. 4장의 컴포넌트 트리 그림, 6장의 생성부터 소멸까지 Component 생명주기 그림 등 학습에 이해를 할 수 있게 만드는 자료가 곳곳에 많이 쓰여 있고 학습을 하는데 많은 도움을 주고 있었다.  

 

단점은 학습하는 측면에서 사소한 부분이었고 인터넷을 통해서 관련 내용을 찾아보면 충분히 학습이 가능했다. (이클립스에서 앵귤러를 사용하는 방법등) 

그리고 단점이라고 이야기 하기는 했지만 툴(VS Code), 환경설정(npm, ng serve)등 다른 개발방법을 확인하면서 학습할 수 있어서 공부하는데는 많은 도움이 되기는 하였다.  

 

마지막으로 이책은 앵귤러 학습을 하기위한 좋은 책이라고 생각이 든다. 

다만 학습하기 전에 한빛미디어를 통해서 발표한 자료를 먼저 보고 학습하기를 권해본다. 

(https://www.facebook.com/hanbitmedia/posts/1380582365311741)

해당 자료를 통해서 나도 이해가 안가는 기초를 잡을수 있었고 많은 도움이 되었다. 

책을 볼때 가장 중요시 하는 것이 있다.

바로 서문과 목차이다.

목차는 책의 전체적인 내용을 알 수 있도록 하고

서문은 글쓴이가 어떤 목적으로 책을 썼는지 알 수  있기 때문이다.

앵귤러에 대해서 잘 알지 못했던 나는 


먼저 목차에 대해서 살펴보기로 하였다.

큰 목차를 보면 다음과 같다.

 

PART I 기초 다지기


CHAPTER 1 앵귤러 준비하기

1.1 Node.js

1.2 NPM 다루기



CHAPTER 2 앵귤러 시작하기

2.1 타입스크립트

2.2 Hello, Angular

2.3 마치며


CHAPTER 3 앵귤러 아키텍처

3.1 뷰를 구성하는 요소

3.2 애플리케이션을 완벽하게 만드는 요소

3.3 머티리얼 패키지 적용

3.4 마치며


PART II 기본기 향상하기 


CHAPTER 4 뷰를 구성하는 기초

4.1 컴포넌트

4.2 템플릿

4.3 마치며


CHAPTER 5 견고한 애플리케이션 만들기 

5.1 서비스

5.2 의존성 주입

5.3 테스트 코드 작성

5.4 디버깅

5.5 마치며


CHAPTER 6 컴포넌트 고급

6.1 독립된 요소: 컴포넌트

6.2 컴포넌트 간 상태 공유와 이벤트 전파

6.3 앵귤러 방식의 템플릿 요소 탐색

6.4 컴포넌트 생명 주기

6.5 마치며


CHAPTER 7 HTTP 통신과 RxJS

7.1 HttpModule과 Http 서비스 기초

7.2 RxJS

7.3 게이트웨이 기반 Http 서비스 활용

7.4 마치며


CHAPTER 8 폼 다루기

8.1 폼의 구성

8.2 템플릿 주도 폼

8.3 반응형 폼(모델 주도 폼)

8.4 마치며


CHAPTER 9 앵귤러 동작 원리

9.1 부트스트랩과 컴파일

9.2 Zone.js와 변화 감지

9.3 마치며


PART III 깊이 들어가기

CHAPTER 10 프로젝트: 상품 관리 애플리케이션 구성

10.1 애플리케이션 설계

10.2 프로젝트 구성

10.3 프로젝트 구현 1: 기본 레이아웃 구현

10.4 마치며


CHAPTER 11 모듈과 라우터

11.1 모듈의 분리

11.2 라우터 기본

11.3 라우터 활용

11.4 모듈별 라우터

11.5 마치며


CHAPTER 12 프로젝트: 파이어베이스 사용

12.1 파이어베이스 사용

12.2 프로젝트 구현 5

12.3 프로젝트 구현 6

12.4 마치며


CHAPTER 13 프로젝트: 상품 관리 애플리케이션 구현 최종

13.1 프로젝트 구현 7

13.2 프로젝트 구현 8

13.3 프로젝트 최종 구현

13.4 마치며


부록. 자바스크립트의 진화: ES6(ECMAScript 6)

1. ES6 표준의 의미

2. 모듈 시스템

3. 모듈 번들러

4. 실습: area-calculator  


 


 


제목 그대로 앵귤러에 대해 처음 배우는 사람들에게 전체적인 동작원리와 구성방식에 대해 알려준다.

웹프론트 개발에 대해 jsp와 서블릿을 공부했고, javascript를 공부하고 있는 나에게

이런 기술도 있어~ 라고 알려주는 방식의 구성과 내용을 가지고 있다.


하지만 실제로 내용을 들여다 보면 생각했던 것보다 쉽지 않다.

이는 javascript와 webpack등 접해보지 않는 것들이 많이 나와 

이해하는데 구글링을 하면서 많은 자료를 찾아야 했다.


또 하나의 특징이자 장점은 firebase에 대한 내용이다. 

앵귤러와 firebase는 모두 구글에서 개발되어 나온 것이기 때문에

서로의 호환성이 좋다. 

시중에 firebase에 대한 내용을 다루는 책은 흔하지 않은데

앵귤러 첫걸음은 그 흔하지 않는 책중 하나이다.

  • 소개
이 책은 이미 베타 리딩을 통해 접해본 경험이 있는 책이었다.
사실 원고를 보고 실망을 했었지만 직접 보면서 예제 부분이 맘에 들었던 책으로
굉장히 디테일하게 베타 리딩 소감을 전달했던 것이 기억난다.

일단 한빛에서는 "첫걸음" 이라는 책 제목을 요새 많이 쓰지만 첫걸음으로는 무리가 있다.
왜냐하면 요새 앵귤러나 리액트를 공부하려는 경우 개발자들도 많지만
퍼블리셔들도 있을 뿐만 아니라 개발을 접하는 입문자들이 다양하기 때문이다.

때문에 앵귤러나 리액트를 위해서는 JavaScript뿐만 아니라
Webpack, Babel, TypeScript, EcmaScript6 이상을 습득해야 하는 데
이 책에서는 간단히 부록 형식으로만 다루기 때문이다.

하지만 기초 수준의 이론을 설명하고 예제로 시작하는 흔한 과정이 아닌
예제를 통해 앵귤러를 접할 수 있는 책이다

예제만 잘 따라 하다 보면 어느새 실력이 쌓여있는 것을 볼 수 있을 것이다



  • 독특하지만 현실적인 예제 위주의 서적
베타 리딩을 할 때는 몰랐지만 저자분께서 실제 현업에서 앵귤러를 접하며
습득한 것을 알게 되었고 어쩐지 예제가 독특하지만 대충 만든 예제가 아닌 깊이 있는
예제들로 빼곡하다는 걸 알 수 있었다.

보통 Udemy 같은 동영상이나 실제 레퍼런스를 참조하며 공부했었는 데
Udemy에서 참신한 예제를 볼 때마다 역시 외국물은 다르구나 생각하고는 했는데

이 책에 있는 예제들 또한 이에 전혀 뒤처지지 않는다.

왜냐하면 국내에는 Firebase를 다룬 서적이 아직 없는 걸로 알고 있는 데
이 책에서는 Firebase도 다루고있다. 물론 굉장히 크게 다루는 건 아니지만
앵귤러와 Firebase는 모두 구글에서 제공하는 서비스와 프레임워크이기 때문에
연동하여 학습하기 굉장히 좋다.

특히 해외에서는 앵귤러를 학습할 때 파이어베이스가 빠지지 않고 등장한다

또한 구조를 간한 트리를 통해 자주 설명해준다.
정말 컴포넌트화라는 건 중요하기 때문에 저런 구조를 시각화해서 보여준다는 것은
이제는 필수라고 볼 수 있다


예제 코드의 가독성에 신경 썼다는 것을 알 수 있다
  • 기초와 입문을 프로젝트를 통해 경험한다

입문 또는 기초를 위해서라면 어쩔 수 없이 ES6, TypeScript, JavaScript 등등
배워야 하는 건 산더미이다.

하지만 "앵귤러 첫걸음"과 함께라면 믿고 예제 위주로 습득을 하며
필요하거나 헷갈리는 부분을 찾아가며 공부하는 것도 굉장히 효율적이며
빠르다고 생각이 든다.

어떻게 사전 학습 없이 앵귤러를 공부 할 수 있을까?
싶지만 그걸 위해서 지루하게 ES6와 TypeScript의 기초를 습득하다가
흥미를 잃기보다는 이렇게 예제 위주로 시작하는 것도
충분히 좋은 학습방법이라는 것을 알 수 있다

심화 예제는 정말 알찬 구성을 지니고 있다

  • 총평
Back-end 개발자거나 Java 위주의 개발자인데 프론트엔드 개발에 관심이 있거나
프로젝트 연습이 필요한 개발자 (Back-end나 Java 개발자 앵귤러가 접하기 쉽다)

예제 위주의 학습이 몸에 맞는 앵귤러 초보자

TypeScript 또는 EcmaScript6 이상을 겉핥기로 습득하여 활용이 필요한 경우

위의 경우 앵귤러 첫걸음에 딱 맞는 독자가 아닐까 싶다.

이 책은 앵귤러 프레임워크에 대한 기초부분, 응용부분을 설명하고 있다.

 

사실, JS와 HTML의 기본밖에 모르던 내가 이해하기엔 많은 어려움이 있었으나,

기본적인 개념 모든것을 이해하고 있는 분들이라면 충분히 이 책을 통해서

 

원하는 웹 애플리케이션을 만들 수 있을거라고 생각이 든다.

 

앵귤러 첫걸음

책 소개에 앞서

 

먼저, 이 책을 보는 시점의 제 기술수준을 밝히면

 

5~6년차 Java개발자로 웹개발/백엔드개발을 주로 해왔구요. 요즘은 백앤드 개발을 주로 하고 있고

HTML,CSS,JQuery,Bootstrap.. 등등 보통 SI개발자들 많이 쓰는 기술 다 비슷하게 써 봤을 것 같습니다.

TypeScript, Angular – 아예 처음은 아니고 공식사이트에서 튜토리얼을 돌려보고 간단한 페이지를 만들어본 경험은 있는 상태.

 

이 책을 보게된 계기

 

요즘엔 동적화면구성을 많이 하다보니 화면한개에 HTML, 스타일, 스크립트까지 너무 길어서 다 만들고나면 어디에 뭐가 있는지 기억도 안 날 지경으로 코드가 망가져 버리는데

정리를 하려고 해도 스크립트 코드 특성상 디버깅/테스트도 힘들고 하다보니 모듈화를 해서 구성을 하는것도 쉽지가 않구요.

결국엔 기능만 구현 해 놓고 버리게 되는 경우가 많습니다.

이런문제를 해결하기 위한 방법 중 하나로 Angular, React .. 등의 기술에 관심을 갖고 살펴보던 와중에

한빛 도서리뷰어에 뽑혀서 이 책을 보게 됐습니다.

공식사이트 : 앵귤러 첫걸음 http://www.hanbit.co.kr/store/books/look.php?p_code=B3348481708

 

좋은점/아쉬운점

 

여기부터는 책을보면서 그때그때 메모했던 부분을 옮겨적은거라 내용이 자연스럽게 이어지지 않을 수 있습니다.

 

  • Angular/Vue/React… 저는 뷰 프레임워크 기술을 여러개 놓고 고르면서 시간을 많이 낭비했습니다. 최종적으로 Angular를 선택했구요. 저와같은 고민을 하며 시간을 낭비할 독자들을 위해 왜 Angular를 선택해야 하는지 비교분석 내용이 있었으면 좋겠습니다.
  • 오히려 장점수도 있는 부분이지만… 좀 간단히 설명하고 넘어갔으면 싶은 부분에 대한 설명이 과도한 경우도 간혹 있었다.
  • 윈도우도 맥의 brew처럼 scoop, chocolate같은 패키지 관리자가 있는데…
  • Angular를 공부하는 사람이 애초에 초보자는 아닐거다. 아무리 첫걸음이라고 해도.... 1~2단원은 너무 간단한 튜토리얼은 지양하고 조금은 이론적인 내용으로 Angular의 구조나 설계사상에 대한 설명이 있었으면 어떨까 싶다.
  • 이 책은 좀 무작정따라하기~ 시리즈류의 구성으로… 그냥 모든 내용이 순서대로 나온다. 공식 홈페이지에 가면 도큐먼트가 다 있지만 굳이 책을 사서 보는것은 교과서를 놔두고 요약집(참고서?)를 사보는 것과 비슷하다. 기술의 뼈대를 이해하고 기술의 용어와 키워드만 익히면 그 다음부터는 검색이다. 한번 본 책을 다시 뒤적이는 경우는 더 드물고...  이런점을 감안할 필요가 있다.
  • 소스코드가 없다..ㅠㅠ
  • 다른부분에 비해 ES6와 ts 언어 자체에 대한 설명은 너무 짧다.
  • 소스코드에 주석이나 말풍선으로 붙여놓으면 쉽게 볼 수 있는 부분을 글로 풀어서 써놓는 경우가 많다. 

 

후기

 

처음 Angular를 접한 사람이 궁금해할만한 부분들을 구석구석 빠짐없이 잘 소개 해 주는 책으로

인내심을 가지고 끝까지 본다면 Angular 개발을 하는데 큰 도움이 될 것 같다.

"앵귤러 첫걸음 -조우진"

별점: ★★★★☆

 

본 도서는 서문에서도 언급하듯 JQuery나 AngularJS를 사용하여 웹 개발을 해 본 경험이 있는 독자를 대상으로 쓰여졌다. 저자는 주로 백앤드 개발을 하면서 웹 개발이 필요한 개발자를 위한 개발서라고 설명한다. 그의 설명처럼 이 도서를 읽고, 나는 AngularJS를 사용해보지 않은 독자라도 적어도 자바스크립트에 대한 기본적인 내용을 알고 있어야 학습에 지장이 없을 것이라고 평가할 수 있었다. 또한 흥미로웠던 점은 예제를 Github를 통해 받아 사용할 수 있도록 했다는 것이다. 보통 기존의 도서들은 특정 사이트 혹은 다운로드 링크를 소개하지만 본 도서는 Github에 대한 사전지식이 없다면 Github와 Angular를 둘 다 학습해야하는 번거로움이 생길 수 있다고 생각된다. (간혹 SI의 경우 Github를 사용하지 않는 곳도 있으니 말이다.)  

  

  

조금의 아쉬움이 들었지만 전체적인 구성은 충분히 독자를 배려한다고 생각되었다. 기초를 위해 설명한 Node.js, NPM, 타입스크립트는 자바스크립트의 기본 내용을 이해하고 있는 독자라면 충분히 따라갈 수 있을 정도의 난이도로 설명되었고, Angular의 아키텍처에 대한 기초적인 설명을 통해 이전에 배웠던 것들이 자연스럽게 연결된다는 느낌을 받았다. 그리고 각 장마다 마지막 부분에 '마치며'라는 챕터를 추가해 이번 장에서 배운 내용을 정리해 준 것이 1독 이후에 참고할 때 아주 유용하였다. 그러나 초반의 설명이 다소 난해한 독자를 위해 '조금 더 보기 편하게 그림 자료를 제공했으면 어땠을까?'라는 생각도 들었다.  

  

  

기본적으로 Angular을 사용하기 위해 알아야할 것들에 대해서도 충분히 언급되었다. 가령 컴포넌트에 대해서는 챕터 4의 간단한 설명과 별도로 챕터 6에서 컴포넌트 고급이라는 주제로 보다 면밀히 컴포넌트에 대해 살펴보는 부분이 그러했다. 이후 책을 읽어 내려가고, 예제를 살펴보던 중 '개론적인 설명 외에도 앵귤러를 사용할 때 DOM API를 선택하지 말아야하고, 그 이유에 대해 설명하는 부분'에서 저자가 독자를 위해 단순히 '사용하지 마세요!'가 아니라 '왜 사용하지 말아야하는지'에 대해 설명하는 것을 보며 공감하며 읽은 기억이 있다. 그래서 나는 이 책을 '자신의 경험을 공유하여 고민 끝에 내놓은 책'이라고 말하고싶다.  

  

  

또한 챕터 10부터 진행되는 여러가지 프로젝트를 만드는 부분에 대해서는 뼈대를 만든 건물에 콘크리트를 붓는 것처럼 지금까지 습득한 개론적인 내용을 견고하게 만들어 주었다고 느꼈다. 또한 Angular에서의 모듈과 라우터의 개념과 필요성에 대해 확실하게 설명하였다. 그러나 모듈과 라우터에 대한 설명에서는 다소 헷갈리게 설명한다고 느꼈다. 기본적으로 컴퓨터 공학에서 설명하는 모듈과 라우터와는 다른 Angular에서의 모듈과 라우터에 대한 설명이기 때문이다. 당연히 이에 대해 알고 있는 독자들은 넘어가겠지만 만약 이 책에서 배운 개념이 모든 모듈과 라우터에 대한 설명으로 받아드릴 것이 우려되었다. '이 부분에 대한 설명이 약간이라도 있으면..' 하는 아쉬움이 들었다.  

  

  

마지막으로 부록에서 ES6를 설명하는 것이 꽤 좋았다. 본 도서가 자바스크립트에 관한 책이 아님에도 ES6에 대해 설명하며 Angular을 처음 접하는 독자에게 Angular의 문법인 ES6를 소개하기 때문이다.  

  

결론적으로 이 책은 앞서 이야기한 어느정도 지식을 지닌 백엔드 개발을 하면서 웹 개발이 필요한 개발자를 위한 개발서이다. 만약 당신이 그러하다면 이 책을 적극 추천한다.

 

이번에 리뷰에 참여하는 서적은 조우진님의 <앵귤러 첫걸음>입니다. 최신 버전의 Angular 4를 소개하고 있는데, 책의 주요 내용을 그동안 필자가 사용했던 TypeScript와 ECMAScript 6기반으로 소개하고 있어 낯설지 않았습니다. 좋은 책을 통해 Angular의 최신 버전을 리뷰할 수 있는 기회가 되었습니다. 리뷰를 진행하기에 앞서 리뷰에 참여하게 도와주신 한빛미디어 관계자님께 감사의 말씀을 전합니다.

 

Angular란?

앵귤러(Angular) 프레임워크는 구글에서 제작한 애플리케이션 프레임워크(MIT License 정책으로 제공하는 오픈소스 소프트웨어)입니다. 앵귤러는 리액트(React.js)와 뷰(Vue.js)와 더불어 가장 널리 알려져 있는 프레임워크입니다. 

 

Angular에 대해 더 자세한 내용을 알고 싶으신 분은 다음 링크의 글을 확인하시면 도움이 될 것입니다.

 

- angular: Official Homepage [링크]

- 한장현님: Angular2 vs. React [링크]

 

먼저 Angular의 간단한 역사를 살펴보겠습니다. AngularAngularJS와는 사뭇 다릅니다. 기존 AngularJS의 문제점과 복잡함을 해결하기 위해 새롭게 설계한 프레임워크입니다. 이 문제로 말미암아 기존 개발자들의 많은 불만과 다양한 논란이 있었습니다. 하위 호환성도 적용되지 않습니다. 이러한 불리한 조건에서도 구글은 계획대로 강행하여 2016년 9월 14일에 최초 버전을 출시했습니다. 2017년 7월초 시점으로 가장 최근 버전은 Angular 4.2.6입니다.

 

Angular가 처음 출시했을 때는 공식 홈페이지 문서조차 많이 빈약했습니다. 안정화가 되지 않아 홈페이지의 내용이 매일 변경되었고, 관련 예제가 동작하지 않은 일도 있었습니다. 하지만 지금은 많이 안정화되어 있으며, 홈페이지에서 제공하는 문서가 가장 좋은 참고자료라고 생각합니다.

 

이 책에서 다루는 내용은?

'Angular 첫걸음'은 크게 나눠보면 3가지 주제(기초 다지기, 기본기 향상하기, 깊이 들어가기)로 구성하고 있습니다.

 

첫 번째 주제인 '기초 다지기' 부분에서는 Angular를 시작하기 위한 기본기를 습득할 수 있는 정보를 제공합니다. Angular를 설치하는 방법과 간단한 사용법, 그리고 Angular의 아키텍처를 설명합니다. 이 부분은 매우 쉽게 읽을 수 있으며, 특히 Angular 아키텍처는 꼭 읽어보는 것을 권장합니다.

 

두 번째 주제인 '기본기 향상하기' 부분에서는 Angular의 주요 컴포넌트와 템플릿 등을 소개하고, 비동기 이벤트 처리를 효과적으로 다루기 위한 `RxJS`에 대해 소개합니다. 이 부분부터는 다소 어려운 개념이 소개되므로 입문자에게는 조금 벅찰 수 있습니다. 하지만 차근차근 따라하며 이해되지 않은 부분은 인터넷 검색과 함께 조금씩 나아가면 저자가 하는 이야기를 이해할 수 있을 것 같습니다.

 

마지막으로 '깊이 들어가기' 주제에서는 앞에서 배운 지식을 이용하여 간단한 상품 관리 애플리케이션을 제작합니다. 상품 관리 애플리케이션의 기본 설계 과정을 설명하고, Angular의 모듈과 라우터에 대해 소개합니다. 애플리케이션을 제작하기 위해 백엔드 애플리케이션이 필요한데, 구글의 파이어베이스를 이용하여 간단하게 CRUD 처리하여 Angular에 집중할 수 있게 도와줍니다. 

 

500 페이지 내외의 책에 모두 담기에 Angular는 방대한 프레임워크입니다. 에서 Angular의 모든 내용을 담는 것은 불가능합니다. 이 책을 기본으로 공식 홈페이지의 내용을 학습하면, 좀 더 수준 높은 Angular 개발자가 될 수 있는 기초 체력을 쌓는 데는 더할 나위 없는 책이 될 것으로 생각합니다.

 

마치면서...

'Angular 첫걸음'은 얼마 전(2017년 3월) 새롭게 출시된 Angular 4를 기준으로 Angular의 개발 환경 설정부터 Angular와 관련된 전반적인 내용을 설명하고 있습니다. 부록으로 ECMAScript 6에 대해 소개하고 있는 점도 매력적입니다. 

 

'Angular 첫걸음'은 Angular를 처음 접하는 분은 봐야 할 좋은 책 중에 한 권입니다. 아쉬운 점은 찾아보기(인덱스)가 없다는 점과 약간의 오탈자가 많다는 점입니다. 마지막으로 저자의 인터뷰 링크를 제공하며 글을 마칩니다. 

앵귤러 실무 입문서

기본적인 개념을 시작으로 RxJs까지 실무를 위한 입문서

쉽게 읽히지는 않지만 꽉찬 내용

프론트엔드 프레임워크 입문서로 난이도가 있는편

 

 추천하고 싶은 사람​

  • 프론트 엔드 개발자로 프레임워크를 사용해 보고 싶은 사람
  • 앵귤러, 리액트, Vue.js 등 여러 웹 프레임워크에 입문해보고 싶은 사람 
  • 가장 최신 앵귤러 스펙과 구글 공식 언어로 채택된 타입 스크립트의 활용이 궁금한 사람 
  • 실무에서 필요로 하는 앵귤러 기술을 익히고 싶은 사람 

 

추천하고 싶지 않은 

  • 사람​HTML &CSS JavaScript 등의 기본 프론트엔드 기술에 익숙하지 않은 사람
  • 술술읽히며 부담 없는 앵귤러 입문서를 찾는 사람 

 

 

Summary

상당히 빡센 책이었습니다. 외관상으로는 매우 귀욤귀욤하며 '앵귤러의 세계로 오신 것을 환영합니다^^' 라고 이야기 하는 것 같지만, 실상은 매우 꽉찬 실무 입문서로 한 줄 한 줄 각잡고 하나하나 곱씹어가며 읽어봐야했던 책이었습니다. 단순히 앵귤러의 기본 구조 또는 활용법만 담은 것이 아니라, 실무에서 필요로 할 사항들을 알차게 담아낸 책입니다. ​ 그렇기 때문에 상당히 빈틈 없는 내부 디자인을 가지고 있고 이게 어떤 면에서는 가독성을 낮추고 학습 의욕을 저하시키기도 했습니다. 기술 -> 코드 -> 코드 설명 이라는 매우 기본에 충실한 구조이고, 입문서의 분위기를 풍기지만, 기술적인 표현만 그득그득한 책이었습니다. 

 

서문을 보면 실무에서 앵귤러 프로젝트를 진행하면서 얻게된 지식과 노하우를 풀어놓은 책이라고 소개되어 있습니다. 출판사 측에서도 마음에 드는 서적 또는 아이디어가 없던 상황에서 혜성처럼 등장한 책이라고 소개하기도 했구요. 즉 벼르고 벼른 입무 + 실무 모두를 아우른 그런 책입니다. 

  

500페이지의 책에서 정말 말 그대로 입문, 기본기에 해당하는 내용은 100페이지 정도이며, 200페이지는 앵귤러의 컴포넌트, 동작 원리 등에 대한 심도 있는 이해, 나머지 200페이지는 실무에 적용하기 및 프로젝트에 관한 내용입니다. 

  

단순한 입문책이 아닙니다. 올인원 앵귤러 라는 표현이 좋을것 같습니다. 

 

 Contents 

핑크핑크한 매우 귀여운 이미지의 표지입니다. 매우 친절하고 또한 이미지도 많으면서 술술 읽힐 것 같은 이미지의 책입니다. 저도 그렇게 생각했지요. 하지만 안에는 매우 차가운 현실이 기다리고 있었습니다. 잔혹한 개발의 세계가 있었습니다.

 분명 사전식의 나열하는 듯한 책은 아닙니다. 하지만 기술 설명 등은 상당히 전문적인 느낌이 많이 듭니다. 용어 면에서도 조금 더 이해를 위해 쉬운 용어를 사용하거나, 비유 하지 않습니다. 이는 기술 영역에 많이 익숙한 사람들에게는 오히려 직설적이기에 이해를 돕지만, 그렇지 못한 사람에게는 상당한 허들이 될 것 같습니다. 그냥 프론트엔드를 공부하려는 데 앵귤러 라는 것을 들어봤고 그래서 보면 좋겠지 라는 마음으로 접근하기엔 상당히 위험한 책입니다.  간단히 말하면, 친절하지 않습니다.  친절하지 못함이 때론 예제 부분에서 많은 아쉬움을 만들기도 했는데 예를 들면, FormsModule의 자동 임포트를 가정했는데 제 경우에는 그렇지 않았습니다. 만약 해당 부분을 설명할 때 저부분에 대한 간단한 이미지, 코드 조각이 소개되었다면 상당히 빠르게 문제를 해결 할 수 있었을 텐데 라는 아쉬움이 있었습니다. 그 외에도, 예제가 딱 설명되는 부분만 표시되기에 처음에 예제를 만들어 가는데 상당히 고생했습니다. 처음 입문 영역에서는 조금 더 친절하고 상세했다면 하는 아쉬움이 있었습니다.  입문적인 부분은 상당히 짧습니다. 전체 구성은 3개의 파트로 구성되어 있는데 1파트가 입문 부분이며 98페이지까지입니다. 전체 500페이지에 해당하는 분량에 비해 상당히 적다 생각됩니다. 나머지 파트 2와 3은 실무에 관련된 내용이라고 생각됩니다. 깊게 앵귤러 프레임워크를 이해하고, 이를 활용해 실무 프로젝트를 해보는 데 집중하고 있습니다. 그렇기에 그냥 앵귤러 입문서라는 표현보단 앵귤러 실무 입문서 ​라는 표현이 좋을 것 같습니다. 정말 실무에 앵귤러를 사용해본 분이 자신의 경험을 풀어낸 책으로 느껴집니다. 

 

이 책을 찾으시는 분들 중에서는 타입 스크립트에 중요도를 어느정도 부과하신 분들도 계실 것 같은데, 저 파트 1 98페이지 중 일부분만이 타입 스크립트를 위해 사용됩니다.  역으로 저 타입스크립트 때문에 꺼려하실 분들도 계실 것 같은데, 자바스크립트에 대한 충분한 사용 경험이 있다면 문제되지 않습니다.  

 

Conclusion 

친절하지 않습니다. 하지만 매우 유익합니다. 매우 실용적이구요. 이 책 읽고 바로 프로젝트에 적용해도 될 것같습니다.  어느정도 프로그래밍 경험이 있으신 분들은 그렇기에 매우 마음에 드실 것같지만, 친절하고 상세한 설명을 원하는 분들께서는 아쉬움을 많이 느끼실 것 같습니다. 

저는 매우 좋습니다. 껄껄껄

 

 

Angular라는 이름을 처음 들어본 것은 대학원 랩실에서 공부할 때 석사 학위를 받으러 한국에 온 외국인 개발자로부터였습니다. 그 분은 영국에서 웹 개발을 하셨는데 Angular를 사용했다고 합니다. 이후 대학원 수업 과제 발표에서 그 분 조가 Angular 프레임워크를 사용해 구현한 웹 UI를 보면서 Angular에 대한 관심은 있었지만 막상 공부하기에는 엄두가 나질 않았습니다. 지금 회사에 입사하고나서는 다른 팀에서 자체적으로 만들고 있는 웹 UI 프레임워크를 사용해서 웹 UI를 구현하고 있는데, 마침 한빛 리더스에서 '앵귤러 첫걸음'이라는 신간 도서를 리뷰할 수 있는 기회가 있어 신청했습니다.

 

처음 이 책을 받았을 때 목차를 보고 좋다고 생각된 점은 앵귤러로 개발하기 전에 node.js와 npm을 사용해 앵귤러를 포함한 여러 라이브러리들을 내려받는 부분부터 차근차근 설명하고 있다는 점이었습니다. 또한 Visual Studio Code 등 앵귤러 개발에 유용한 IDE도 소개되어 있어서 초보자가 쉽게 따라할 수 있게 되어 있습니다. 그리고 앵귤러에서 사용되는 타입스크립트가 무엇이고 이를 어떻게 컴파일하는지도 요점만 정확하게 짚어주는 것도 큰 장점입니다.

 

Chapter 3에는 앵귤러 개발이 도대체 어떻게 이루어지는 것인지 감을 잡을 수 있도록 간단한 예제를 따라해보는 실습이 있습니다. 앵귤러 개발의 대부분이라고 할 수 있는 '컴포넌트'라는 개념을 이해할 수 있게 도와주고, 명령어 한 줄로 컴포넌트의 클래스, html, css, 테스트 스펙 파일을 생성하고 이를 수정하면서 구성요소를 파악할 수 있게 됩니다.

 

책의 2부부터는 앵귤러가 제공하는 방대한 기능들을 하나씩 살펴봅니다. 3장에서 겉핥기 식으로 접해 본 뷰, 서비스를 자세히 배우고, 웹 컴포넌트, RxJS, 특별히 Form에 대한 심화 내용을 살펴봅니다. 개인적으로는 6장에 소개된 내용이 생소하지만 반드시 알아야 하는 내용이라고 느꼈습니다. 

 

3부부터는 상품 관리 애플리케이션을 만들어볼 수 있습니다. 앵귤러의 모듈, 라우터 개념을 이해할 수 있게 돕고, 구글 파이어베이스와 연동해서 구글 계정으로 인증 처리를 하고 AngularFire2 패키지를 사용해 백엔드 코드 없이 데이터베이스 CRUD를 처리하는 방법을 설명하고 있습니다. 3부에서 조금 아쉬웠던 점은 코드 구현이 사실상 13장에 몰려 있어서 따라해보기가 조금 버거웠다는 점입니다. 기능들을 모두 책에 담아내기에는 앵귤러가 너무 방대한데, 이 책은 필요한 부분만 우선적으로 제공하고 있어 초보자가 앵귤러가 무엇인지 빠른 시간 내에 파악할 수 있게 도와줍니다. 앵귤러 설명 뿐 아니라 개발에 필요한 환경 설정에 대한 내용이 잘 되어 있어종합적으로는 국내 앵귤러 기본 도서 중에서 제일 추천할 만하다고 생각합니다.

 

이 책을 따라해보면서 회사 자체 UI 프레임워크와 비교해볼 수 있어 재미있었고, 요즘에는 정말 다양한 오픈소스 UI 프레임워크가 나와 있는데 jQuery를 사용하는 수준에 머물러 있었던 스스로가 우물 안 개구리였다는 것을 다시금 느끼고 반성했습니다. 그리고 node.js에도 더 많은 관심이 생겨서 앞으로는 node 서버 개발도 관심을 가지고 공부해보고 싶습니다.

앵귤러 첫걸음

공민서
2017.06.25

앵귤러 첫걸음 리뷰

어렵지만 한번 더 읽고싶은 책

선택 동기

요즘 앵귤러,리액트,뷰.. 하던데...
  • 웹 개발을 무지 잘 하지는 못해도 구현 당시에 CSS작업이 정말 힘들었던 기억이 있습니다.
    그런데 최근 SNS에서 Angular.JS, React, Vue.js 를 많이 얘기합니다. "도대체 얘네들이 뭐지?"
    음...뭔가 어렵고 잘 모르겠지만 이해할 수 있는 선에서 프론트엔드 작업을 편하게 해주는 프레임워크들이구나.. 알고싶다!

난 0부터 하나하나 자세히 짚어주는 흐름이 있는게 좋아!
  • 기술 서적을 선택할 때, 제 상황에 따라 선호하는 내용구성이 있습니다.

    1. 아무것도 모를때

      • 여러 프로젝트에 적용할 수 있는 기능을 가진 작은 목표를 설정하고 이것을 구현해보는 과정을 거치는 책. 설치부터 완성까지의 자세한 흐름

       

    2. 어느정도 알고있을 때:

      • 사전처럼 활용할 수 있는 책. 용어의 개념설명 + 짧은 분량의 구현 코드가 포함되어있는 책

      • 생소한 개념/구현 정보를 담은 책

       

  • 앵귤러 첫걸음 책은 여기서 '아무것도 모를 때'의 상황에 아주 적합합니다. 설치부터 작은 프로젝트를 최종 구현해보는 내용을 갖습니다. 또한, 사전처럼 활용할 수 있게 각 개념/기능들의 상세한 설명과 코드를 담고 있습니다.

장점

내용 구성
  • 선택 동기에서 설명한 것 처럼 앵귤러 첫걸음 책은 제가 선호하는 2가지 내용구성이 섞여있습니다. 0부터 1까지의 단계 및 상세한 개념설명으로 입문서와 중급 개발자를 배려하는 구성이 장점으로 생각됩니다.

실용적인 구현 목표
  • 이 책에서 구현하는 상품관리 App은 앵귤러를 이해하고 활용하는 데에 적합한 App이지 않나 싶습니다.

단점

좀 어렵다...
  • 입문자만을 고려하기엔 너무 쉽고 추상적인 설명으로 본질에 접근하지 못하고, 중/고급자를 위하기엔 너무 설명이 어려울 수 있을 듯 합니다. 제가 느낀 이 책의 타겟독자층은 완전 웹개발을 모르는 입문자라기 보단, 기존에 웹개발 지식이 있는 상태에서 앵귤러JS를 모르는 앵귤러JS입문자부터 앵귤러JS중급자 까지 입니다. 앵귤러 프레임워크 자체가 꽤 큰 개념을 새로 제시한다고 보여질 정도로 저에겐 새로운 개념들이 많았고 좀 어려워서 진도가 잘 나가질 못했습니다.(저의 부족함 탓..ㅎㅎ)

결론 및 활용

  • 좀 내용이 어렵지만 나름 뿌듯한 일독이었습니다. 다행인지 불행인지 제 업무가 웹개발에 직접적 연관은 없어서 실무에서 쓸수 있을지 의문이지만 제 호기심으로 시작한 선택이었고 나름 만족했습니다. 하지만 의문이 아직 많이 남아있습니다. 향후, 한번 더 책을 다시 볼 계획입니다. 아예 모르던 상태에서 한번 더 보면 좀 더 잘 알 수 있지않을까요? 그리고 리액트나 뷰 같은 프레임워크에도 관심이 갑니다.



AngularJS 첫걸음 리뷰

  • 출판사 : 한빛미디어
  • 저자 : 조우진
  • 발행일 : 2017-06-01

요즘 프론트엔드 개발의 세계에서는 SPA(Single Page Application) 관련 프레임워크가 한창 인기이다. 그중, React.js, AngularJS가 가장 인기가 많은 프레임워크 중 하나인데, AngularJS가 1, 2버전, 그 다음버전은 AngularJS 4.0 기반으로 새로운 AngularJS 버전이 나왔는데, 이제부터는 AngularJS의 Versioning이 없다고 한다.(내부적으로는 있겠지만…) 그 중, 가장 최신버전의 AngularJS를 다루고 있는 “Angular 첫걸음”을 살펴보았다.

AngularJS는 우선 Google이 주도하는 프로젝트로서, 2012년에 공개된 이후에도 꾸준히 계속 인기가 증가하고 있는 프레임워크이다. 앵귤러 첫걸음 책에서는 처음부터 계속 기능들이 진화해가는 과정을 계속 진행해가면서 더욱더 성숙된 프로그램으로 가는 과정을 다루고 있다. 다만, Javascript 등을 잘 다뤄보지 못했거나, 책의 필요한 부분만을 보고 싶은 사람들에게는 좀 보기 힘든 구성이다. 왜냐하면 앞의 내용에서 어떻게 하여 이 소스가 되었는지 파악하지 못하면 굉장히 헤맬 수도 있다.

또한 계속 소스를 따라가면서 진행해가는 과정중에 그대로 따라해도 안되는 경우가 있어, 그 경우에는 검색을 하는 등의 별도의 공수가 더 들어가게 되는 부분이 발생해 웹프로그래밍의 기초적인 부분을 전혀 모르는 사람들은 AngularJS를 접근하기 힘들고, 아무래도 그냥 따라하기 식으로의 구성이다보니 좀 더 깊게 공부해보고 싶은 사람들에게는 이 책을 보기가 굉장히 까다로울 수가 있다.

하지만 가장 최신내용의 프레임워크를 다루고 있고, 기존에 AngularJS를 사용해봤던 사람들에게는 새로운 기능이나, 기존에 왜 사용하는지 모르고 사용했던 사람들 등에 대해서는 많은 도움이 될 수가 있다. 소스를 하나하나 따라하면서 계속 소스코드가 변화되는 모습을 보면서 진행하다보면 나도 모르게 더 좋은 패턴을 사용하게 되도록 자연스럽게 유도가 된다.

책이 초판이라 책의 내용이 조금 더 개선이 되고 책의 내용처럼 초보자에게 조금 더 초점이 맞춰지도록 개편된다면 더욱더 많은 사람들이 책을 찾고 따르지 않을까라는 기대가 되는 책이다.

2012년에 출시된 Angular 혹은 Angular JS는 Java Script 프레임워크이다. MVVM패턴에 해당하는데 소스코드로 웹 애플리케이션을 구조화하거나 제작하는 툴이라고 보면 될 것이다.
라이브러리형식에서 벗어난 프레임워크일 뿐이므로 제작되거나 기반이 되어있는 프레임이나 기능을 조합하거나 재구조화는 방식으로 진행하면 된다. 추가로 RxJS를 활용하는데 능숙하면 더 좋다.

CSS, HTML, JavaScript, Java정도는 기초적으로 다루어 본 사람이 아니면 책의 내용을 해독하거나 발췌독을 하기에는 무리가 있을 것 같다.
이 책은 소스코드를 받거나 튜토리얼을 따라하면서 진행하면 될 정도로 자세히 설명이 잘되어 있다. 테블릿 주도 폼의 코딩이나 주의사항등도 마치 옆에서 선배가 이야기 하듯 상술되어 잇는 것이 특징이다.

예를 들어,  아래 화면과 같이 템플릿에 대한 시퀀싱을 그대로 따라하면 되도록 설정되어 있는 것이 장점이다.
 

KakaoTalk_20170625_185515130.jpg

 

하지만, 기술적 용어의 기술에 있어, 한글용어와 영문이 혼용되어 있는것이 매끄럽게 읽히는데 방해를 주는 아쉬움도 존재한다.

 

서론

컴퓨터 프로그래밍, 컴퓨터 공학에서 가장 빠르게 언어들이 태어나고죽는 곳은 웹 개발 환경일 것이다. 웹은 엄청난 속도의 유행을 자랑하며 다양한 플랫폼과 언어들이 이곳을스쳐 지나간다. 그런 과정 속에서 앵귤러 js 등 기존의프레임워크에서 발전된 형태의 언어가 앵귤러 인데, 잘 알지 못하고 새로운 언어인 만큼 자료가 많지 않다. 그런 와중에 이를 활용한 프로젝트 경험이 많아 누구보다 상세히 책을 썼다면 그만큼 소중한 지침서는 없을 것이다. 이 책은 누군가의 맨 땅에서부터의 경험을 다룬 멋진 책이다.

 

1. 이 책은 어떤 책인가요?

이 책은 앵귤러라고 하는 언어의 개발 환경 설정부터 다양한 프로젝트 예제까지 수록한 언어 교과서이다. 앵귤러에 들어가기 앞서 필요한 기초 개념을 다지고, 앵귤러 기본개발에 필요한 예제, 뷰 구성 등을 다룬 다음 다양한 프로젝트로 실무 개발자가 되기 위한 내용들까지포함한다. 첫걸음이라는 태그를 포함한 책 치고는 심도있고 어려운 편이지만 그렇기에 더욱 좋은 개발자가되기 위한 훌륭한 지침서의 역할을 수행하고 있다.

 

2. 대상 독자

책의 서론에서도 언급이 되어있지만 이 책은 웹을 개발해온 개발자들을 대상으로 하는 도서이다. 기본적인 웹의 이해가 되어 있으며 앵귤러라는 프레임워크를 처음 접하는 개발자들을 대상으로 상세하게 설명하고있는 도서이기 때문에 웹 자체를 처음 개발해보는 개발자의 경우 다른 웹 언어 및 프로젝트를 경험하고 오는 것을 추천한다.

 

3. 책의 장점

대상 독자가 실무 개발자인 만큼 어떤 책보다 심도 있는 내용을 자랑한다. 가벼운무게에도 숨길 수 없는 깊이감과 다양한 실전 예제들은 독자로 하여금 앵귤러에 대해 실제적인 감을 잡게 하는데 큰 도움을 준다. 저자가 실제 프로젝트와 부딪히면서 얻어온 지식을 기반으로 작성한 도서이기 때문에 더욱 그런 느낌을 주는 것같다.

 

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

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
앵귤러 첫걸음
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

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

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

오탈자 등록

닫기
* 도서명 :
앵귤러 첫걸음
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
앵귤러 첫걸음
구입처*
구입일*
부가기호*
부가기호 안내

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

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

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

닫기

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

자료실