참고)  이더리움 용어:  transaction - writing하는 호출,   call-읽는 호출.

공부하기 좋은 소스: petShop




<Truffle> : 단어 의미는 송로버섯


이더리움 solidify 개발시에 간단한 웹환경인 remix가 공부하기 좋지만,

본격적으로 빌드환경 구성해서 개발하기에는 truffle이 좋다.   


설치: $npm install -g truffle

$truffle init    만 하면 개발폴더구조와 설정파일인 truffle.js가 생성된다.

$truffle compile - sol컴파일.

 


참고: 테스트 서버환경 (테스트용도임- 배포환경으로 적당치 않음)

truffle에 직접 lite-server를 사용하여 localhost:3000으로 test를 할 수도 있는데

이 경우엔 package.json을 만들어 "dev"란 이름으로 lite-server를 추가하고

$npm run dev 를 하면 된다.     => petShop truffle예제 참고   


$truffle console - crowd세일등을 test할 때, javascript console처럼 온라인 test가능. REF


좋은 crowd세일 예제:  REF



<Ganache> : 단어 의미는 초코+크림 반반 섞은 거시기


remix에서는 이더리움 지갑으로 metaMask를 쓰듯이

Truffle에서는 이더리움 client로 ganache를 사용하는게 좋다. (물론 다른 것들도 있다)


GANACHE  :  app을 실행하면

http://127.0.0.1:7545  에서 클라이언트 실행

                                 참고 8545 = TestRPC일경우.(주로 MetaMask랑 같이 씀) - REF

                                     truffle init # Initialize a default truffle project in that folder

truffle build # Compile the dapp truffle migrate # Publish the dapp on the blockchain truffle serve # Host your web interface on port 8080


Truffle + Ganache환경에서

truffle develop하면  http://127.0.0.1:9545 에서 클라이언트 실행해줌. 



<ROPSTEN-TestNet사용법>


 $npm install truffle-hdwallet-provider -save하고 나서


 truffle.js를 편집해서 ROPSTEN설정하고

           (ethpm.js도 점검하고)

$truffle publish  하면 ROPSTEN에 publish됨.




<Zeppelin>

Zeppelin기반으로 Token을 만들고 싶다면.. npm방식으로 zeppelin을 설치하는 방법과

ethpm방식으로 zeppelin을 설치하는 방법이 있는데..   


npm방식으로 하면 다른 소스들과 헤깔리기도 하고, 직접 zeppelin과 상관도 없는 많은 파일들을 받아야 하므로

딱 필요한 것만 받는 ethpm방식으로 설치하기를 추천한다.


ethpm.json파일만 만든 후에  REF

$truffle install zeppelin하면 intalled_contracts밑에 패키지가 설치가 되고..    REF

토큰관련 코딩후에는 그냥 

$truffle compile -> $truffle migrate로 다른 일반 contracts와 함께 개발이 가능한 것으로 보인다.

($truffle publish는 아직은 필요없는거 같은데.. 이건 ROPSTEN용도이려나? .... 아직 미 test중)



출처:Truffle공식사이트

Posted by yongary
,