본문 바로가기

Solidity4

[Solidity] 다른 contract 와 상호작용하기 contract 내부에서 블록체인 안에서 내가 소유하고 있지않은 다른 contract 와 상호작용(함수 호출 등)하는 방법 먼저 사용하고자 하는 contract 의 interface 를 정의해야 한다. contract NumberInterface { function getNum(address _myAddress) public view returns (uint); } 위와 같이 getNum 함수의 body(구현부)가 없다. 함수 마지막 (; 세미콜론)으로 바로 끝낸다. contract MyContract { address NumberInterfaceAddress = 0xab38... // ^ The address of the FavoriteNumber contract on Ethereum NumberInt.. 2022. 12. 9.
[Solidity] internal vs private, external vs public internal contract의 해당 내용을 비공개 한다는 의미이다. contract 의 내부에서만 사용한다는 의미이다. stage variable 은 기본이 internal 이다. 상속받은 contract 에서 사용할 수 있다.(protected 와 비슷) private contract의 해당 내용을 비공개 한다는 의미이다. contract 의 내부에서만 사용한다는 의미이다. 상속받은 contract 에서 사용할 수 없다. external contract 의 interface 로 외부 공개 contract 의 외부에서 사용한다는 의미이다. state variable 은 external 이 될 수 없다. contract 내부에서 사용하려면 this 키워들를 이용해야 한다. contract MyExamp.. 2022. 12. 9.
[Solidity] view 와 pure view storage state 를 읽을 수 있다. storage state 값을 변경할 수 없다. contract MyExample { uint myValue = 123; // storage state function testfunc() public view returns(uint) { uint newValue = myValue + 1; return newValue; } } pure storage state 를 읽을 수 없다. storage state 를 변경할 수 없다. contract MyExample { uint myValue = 123; // storage state function testfunc() public pure returns(uint) { //uint newValue = myVal.. 2022. 12. 8.
[Ethereum] 개발 환경 설정 이더리움(Ethereum) 이란, 스마트 컨트랙트(Smart Contract)를 실행할 수 있는 플랫폼이다. go,c++,python 등 다양한 언어로 이더리움을 구동할 수 있는 클라이언트가 개발되고 있으며, 현재 가장 많이 사용되는 클라이언트가 go 언어로 개발된 go-ethereum(geth) 이다. Ethereum Client설치 https://geth.ethereum.org/downloads/ Downloads | Go Ethereum Retrieving packages from release server... geth.ethereum.org 윈도우즈 버전 설치. 설치 진행 중 "Geth, Development tools'를 반드시 설치해야 한다. 설치가 잘 되었다면, 명령 프롬프트에서 "geth.. 2022. 12. 6.