장바구니 담기 close

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

스마트 계약 퀵스타트

스마트 계약 퀵스타트

  • 가사키나가토
  • |
  • 루비페이퍼
  • |
  • 2020-09-07 출간
  • |
  • 514페이지
  • |
  • 170 X 232 mm
  • |
  • ISBN 9791186710593
판매가

30,000원

즉시할인가

27,000

카드할인

0원(즉시할인 0%)

적립금

1,500원 적립(5%적립)

배송비

무료배송

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

추가혜택

네이버페이 무조건 1%적립+ 추가 1%적립

수량
+ -
총주문금액
27,000

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

출판사서평




블록체인과 연관된 스마트 계약 기술은 여전히 빠르고 큰 폭으로 발전 중입니다. 그런 이유로 아직 스마트 계약 프로젝트 전반을 어떻게 운영해 좋은 결과물을 내야 하는지 정립되지 않은 상황입니다. 이 책은 마치 현업에서 일하는 선배가 알려주는 비급 같은 느낌을 주는 책입니다. 두 가지 측면에서 큰 도움을 얻을 수 있습니다.

첫 번째로는 스마트 계약의 정의와 블록체인 기술의 개요부터 시작해 자바스크립트, 솔리디티, 트러플, 오픈제플린이라는 이더리움 블록체인 기반의 스마트 계약 웹 애플리케이션을 실제로 어떻게 개발해야 하는지 잘 알려준다는 점입니다. 이 책이 출간된 2020년 현재 버전에 맞춰 책을 다듬었으므로 최신 블록체인 기술을 어떻게 다루는지 공부하는 데 도움을 받을 수 있습니다.

두 번째로는 최근의 개발 프로젝트 전반을 어떻게 이끌어나가야 하는지 잘 알려준다는 점입니다. 첫 번째에서 소개한 블록체인 관련 기술 이외에도 실제 개발 프로젝트에서 이루어지는 UX 디자인 워크플로 등의 서비스 설계, 테스트, 보안 감사 등의 내용을 모두 다룹니다. 이더리움 기반 개발 기술을 배웠는데 아직 프로젝트를 경험하지 못한 분이라면 스마트 계약 애플리케이션을 만드는 전체 과정에서 무엇을 하는지에 관한 큰 그림을 이해할 수 있습니다. 또한 현업에 임했을 때 응용할 수 있는 핵심이 무엇인지도 파악할 수 있습니다.


목차


Chapter 01 스마트 계약 개발 이해하기
_1.1 스마트 계약
__1.1.1 넓은 의미의 스마트 계약
__1.1.2 좁은 의미의 스마트 계약
__1.1.3 블록체인의 특징
_1.2 블록체인이 구현하는 것
__1.2.1 블록체인이 주는 다섯 가지 가치
__1.2.2 토큰 이코노미
__1.2.3 보상과 패널티 설계
__1.2.4 새로운 KYC 구축
__1.2.5 DApps 개발에서 해결할 문제
_1.3 기존 서비스 사례
__1.3.1 블록체인을 이용한 서비스
__1.3.2 스마트 계약으로 구현한 서비스
_1.4 테스트넷에서 DApps 이용
__1.4.1 테스트넷
__1.4.2 지갑
__1.4.3 메타마스크를 이용한 지갑 설정
__1.4.4 코인베이스 월렛을 이용한 지갑 설정
__1.4.5 테스트넷에서 이더 받기
__1.4.6 테스트넷에서 시험할 DApps

Chapter 02 솔리디티로 스마트 계약 개발하기
_2.1 이더리움의 기본 개념
__2.1.1 이더리움의 화폐 단위
__2.1.2 수수료 ‘가스’
__2.1.3 계정 종류
__2.1.4 메인 체인을 선택하는 고스트 프로토콜
__2.1.5 이더리움 가상 머신
_2.2 솔리디티 기초
__2.2.1 솔리디티의 특징
__2.2.2 계약
__2.2.3 데이터 타입
_2.3 크립토좀비로 솔리디티 배우기
__2.3.1 크립토좀비 소개
__2.3.2 레슨 1: 좀비 공장 만들기
__2.3.3 레슨 2: 좀비가 희생물을 공격하다
__2.3.4 레슨 3: 고급 솔리디티 개념
__2.3.5 레슨 4: 좀비 전투 시스템
__2.3.6 레슨 5: ERC721 & 크립토 수집품
__2.3.7 레슨 6: 앱 프런트엔드 & Web3.js
_2.4 리믹스로 솔리디티 프로그래밍하기
__2.4.1 리믹스
__2.4.2 샘플 프로젝트
__2.4.3 리믹스에서 샘플 프로젝트 구현
__2.4.4 리믹스 로그 사용하기

