[이더리움 개발] 솔리디티로 DApp 개발하기

in kr •  7 years ago  (edited)

우리도 보기만 하지 말고
이더리움으로 직접 뭔가 만들 수 있을까요?
한 번 해봅시다.

Remix라는 툴이 있는데요.
솔리디티라는 언어를 사용한 통합개발환경입니다.

이더리움 컴파일러라고
생각하시면 됩니다.

이걸 사용하면
이더리움으로 DApp도 만들 수 있고
독자적인 이더리움 메인넷을 가진 블록체인도 만들 수 있습니다.

저는 아직 간단한 방법밖에 몰라서
그걸 알려드리려고 합니다.

  1. 일단 remix 사이트를 방문하세요.
    http://remix.ethereum.org/

이더리움 Remix는
이더리움 컴파일러 라고 보시면 됩니다.

예제 소스1.

pragma solidity ^0.4.0;

contract SimpleStorage {
uint storedData;

function set(uint x){
    storedData = x;
}

function get() returns (uint retVal){
    return storedData;
}

}

예제2.
pragma solidity ^0.4.0;

contract kisacoin {
mapping(address => uint) public balances;
uint KISA_PER_WEI = 50000000000000000;

function buyCoin(){
    balances[msg.sender] += msg.value/KISA_PER_WEI;
    if(!msg.sender.send(msg.value % KISA_PER_WEI))
        throw;
}
function sellCoin(uint amount){
    if(balances[msg.sender] >= amount){
        balances[msg.sender] -=amount;
        if(!msg.sender.send(amount*KISA_PER_WEI)){
            throw;
        }
    }
}
function showMyCoin() returns(uint amount){
    return balances[msg.sender];
}

}

예제3.
pragma solidity ^0.4.0;

contract EscrowPurchase{
enum ItemState{ CREATED, LOCKED, SENT, COMPLETED}

uint public price;
address public seller;
address public buyer; 
ItemState public state;

function registerItem(uint amount){
    seller = msg.sender;
    value = amount;
    state = State.Created;
}

function buyItem(){}
function sendItem(){}
function receiveItem(){}

}

아직까지 설명할 수 있는 실력은 되지 않아서
소스를 보면서 한 번 생각해보세요.

그리고 좀 더 해보시고 싶은 분들을 위해서
참고 사이트를 알려드립니다.

참조 : 솔리디티 예제들이 있는 곳
https://github.com/topchaebol/solidity-baby-steps

감사합니다.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!