솔리디티 프로그래밍 에센셜 (이더리움과 블록체인을 위한 스마트 계약 프로그래밍 입문)

솔리디티 프로그래밍 에센셜 (이더리움과 블록체인을 위한 스마트 계약 프로그래밍 입문)

$20.00
Description
스마트 계약을 작성하는 가장 강력하고 으뜸가는 프로그래밍 언어인 솔리디티를 배우고 이더리움에서 스마트 계약을 작성, 배포, 테스트하자!
솔리디티는 계약 기반 언어로서 자바스크립트의 영향을 많이 받은 구문을 사용하며, EVM(이더리움 가상 머신)을 위한 코드를 컴파일하도록 설계됐다. 《솔리디티 프로그래밍 에센셜》은 솔리디티로 이더리움을 위한 스마트 계약을 작성하는 법과 블록체인에 대해 차근차근 알려준다.
이 책에서는 블록체인과 이더리움의 주요 개념과 구성 요소를 살펴본다. 이더리움에서 솔리디티 계약을 작성, 테스트, 디버그하는 데 필요한 도구를 설치하는 법을 배우고 솔리디티 소스 파일의 레이아웃과 여러 가지 자료형을 살펴본다.
스마트 계약을 작성하는 데 도움이 되는 연산자, 제어 구조, 자료형을 비롯해 솔리디티의 함수 호출, 반환 타입, 함수 수정자, 객체지향 프로그래밍에 대해 살펴본다. 이벤트 로깅과 예외 처리, 스마트 계약의 테스트와 디버깅 방법도 배운다.
이 책을 읽은 후에는 이더리움에서 스마트 계약을 작성, 배포, 테스트할 수 있게 될 것이다. 이 책은 솔리디티를 가지고 계약을 작성하는 것의 요점을 추려서 빠른 시간 내에 독자의 솔리디티 실력을 높여줄 것이다.

★ 이 책에서 다루는 내용 ★

◎ 솔리디티와 이더리움의 기본 개념
◎ 솔리디티 언어의 특징
◎ 계정을 생성하고 블록체인에 거래를 제출
◎ 스마트 계약을 작성하는 데 필요한 언어의 세부사항
◎ 스마트 계약을 개발·배포하는 데 사용되는 주요 도구
◎ 예외 처리와 오류 확인을 통해 방어적인 코드 작성하기
◎ 트러플 기초와 디버그 절차
저자

리테시모디

마이크로소프트에서시니어기술에반젤리스트와지사장을역임했다.그는이더리움과솔리디티관련업무를통해기업들을돕고조언을해왔다.리테시는컨퍼런스및지역모임에서블록체인과솔리디티에관해강연한다.
그는블록체인,데이터센터,애저봇,인지서비스,데브옵스,인공지능,자동화등의분야에서아키텍트,에반젤리스트,강연자로활동하며공헌함으로써유명한리더로자리매김했다.그는다섯권의책을저술했다

목차

▣01장:블록체인,이더리움,스마트계약
블록체인이란무엇인가?
왜블록체인인가?
암호화
___대칭암호화및복호화
___비대칭암호화및복호화
___해싱
___디지털서명
이더
가스
블록체인과이더리움아키텍처
___블록의연결
___거래와블록의관계
이더리움노드
___EVM
___이더리움채굴노드
___채굴은어떻게이뤄지는가?
이더리움계정
___외부소유계정
___계약계정
거래
블록
거래의흐름
계약이란무엇인가?
스마트계약이란무엇인가?
___어떻게스마트계약을기록하는가?
계약을어떻게배포하는가?
정리

▣02장:이더리움과솔리디티설치
이더리움네트워크
___주네트워크
___테스트네트워크
___사설네트워크
___컨소시엄네트워크
게스(Geth)
___윈도우에게스설치하기
사설네트워크생성
가나슈명령행인터페이스(ganache-cli)
솔리디티컴파일러
web3자바스크립트라이브러리
미스트지갑
메타마스크(MetaMask)
정리

▣03장:솔리디티소개
이더리움가상머신
솔리디티와솔리디티파일
___프라그마(pragma)
___주석
___import문
___계약
계약의구조
___상태변수
___구조체(struct)
___수정자(modifier)
___이벤트(event)
___열거형(enum)
___함수(function)
솔리디티의자료형
___값타입
___참조타입
스토리지및메모리데이터위치
___규칙1
___규칙2
___규칙3
___규칙4
___규칙5
___규칙6
___규칙7
___규칙8
리터럴
정수
불린
바이트자료형
배열
___고정배열
___동적배열
___특수배열
___배열속성
배열의구조체
열거형
주소
매핑
정리

▣04장:전역변수와함수
var타입변수
변수호이스팅
변수스코프
형변환
___묵시적변환
___명시적변환
블록및거래글로벌변수
___거래및메시지글로벌변수
___tx.origin과msg.sender의차이점
암호화함수
주소전역변수
계약전역변수
정리

▣05장:표현식과제어구조
솔리디티표현식
if제어구조
while루프
for루프
do...while루프
break문
continue문
return문
정리

▣06장:스마트계약작성하기
스마트계약
간단한계약작성하기
계약생성하기
___new키워드사용하기
___계약의주소사용하기
생성자
계약합성
상속
___단일상속
___다단계상속
___계층적상속
___다중상속
캡슐화
다형성
___함수다형성
___계약다형성
메서드오버라이딩
추상계약
인터페이스
정리

▣07장:함수,수정자,폴백
함수입력과출력
수정자
뷰,상수,순수함수
주소함수
___send메서드
___transfer메서드
___call메서드
___callcode메서드
___delegatecall메서드
폴백함수
정리

▣08장:예외,이벤트,로깅
오류처리
___require문
___assert문
___revert문
이벤트와로깅
정리

▣09장:트러플기초와단위테스팅
애플리케이션개발생명주기관리
트러플
트러플을가지고개발하기
트러플을가지고테스트하기
정리

▣10장:계약
디버깅
___리믹스편집기
___이벤트사용하기
블록탐색기사용하기
정리