< 트러플 설치하기 >
Node 버전 확인

Truffle 설치

Truffle, Solodity, Node, Web3.js 버전 확인 => Truffle 버전 : 5.1.18 , Solidity 버전 : 0.5.16

dapp-example 폴더 생성 후 이동

소스폴더 생성 : truffle init ( npm init 과 같은 역할 )

4가지 폴더가 생성됨

contracts 폴더 아래에 스마트 컨트랙트 작성

< 스마트 컨트랙트 Hello,World! >
인텔리제이로 이전에 만든 dapp-example 폴더 open 하여 코드 작업 ( Solidity Plugin 설치 필수 )
contracts 폴더 아래에 solidity 컨트랙트 작성
자신의 solidity 버전에 따라서 solodity가 컴파일됨 ( truffle version시 나오는 solidity 버전 참고 )
만약, 자신의 버전보다 아래버전의 solidity 사용시 truffle-config.js 파일의 compilers:{ solc:{ 의 version 수정 후 주석 삭제 하여 사용

현재 solidity 버전 : 0.5.16 -> truffle-config.js 파일 수정 후 solidity 버전 : 0.5.8

HelloWorld.sol 스마트 컨트랙트 작성 ( solidity 버전 : 0.5.8 )
pragma solidity ^0.5.8;
contract HelloWorld { //컨트랙트 이름 : HelloWorld
string public greeting; //상태변수
constructor(string memory _greeting) public { //생성자
greeting = _greeting;
}
function setGreeting(string memory _greeting) public { //메소드 - set
greeting = _greeting;
}
function say() public view returns (string memory){ //메소드 - 출력
return greeting;
}
}
컴파일 ( truffle compile / compile –all )

-> 컴파일 결과 build 아래 contracts 아래 컴파일된 결과 json파일로 생성
- json 파일의 abi, deployedBytecode, bytecode 부분이 중요한 부분