Remix IDE를 사용해보자!(remixd, Ganache)1

2022. 8. 25. 16:06Block Chain

Remix란?

 

Remix - Ethereum IDE & community

DEPLOY & RUN TRANSACTIONS IN THE CLOUD

remix-project.org

Remix IDE allows developing, deploying and administering smart contracts for Ethereum like blockchains. It can also be used as a learning platform.

 

Remix란 쉽게 말해 통해서 Ethereum과 같은 블록체인의 Smart Contract를 개발, 배포, 관리할 수 있게 도와주는 통합 개발 환경(Integrated Development Environment, IDE)입니다.

그럼 이 IDE를 통해서 어떻게 Smart Contract를 개발, 배포, 관리할 수 있을까요?

Solidity라는 언어를 통해 개발할 수 있습니다.

 

Solidity — Solidity 0.8.16 documentation

1. Understand the Smart Contract Basics If you are new to the concept of smart contracts we recommend you to get started by digging into the “Introduction to Smart Contracts” section, which covers: 2. Get to Know Solidity Once you are accustomed to the

docs.soliditylang.org

위 링크는 Solidity 0.8.16 버전의 공식 문서입니다.

 

그러나 코딩을 하기 위해서는 개발 환경을 우선 구성해야 합니다. 따라서 Smart Contract가 무엇인지, Solidity로 어떻게 코딩을 하는지는 나중에 시간이 되면 포스팅하도록 하겠습니다. 우선은 Remix에 집중해보겠습니다. 

Remix IDE

 

Remix - Ethereum IDE

 

remix.ethereum.org

위 링크는 Solidity 개발을 위한 Remix Web IDE 링크입니다.

 

Solidity를 개발하기 위한 개발 환경은 이미 많이 있습니다. Truffle, Hardhat, Ganache 등등 모두 Solidity 개발을 도와주는 도구입니다.또한 Remix는 Desktop App으로 다운받아서 사용할 수도 있습니다. 그런데 왜 Remix Web IDE를 선택했을까요?

 

우선 가장 큰 이유는 복잡하게 뭐 설치하고 하는 과정 없이 크롬에서 그냥 열면 바로 개발, 컴파일, 배포까지 모두 할 수 있습니다.

또한 제가 모든 개발 도구를 써본 것은 아니지만 MetaMask와의 연동을 위해서는 Chrome에서 작업하는 것이 가장 편하다고 생각했습니다. 그리고 Remix Web IDE만으로는 불편한 점이 있어 위에서 언급했던 개발 도구와 함께 사용하는데 Web도 무리가 없습니다.

 

그럼 Web을 기준으로 설명드리겠습니다.

Remix IDE Home

위 Remix IDE 링크를 클릭하시면 위와 같은 화면이 나옵니다.

Visual Studio Code를 써보신 분이라면 좌측 탭들이 어떤 역할인지 감이 올거라 생각합니다.

 

좌측 1, 2번과 같은 경우 Visual Studio Code에 없지만 자주 사용하는 탭이 될 것입니다.

 

1번 탭 : Solidity Compiler

Solidity Compiler

Solidity Compiler 탭을 누르면 위와 같은 그림을 볼 수 있습니다.

컴파일러의 버전을 고를 수도 있고, Auto compile, Hide warnings와 같은 속성들을 선택할 수 있습니다.

Complile 버튼을 이용해서 내가 작성한 코드를 컴파일할 수 있습니다.

 

Advanced Configurations를 누르면 Solidity 뿐만 아니라 Yul로 언어를 변경할 수도 있고, EVM(Ethererum Virtual Machine)의 버전을 선택할 수도 있지만 저도 아직 사용해보지 않아서 이 부분은 다음에 포스팅 하도록 하겠습니다.

 

2번 탭 : Deploy & Run Transactions

Deploy & Run Transactinos

컴파일한 Solidity 프로그램을 배포하고 실행할 수 있는 탭입니다.

EVM 환경을 선택하거나 자신의 지갑 주소, Gas Limit, 송금할 액수(Value), 배포할 계약(Contract) 등을 선택하여 배포할 수 있습니다.

코드를 컴파일을 하게되면 Deploy 버튼이나타나고, 이를 이용해 배포할 수 있습니다.

혹은 이미 배포되어 있는 계약의 주소를 안다면 At Address를 통해 해당 계약에 접근할 수 있습니다.

 

 

위 사진에서 3번 박스를 이용해서 Workspace를 관리할 수 있는데, 이 부분에서 단점이 있어 remixd를 추가적으로 활용해야합니다.

따라서 다음 포스팅에서는 remixd의 사용 이유와 활용법을 알아보겠습니다.

 

여기까지 Solidity를 개발하면서 자주 사용하게 될 Remix Web IDE의 대략적인 설명을 마치겠습니다.

감사합니다.