이더리움 dapp이란 이더리움가상머신(EVM)상에서 돌아가는 애플리케이션을 의미한다. 이를 개발하기 위한 개발환경구성은 사실 2가지만 진행하면 된다. solidity언어의 프레임워크인 truffle설치와 그것을 테스트 해볼 수 있는, 로컬블록체인의 EVM환경인 가나슈 설치.
1.node.js 설치
-이더리움의 dapp의 개발언어는 통상 solidity를 사용한다. solidity는 javascript 기반 언어로서, 이를 사용하기 위한 패키지 및 개발환경 구성을 위해 node.js를 설치한다. node.js설치시 npm(Node Packaged Manager-자바에 메이븐과 같은 라이브러리 관리툴로 보면된다.)이 자동적으로 추가 설치되는데, 이 패키지 툴을 통해 truffle도 설치할 예정.
-truffle이란 solidity로 만들어진 소스를 컴파일, 배포, 디버깅하는 것을 용이 하게 해주는 프레임워크이다.
-설치방법은 간단하다. 구글에 node.js download로 검색 후 window 버전에 맞게 default 설정값들로 설치 진행.
-설치후, 추가적인 npm 패키지를 추가하기 위해 cmd창에서 npm install -g npm 실행
-npm install truffle -g 실행 : truffle 설치
-truffle init 실행 : truffle 관련 기본 구성 폴더들이 생성된다.
2.가나슈 설치
-앞서 개발도구가 구성되었으면, 이를 메인넷에 바로 테스트 해볼수는 없으니, 로컬에 블록체인을 구축하여 로컬테스팅 환경을 구축해야 한다.
-가나슈(Ganache)는 로컬에 private 블록체인을 쉽게 구성해주고, 편리하게 이용하게 해주는 tool중 하나이다.
-이 블로그에 이더리움 노드 구성 및 실행 방법( https://severalpg.tistory.com/4 ) 의 글을 먼저 읽어봤다면, 어떻게 이더리움 노드를 구성하는지에 대해 알텐데, 다소 복잡한 과정들이 필요하다. 그에 반해 가나슈를 사용하면, 테스트노드실행, 노드와의 통신을 위한 http서버구성, 테스트계정생성과 자동채굴모드 등을 지원하여, 사용자가 쉽게 프라이빗 블록체인하에서 dapp 테스트가 가능하도록 지원하고 있다.
-가나슈 설치 방법은 간단하다. google에서 ganache download 검색후 window용 버전을 quick start버전으로 다운받아 설치를 진행하면된다.
참고)
-로컬 블록체인은 가나슈 외에도 존재한다.(ex, ethereumjs-testrpc)
-npm install -g ethereumjs-testrpc 실행하면 설치된다. 가나슈와의 차이는 ui가 다소 불편하다는 것. 최근에는 대부분 가나슈를 쓰는것으로 보인다.
여기까지 왔으면, 일단 개발 준비는 끝났다. 본인이 사용하는 편집기(solidity 모드를 지원하여, visual studio code를 많이 쓰는듯)를 켜고 개발을 시작하면 된다.
-dapp 개발과정의 한 흐름을 따라해보고 싶다면, 아래의 유튜버의 강의를 추천한다.
https://www.youtube.com/watch?v=_0Vr4iThxBM&list=PLHTNL9MM29MRMuro6HR1TL4y9-ZLcIgZC
-solidity 언어에 대해 깊게 공부 하고 싶다면 아래의 유튜버 강의를 추천한다.
'프로그래밍 > 블록체인' 카테고리의 다른 글
비트코인 잠금 / 해제 스크립트관련 정리 (0) | 2022.02.12 |
---|---|
암호화 방식 총정리(feat.비트코인) (0) | 2022.02.11 |
이더리움 노드와 EVM (0) | 2021.12.26 |
이더리움 노드 구성 및 실행 방법 (0) | 2021.12.20 |