Chapter 03 스마트 계약 서비스 디자인
_3.1 프로젝트의 UX 디자인
__3.1.1 UX 디자인의 필요성
__3.1.2 서비스의 사용성
__3.1.3 개발 과정의 UX/UI 디자인
__3.1.4 폭포수 모델이 아닌 개발 방법 선택
__3.1.5 서비스의 성과를 정의하는
_3.2 린 UX를 사용한 개발
__3.2.1 린 스타트업과 린 UX
__3.2.2 서비스와 팀의 성장
__3.2.3 린 UX 과정의 핵심 사항
__3.2.4 개발 과정의 핵심 사항
_3.3 프로토타이핑 활용하기
__3.3.1 프로토타이핑 활용 방법 두 가지
__3.3.2 경험적 프로토타이핑
__3.3.3 전략적 프로토타이핑
__3.3.4 프로토타입 != 최종 결과물
_3.4 사용자 테스트 설계
__3.4.1 사용자 테스트
__3.4.2 기존 사용자 테스트 과정
__3.4.3 개발 시간이 짧을 때의 사용자 테스트
__3.4.4 테스트 간소화의 중요 사항
__3.4.5 사용자 테스트를 할 때 주의할 사항
_3.5 사례로 보는 DApps 설계
__3.5.1 QUEST 알파 버전
__3.5.2 경험적 프로토타이핑
__3.5.3 전략적 프로토타이핑

Chapter 04 DApps 개발 환경 구축
_4.1 개발 도구 소개
__4.1.1 도커
__4.1.2 Geth
__4.1.3 가나슈
__4.1.4 Node.js와 npm
__4.1.5 트러플
__4.1.6 Git
__4.1.7 비주얼 스튜디오 코드
__4.1.8 솔리디티에 대응하는 통합 개발 환경과 텍스트 편집기
_4.2 macOS에 DApps 개발 환경 구축
__4.2.1 Homebrew
__4.2.2 도커 데스크톱 설치
__4.2.3 Geth
__4.2.4 가나슈
__4.2.5 Node.js와 npm
__4.2.6 트러플
__4.2.7 Git
__4.2.8 비주얼 스튜디오 코드
_4.3 윈도우 10에 DApps 개발 환경 구축
__4.3.1 리눅스용 윈도우 하위 시스템
__4.3.2 도커
__4.3.3 Geth
__4.3.4 가나슈
__4.3.5 Node.js와 npm
__4.3.6 트러플
__4.3.7 Git
__4.3.8 비주얼 스튜디오 코드
_4.4 리눅스에 DApps 개발 환경 구축
__4.4.1 도커
__4.4.2 Geth
__4.4.3 가나슈
__4.4.4 Node.js와 npm
__4.4.5 트러플
__4.4.6 Git
__4.4.7 비주얼 스튜디오 코드

Chapter 05 개발용 블록체인 구축
_5.1 프라이빗 네트워크 구축
__5.1.1 로컬 환경에 프라이빗 네트워크 구축
__5.1.2 트러플로 프라이빗 네트워크에 계약 배포와 트랜잭션
_5.2 팀과 함께 사용할 수 있는 이더리움 노드 구축
__5.2.1 구글 클라우드 플랫폼 가입
__5.2.2 구글 클라우드 SDK 설치
__5.2.3 구글 클라우드 SDK 초기 설정
__5.2.4 kubectl 설치
__5.2.5 쿠버네티스 엔진 클러스터 만들기
__5.2.6 쿠버네티스에서 동작하는 컨테이너 만들기
__5.2.7 컨테이너 배포
_5.3 이더리움 네트워크
__5.3.1 P2P 네트워크 기초
__5.3.2 이더리움의 프로토콜
__5.3.3 노드 탐색
__5.3.4 로그로 실제 노드 탐색 동작 확인

Chapter 06 스마트 계약 설계
_6.1 데이터 모델링
__6.1.1 개념 데이터 모델 설계
__6.1.2 속성 살펴보기
__6.1.3 논리 데이터 모델 설계
__6.1.4 물리 데이터 모델 설계
_6.2 스마트 계약 설계
__6.2.1 스마트 계약의 역할 분담과 디자인 패턴
__6.2.2 스마트 계약에 저장해야 할 데이터
__6.2.3 스마트 계약의 주요 기능 살펴보기
_6.3 트러플 프레임워크 개발 준비
__6.3.1 트러플 프로젝트 만들기
__6.3.2 개발용 블록체인 살펴보기
__6.3.3 프로젝트 배포 전 이더리움 네트워크 설정
__6.3.4 Truffle Console
_6.4 스마트 계약 구현
__6.4.1 오픈제플린 설치
__6.4.2 스마트 계약 구현
__6.4.3 계약 기능 구현
__6.4.4 컴파일
__6.4.5 프라이빗 네트워크에 계약 배포
_6.5 프라이빗 네트워크에서의 동작 확인
__6.5.1 트러플 프로젝트 배포와 계약 객체 생성
__6.5.2 콜 방식으로 계약 상태 호출
__6.5.3 트랜잭션 방식으로 계약 상태 변경
__6.5.4 트랜잭션 발행 결과 확인

