마젠토 2 개발자 가이드 [전 세계적으로 가장 인기 있는 최신 전자상거래 플랫폼, 파워풀한 마젠토 2 사용법 익히기]
- 원서명Magento 2 Developer's Guide (ISBN 9781785886584)
- 지은이브랑코 아젤(Branko Ajzele)
- 옮긴이곽대기
- ISBN : 9791161750477
- 35,000원
- 2017년 09월 15일 펴냄 (절판)
- 페이퍼백 | 512쪽 | 188*235mm
- 시리즈 : acorn+PACKT
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
요약
이 책은 2015년 릴리즈 된 마젠토 2의 알파에서 오메가까지 두루 섭렵한다. 플랫폼 구조의 이해와 환경 설치에서부터 프로그래밍 개념과 규칙 등을 설명하고 이후 곧장 MVC 구조의 모델이 마젠토 2에서 어떻게 구현됐는지 다룬다. 새롭게 도입된 의존성 주입과 플러그인에 대한 자세한 설명이 뒤를 이으며 백엔드 개발과 프론트 엔드 개발을 나눠서 코어 레벨부터 설명한다. 웹 API와 주요 기능 영역을 코드 레벨에서 상세히 다루며 마지막으로 테스트와 실제 모듈 개발을 한걸음씩 친절하게 가이드 해준다. 현재 출판된 마젠토 2 관련 영문 서적 중에서 가장 포괄적이고 깊이 있는 책으로서 수많은 응용을 가능하게 하는 기반이 돼줄 것이다.
이 책에서 다루는 내용
■ 마젠토 2 개발 서버와 라이브 서버 설치하기
■ 마젠토 2에서 새로 생긴 주요 개념과 관례 이해하기
■ 축소판이지만 온전히 기능하는 모듈을 처음부터 만들어 전자상거래를 효율적으로 관리하기
■ 모델과 컬렉션을 작성, 엔티티 데이터 관리하고 검색하기
■ 이벤트와 옵저버, 크론잡, 로깅, 프로파일링, 메시지 기능 만들기 등 백엔드 개발에 뛰어들기
■ 블럭과 템플릿, 레이아웃, 테마 등의 마젠토 2 프론트엔드 개발 핵심 이해하기
■ 다양한 종류의 API 호출을 통한 토큰과 세션, OAuth 토큰 기반 인증 사용하기와 API 직접 만들기
■ 개발을 통합하기 위해 마젠토 모듈과 커스텀 테마 테스트하는 법 이해하기
이 책의 대상 독자
이 책은 PHP 개발자 중에서 마젠토 2 개발에 흥미를 가진 중급부터 프로 레벨까지의 개발자를 주요 대상으로 한다. 백엔드 개발자를 위해 다수의 주제를 다루며, 이는 마젠토 2 상점을 수정하고 확장하는 데 도움을 줄 것이다. 프론트엔드 개발자 또한 온라인 상점의 외양을 커스텀하는 법을 배울 수 있을 것이다.
엄청난 양의 코드 변화와 구조 변화를 봤을 때, 마젠토 버전 2.x는 마젠토 버전 1.x와 완전히 다른 플랫폼으로 묘사할 수 있다. 이 책은 이러한 점을 염두에 두고 독자가 마젠토 1.x 버전에 대한 지식이 있을 거라는 가정 없이 서술하고 있다.
이 책의 구성
1장. '플랫폼 구성의 이해'에서는 기술 스택과 설계 레이어, 최고 수준 시스템 구성, 개별 모듈 구조에 대해 높은 수준으로 개요를 보여준다.
2장. '개발 환경 관리'에서는 개발 서버와 라이브 서버를 구축하기 위한 버추얼박스(Virtual box)와 베이그런트(Vagrant), 아마존 AWS 플랫폼을 소개한다. 한 단계 나아가 베이그런트와 아마존 EC2 박스를 설치하고 스크립트를 작성하는 실전 예제를 제공한다.
3장. '프로그래밍 개념과 관례'에서는 서로 관련 없어 보이지만 마젠토의 중요한 부분인 컴포저, 서비스 계약, 코드 생성, var 디렉터리 그리고 최종적으로 코딩 표준을 독자에게 소개한다.
4장. '모델과 컬렉션'에서는 모델과 리소스, 컬렉션, 스키마, 데이터 스크립트를 살펴본다. 또한 컬렉션 필터와 함께 엔티티에 적용되는 실용적인 CRUD 액션도 보여준다.
5장. '의존성 주입 사용하기'에서는 의존성 주입의 동작 원리를 가이드한다. 오브젝트 매니저 역할을 설명하고 클래스 프레퍼런스와 가상 타입의 사용법을 설명한다.
6장. '플러그인'에서는 강력하고 새로운 개념인 플러그인에 대한 상세한 통찰을 보여준다. before/after/around 리스너를 통해 이미 존재하는 기능을 확장하거나 추가하는 것이 얼마나 용이한지 보여준다.
7장. '백엔드 개발'에서는 백엔드 관련 개발로 간주되는 부분을 직접 경험한다. 크론잡, 알림 메시지, 세션과 쿠키, 로깅, 프로파일러, 이벤트, 캐시, 위젯 등이다.
8장. '프론트엔드 개발'에서는 프론트엔드 관련 개발로 간주되는 부분을 높은 수준의 접근 방식으로 가이드한다. 마젠토의 렌더링 플로우와 뷰 요소, 블럭, 템플릿, 레이아웃, 테마, CSS, 자바스크립트를 다룬다.
9장. '웹 API'에서는 마젠토가 제공하는 강력한 웹 API를 자세하게 다룬다. PHP cURL 라이브러리나 콘솔을 통해 REST와 SOAP을 모두 생성하고 사용하는 실전 예제를 보여준다.
10장. '주요 기능 영역'에서는 마젠토의 가장 보편적인 부분을 독자에게 높은 수준의 접근 방식으로 소개한다. CMS와 카탈로그, 고객 관리, 상품과 고객 불러오기 등을 포함한다. 이에 더해 커스텀 상품 타입과 배송 모듈 및 결제 모듈 만드는 법도 보여준다.
11장. '테스트'에서는 마젠토에서 사용 가능한 테스트 타입의 개요를 보여준다. 또한 커스텀 테스트를 작성, 실행하는 법도 보여준다.
12장. '모듈 처음부터 만들기'에서는 모듈을 개발하는 전체 프로세스를 보여주고 책 전체에서 배웠던 대부분의 요소를 사용한다. 최종 결과는 어드민 인터페이스와 상점 인터페이스를 갖추고, 어드민 설정 영역, 이메일 템플릿, 설치 스키마 스크립트, 테스트 등을 포함한다.
목차
목차
- 1장. 플랫폼 구성의 이해
- 기술 스택
- 설계 레이어
- 루트 파일시스템 구조
- 모듈 파일시스템 구조
- 요약
- 2장. 개발 환경 관리
- 개발 환경 설치
- 버추얼박스
- 베이그런트
- 베이그런트 프로젝트
- 라이브 서버 환경 설치
- 아마존 웹 서비스 소개
- S3 사용 권한 설정
- 데이터베이스와 미디어 파일 백업을 위한 S3 설치
- EC2 설치 자동화를 위한 Bash 스크립트
- Elastic IP와 DNS 설정
- 요약
- 개발 환경 설치
- 3장. 프로그래밍 개념과 관례
- 컴포저
- 서비스 계약
- 코드 생성
- var 디렉터리
- 코딩 표준
- 요약
- 4장. 모델과 컬렉션
- 축소판 모듈 제작
- 단순 모델 생성
- EAV 모델
- 스키마와 데이터 스크립트의 흐름 이해
- 설치 스키마 스크립트 작성(InstallSchema.php)
- 업그레이드 스키마 스크립트 작성(UpgradeSchema.php)
- 설치 데이터 스크립트 작성(InstallData.php)
- 업그레이드 데이터 스크립트 작성(UpgradeData.php)
- 엔티티 CRUD 작업
- 새로운 엔티티 생성하기
- 엔티티 불러오기
- 엔티티 수정하기
- 엔티티 삭제하기
- 컬렉션 다루기
- 컬렉션 필터
- 요약
- 5장. 의존성 주입 사용하기
- 오브젝트 매니저
- 의존성 주입
- 클래스 프레퍼런스 관리
- 가상 클래스 타입 사용하기
- 요약
- 6장. 플러그인
- 플러그인 만들기
- before 리스너 사용하기
- after 리스너 사용하기
- around 리스너 사용하기
- 플러그인 정렬 순서
- 요약
- 7장. 백엔드 개발
- 크론잡
- 알림 메시지
- 세션과 쿠키
- 로그 남기기
- 프로파일러
- 이벤트와 옵저버
- 캐시
- 위젯
- 커스텀 변수
- i18n(internationalization, 국제화, 다언어 대응)
- 인덱서
- 요약
- 8장. 프론트엔드 개발
- 렌더링 플로우
- 뷰 요소
- UI 컴포넌트
- 컨테이너
- 블럭
- 블럭의 구조와 생애
- 템플릿
- XML 레이아웃
- 테마
- 새로운 테마 생성하기
- 자바스크립트
- 맞춤 JS 컴포넌트 생성하기
- CSS
- 요약
- 9장. 웹 API
- 사용자 타입
- 사용자 인증 방법
- REST 대 SOAP
- 토큰 기반 사용자 인증 방식 따라 해보기
- OAuth 기반 사용자 인증 방식 따라 해보기
- OAuth 기반 웹 API 호출
- 세션 기반 사용자 인증 방식 따라 해보기
- 커스텀 웹 API 생성하기
- API 호출 예제
- getById 서비스 메소드 호출 예제
- getList서비스 메소드 호출 예제
- save(새로 생성) 서비스 메소드 호출 예제
- save(업데이트) 서비스 메소드 호출 예제
- deleteById 서비스 메소드 호출 예제
- 리스트 필터링을 위한 검색 기준 인터페이스
- 요약
- 10장. 주요 기능 영역
- CMS 관리
- 블럭 직접 관리
- 코드를 통한 블럭 관리
- API를 통한 블럭 관리
- 페이지 직접 관리
- 코드를 통한 페이지 관리
- API를 통한 페이지 관리
- 카탈로그 관리
- 카테고리 직접 관리
- 코드를 통한 카테고리 관리
- API를 통한 카테고리 직접 관리
- 상품 직접 관리
- 코드를 통한 상품 관리
- API를 통한 상품 관리
- 고객 관리
- 고객 직접 관리
- 코드를 통한 고객 관리
- API를 통한 고객 관리
- 코드를 통한 고객 주소 관리
- API를 통한 고객 주소 관리
- 상품과 고객 불러오기
- 커스텀 상품 타입
- 커스텀 오프라인 배송 메소드
- 커스텀 오프라인 결제 메소드
- 요약
- CMS 관리
- 11장. 테스트
- 테스트의 종류
- 유닛 테스팅
- 통합 테스팅
- 정적 테스트
- 통합성 테스트
- 레거시 테스트
- 성능 테스트
- 기능 테스트
- 간단한 유닛 테스트 작성하기
- 요약
- 12장. 모듈 처음부터 만들기
- 모듈 구현 요건
- 모듈 등록하기
- 설정 파일 생성하기(configxml)
- 이메일 템플릿 생성하기(email_templatesxml)
- 시스템 설정 파일 생성하기(systemxml)
- 액세스 컨트롤 리스트 생성하기(aclxml)
- 설치 스크립트 생성하기(InstallSchemaphp)
- 엔티티 영속화 관리하기(모델, 리소스, 컬렉션)
- 프론트엔드 인터페이스 만들기
- 라우트, 컨트롤러, 레이아웃 핸들 생성하기
- 블럭과 템플릿 생성하기
- 폼 전송 처리
- 백엔드 인터페이스 만들기
- 액세스 컨트롤 리스트와 메뉴의 연결
- 라우트와 컨트롤러, 레이아웃 핸들 생성하기
- 그리드 위젯 활용하기
- 그리드 칼럼 렌더러 생성하기
- 그리드 칼럼 옵션 생성하기
- 컨트롤러 액션 생성하기
- 유닛 테스트 생성하기
- 요약
도서 오류 신고
정오표
정오표
[p.272 : 2행]
자세히 살펴다.
->
자세히 살펴봤다.