본문 바로가기

ethereum17

[Solidity] receive 함수 이전 포스트에서 fallback 함수에 대해 알아보았다. 이번 포스트에서는 fallback 함수와 관련된 receive 함수를 알아보자. Receive 함수 솔리디티 0.6.0 버전 이후 fallback 함수는 fallback과 receive로 나뉘어졌다. 본래 하나였던 기능이 세분화되어 두개로 분리되었다고 이해하면 된다. 해당 버전 이후 fallback 함수는 컨트렉트의 호출 함수가 확인되지 않을 때, 함수에서 이더를 보낼 때(transfer) 디폴트 함수로 동작한다. 그리고 receive 함수는 오직 이더를 받을 때 디폴트 함수로 실행된다. Receive 함수의 특징 receive() external payable { // ... } 해당 함수의 구성은 위와 같으며 특징은 다음과 같다. externa.. 2022. 3. 12.
[Solidity] fallback 함수 들어가기 앞서 참고해야할 사항이 있다. Solidity는 0.6.0 버전 이후로 fallback 함수가 receive와 fallback으로 나뉘어졌다. 하나의 기능을 세분화시켜 두가지로 나누어 놓은 것이다. 본문은 0.6.0 이후의 fallback 함수에 대해 소개하는 글임을 알린다. Fallback 함수 컨트렉트에서 fallback 함수란 하나의 디폴트 함수와 같다. 이 함수가 실행되는 케이스는 두 가지가 있다. 첫 번째는 호출한 함수가 컨트렉트 내에서 조회되지 않을 경우다. 외부에서 특정 컨트렉트를 호출했을 때, 해당 호출 주소(function identifier)가 확인되지 않으면 디폴트로 fallback 함수가 실행된다. 두 번째는 이더(ETH, ether)를 보낼 때 자동으로 실행된다. 쉽게 말.. 2022. 3. 12.
[Solidity] 이더리움 프로그래밍 코드 에디터 Remix IDE 프로그래밍의 코드 에디터를 여는 시점에서 시작된다고 할 수 있다. 그리고 개발자라면 하나 이상의 코드 에디터를 사용한 경험이 있을거라 생각한다. JavaScript를 주로 사용하는 사람이라면 비쥬얼 스튜디오(VS Code)일 것이며, Java 개발자는 이클립스(Eclipse) 혹은 인텔리제이(InteliJ), Swift 개발자는 XCode와 같은 에디터를 사용할 것이다. 이처럼 각 프로그래밍 언어에는 그 언어에 적합한 코드 에디터가 있고, 개발 언어에 따라 최적의 프로그래밍 유틸리티 기능을 제공받을 수 있다. 이번 포스트에서는 이더리움 프로그래밍에서 가장 대표적인 리믹스(Remix) 코드 에티터를 소개하고자 한다. 풀 네임은 Remix IDE로 IDE란 통합 개발 환경(Integrated Developm.. 2022. 3. 8.
[Quorum] 쿼럼(Quorum)으로 프라이빗 블록체인 구축하기 이번 포스트에서 쿼럼(Quorum)이라는 오픈 소스 프로토콜을 통해 이더리움 기반 프로이빗 블록체인 네트워크를 구축하는 가이드를 작성하고자 한다. 우선, 쿼럼이란 자세히 어떤 프로젝트인지 살펴보자. 쿼럼(Quorum)이란? 쿼럼의 풀 네임은 ConsenSys Quorum으로 ConcenSys 사에서 제공하는 오픈 소스 프로토콜이다. 해당 패키지를 통해 개발자는 이더리움 기반 블록체인을 보다 편의성 있게 구축할 수 있다. 이더리움 블록체인의 메인넷과의 차이점이라고 하면, 쿼럼은 사용자(혹은 노드 운영자) 권한(Permission)에 따라 네트워크가 구축된다는 점(Private)으로 이더리움은 모든 사용자에게 오픈되어 있는 것(Public)과 대비된다. 덧붙여 이러한 네트워크의 특성(Private, Perm.. 2022. 3. 7.