Chapter 07 테스트 방법과 자동화
_7.1 테스트 코드 작성
__7.1.1 트러플의 테스트 코드
__7.1.2 테스트 코드 작성
__7.1.3 테스트 실행
__7.1.4 테스트 범위
_7.2 보안 검사
__7.2.1 자동 보안 검사 도구
__7.2.2 미스릴을 이용한 보안 검사
_7.3 테스트 자동화
__7.3.1 저장소 관리하기
__7.3.2 지속적 통합
__7.3.3 깃허브와 구글 클라우드 빌드 연결하기

Chapter 08 웹 애플리케이션의 구현
_8.1 애플리케이션 구성
__8.1.1 일반적인 웹 애플리케이션의 구성
__8.1.2 DApps 구성
__8.1.3 이 책에서 소개하는 DApps 구성
_8.2 프런트엔드 구현
__8.2.1 프런트엔드 프레임워크
__8.2.2 JSON-RPC
__8.2.3 프런트엔드 구현 전 준비 사항
__8.2.4 Web3.js
__8.2.5 채팅방 목록 검색해 저장하기
__8.2.6 채팅방 생성
_8.3 미들웨어 기반의 데이터베이스 구축하기
__8.3.1 데이터베이스의 종류
__8.3.2 MySQL 환경 구축하기
__8.3.3 MySQL 동작 확인
_8.4 백엔드 API 개발하기
__8.4.1 개발 언어 선택하기
__8.4.2 백엔드 프레임워크
__8.4.3 개발에 도움을 주는 주요 라이브러리
_8.5 데이터베이스와 스마트 계약의 데이터 동기화
__8.5.1 데이터가 일치하지 않아 발생하는 위험
__8.5.2 이벤트를 불러올 준비하기
__8.5.3 스마트 계약의 이벤트 선언과 생성
__8.5.4 이벤트 감지와 데이터 동기화
_8.6 각 컨테이너 사이의 통신 확인하기
__8.6.1 도커 컴포즈로 여러 개 컨테이너 이미지를 만들고 실행하기
__8.6.2 웹 브라우저에서 애플리케이션 확인

Chapter 09 테스트넷에 배포하고 보안 감사하기
_9.1 테스트넷에 스마트 계약 배포
__9.1.1 배포 준비
__9.1.2 트러플로 스마트 계약 배포하기
__9.1.3 스마트 계약의 동작 확인하기
_9.2 보안 감사
__9.2.1 보안 감사의 중요성
__9.2.2 보안 감사 서비스
_9.3 사용자 테스트
__9.3.1 테스트넷의 사용자 테스트
__9.3.2 메인넷의 사용자 테스트
__9.3.3 DApps 성장 단계에서 주목할 점

Chapter 10 더 나은 DApps 개발
_10.1 이더리움의 단점을 보완하는 개발 프로젝트
__10.1.1 스웜
__10.1.2 IPFS
__10.1.3 오라클
__10.1.4 이더리움 네임 서비스
__10.1.5 카이버 네트워크
_10.2 ERC 규격 기반 표준화
__10.2.1 ERC
__10.2.2 EIP와 ERC
__10.2.3 ERC 토큰 규격의 예
_10.3 스마트 계약의 디자인 패턴
__10.3.1 팩토리 계약 패턴
__10.3.2 네임 레지스트리 패턴
__10.3.3 접근 제한 패턴
__10.3.4 명시적 지급 패턴
__10.3.5 자가 삭제 패턴
__10.3.6 일시 중지 패턴
__10.3.7 수정 가능한 계약 패턴

Chapter 11 DApps 개발의 미래
_11.1 이더리움의 첨단 기술
__11.1.1 플라스마
__11.1.2 캐스퍼
__11.1.3 샤딩
__11.1.4 eWASM
__11.1.5 바이퍼
__11.1.6 Yul
__11.1.7 세레니티
__11.1.8 메타마스크 개인정보보호 모드
_11.2 이더리움 이외의 스마트 계약 플랫폼
__11.2.1 이오스
__11.2.2 네오
__11.2.3 질리카
__11.2.4 카데나
_11.3 새로운 암호 기술
__11.3.1 영 지식 증명
__11.3.2 슈노르 서명
__11.3.3 BLS 서명
__11.3.4 비밀 분산
__11.3.5 동형 암호
_11.4 정보 수집
__11.4.1 다양한 블록체인 정보 얻기

교환 및 환불안내

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