이더리움 스마트 컨트랙 개발을 위해 IDE(통합 개발 환경)인 Remix를 사용해보겠습니다. VScode를 사용하지 않는 이유는, 자체적으로 솔리디티 코드를 디버깅하거나 컴파일 하는 기능이 없기 때문입니다. Remix를 사용하면 다음의 4가지 기능을 사용할 수 있습니다.
이제 Remix를 사용하여 개발하는 것을 보려고 합니다.
각 옵션을 살펴보면,
배포를 진행시, 다음과 같이 web3deploy 방법에 대해서도 확인할 수 있습니다.
var simplestorageContract = new web3.eth.Contract([{"inputs":[],"name":"get","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"x","type":"uint256"}],"name":"set","outputs":[],"stateMutability":"nonpayable","type":"function"}]);
var simplestorage = simplestorageContract.deploy({
data: '0x608060405234801561001057600080fd5b50610150806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806360fe47b11461003b5780636d4ce63c14610057575b600080fd5b6100556004803603810190610050919061009d565b610075565b005b61005f61007f565b60405161006c91906100d9565b60405180910390f35b8060008190555050565b60008054905090565b60008135905061009781610103565b92915050565b6000602082840312156100b3576100b26100fe565b5b60006100c184828501610088565b91505092915050565b6100d3816100f4565b82525050565b60006020820190506100ee60008301846100ca565b92915050565b6000819050919050565b600080fd5b61010c816100f4565b811461011757600080fd5b5056fea264697066735822122042b56572a28752a1cb5318672477aa3db470e7dec8121b0a669bbbafea16f66c64736f6c63430008070033',
arguments: [
]
}).send({
from: web3.eth.accounts[0],
gas: '4700000'
}, function (e, contract){
console.log(e, contract);
if (typeof contract.address !== 'undefined') {
console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + contract.transactionHash);
}
})