본문 바로가기
솔리디티

리믹스 이더리움으로 SimpleCoin 트랜잭션 만들어보기

by 멸치김밥 2022. 2. 11.

컴파일러 버전은 0.4.26을 사용했고

자동 컴파일 기능을 사용하였다

 

 

 

워크스페이스에 simpleCoin.sol 파일을 만들고 코드를 입력한다

pragma solidity ^0.4.0;

contract SimpleCoin {
    mapping(address => uint256) public coinBalance;

    event Transfer(address indexed from, address indexed to, uint256 value);

    constructor(uint256 _initalSupply) public {
        coinBalance[msg.sender] = _initalSupply;
    }

    function transfer(address _to, uint256 _amount) public {
        require(coinBalance[msg.sender] >= _amount);
        require(coinBalance[_to] + _amount >= coinBalance[_to]);
        coinBalance[msg.sender] -= _amount;
        coinBalance[_to] += _amount;
        emit Transfer(msg.sender, _to, _amount);
    }
}

 

 

Deploy를 누르게 되면 0x5B3... 에게 1000의 Balance가 생기고

오른쪽 사진처럼 나오고

transfer에는 받게될 주소(0xAb8...)와 100의 amount를 입력하고 transact버튼을 누르고 난 뒤

coinBalance 칸에 0x5B3... 주소를 입력하고 버튼을 누르면 100을 보낸 나머지인 900,

coinBalance 칸에 0xAb8... 주소를 입력하고 버튼을 누르면 0에서 100을 받은 100이 표시되는것을 볼 수 있다.

 


 

 

리믹스 이더리움으로 SimpleCoin을 이용하여

A가 1000코인을 가지고 B에게 100코인을 보내는 트랜잭션을 만드는 코드와

과정을 진행해보았다.

정확한 개념과 사용법들을 잘 알지 못하는 상태라 코드 해석이 정확하지 못한것 같다.

 

vsCode로 옮기면 컴파일러 버전 차이 때문인지 똑같은 코드가 컴파일러에서 계속 걸려서 vsCode에선 못했다.

기존에 해왔던 JS처럼 콘솔로그를 찍어볼 수 없어서 더 답답했다.

'솔리디티' 카테고리의 다른 글

오버플로우, 언더플로우  (0) 2022.02.16
인터페이스 (interface)  (0) 2022.02.12
storage, memory  (0) 2022.02.11
구조체 (struct)  (0) 2022.02.10
컨트랙트 contract  (0) 2022.02.10

댓글