이더리움/web3.js

[web3.js] 1. Visual Studio Code

라이튼 2023. 11. 8. 22:44

이전글

 

[web3.js] 0. 들어가기 전에

0. 들어가기 전에 web3.js는 이더리움 노드와의 상호작용을 도와주기 위한 자바스크립트 라이브러리입니다. web3.js를 이용하여 이더리움 노드와 효과적으로 상호작용하기 위해서는 블록체인, 스마

kwjdnjs.tistory.com

 

Visual Studio Code

 이번 글에서는 vscode를 설치하고 vscode의 솔리디티 확장 기능을 이용하여 솔리디티 코드를 컴파일해 보겠습니다.

 

1. Visual Studio Code

 솔리디티로 스마트 컨트랙트 코드를 작성하고 테스트하기 위해서는 다음과 같은 것들이 필요합니다.

  • 솔리디티 코드 작성을 위한 코드에디터
  • 솔리디티로 된 코드를 컴파일하기 위한 컴파일러
  • 컴파일된 코드를 테스트하기 위한 테스트 블록체인

 

 리믹스를 사용하면 위 기능들을 모두 쉽게 사용할 수 있습니다. 하지만 로컬 환경에서 솔리디티 코드를 작성하고 테스트하기 위해서는 위 기능들을 모두 직접 설치해야 합니다.

 

 이번 글에서는 코드에디터를 설치하여 사용해 보겠습니다. 솔리디티 코드를 작성하기 위한 코드에디터는 여러 종류가 있지만, 일반적으로 많이 사용되는 것은 Visual Studio Code입니다.

 

Visual Studio Code는 아래 공식 사이트에서 다운로드하여 설치할 수 있습니다. 자신의 운영체제에 맞게 설치하면 됩니다.

 

 

Visual Studio Code - Code Editing. Redefined

Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.  Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.

code.visualstudio.com

 

2. solidity 개발환경 설정

 이제 설치된 vscode에서 솔리디티 코드를 작성해 보겠습니다. 사용할 코드는 다음과 같습니다.

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract Hello {
    string public a = "Hello World";
    uint8 internal b = 32;
    uint[] private c = [1, 2];
}

 

 .sol 확장자로 끝나는 파일을 하나 생성하여 위 코드를 입력한 후 저장하면 됩니다.

 

 

 코드를 더 알아보기 쉽게 하기 위해 solidity 확장을 설치해 보겠습니다.

 

 왼쪽 메뉴에서 맨 아래의 확장을 선택하여 마켓플레이스를 열어준 뒤 solidity를 입력합니다. 그리고 가장 상단의 solidity 확장을 설치합니다.

 

 

 해당 확장이 정상적으로 설치됐다면 아래와 같이 코드에 색상이 표시되기 시작합니다. 실제 표시되는 색상은 설치된 테마에 따라 다를 수 있습니다.

 

 

 solidity 확장에는 솔리디티 컴파일러가 포함되어 있습니다. 이 컴파일러를 이용하여 솔리디티 코드를 컴파일해 보겠습니다.

 

 솔리디티 코드 작성 환경에서 마우스 우클릭 후 'Solidity:Compile All'을 클릭합니다. 해당 메뉴가 선택되면 솔리디티 코드의 컴파일이 진행되고, bin 폴더에 컴파일된 솔리디티 코드와 abi가 생성됩니다.

 

 

 각 파일을 확인해 보면 .bin 파일에는 컴파일된 솔리디티 코드가, .abi 파일에는 abi 정보가 담겨있는 것을 확인할 수 있습니다.

 

 지금까지 로컬 환경에서 솔리디티 코드를 작성하고 컴파일하는 방법에 대해 알아봤습니다. 다음글에서는 로컬 환경에서 테스트 블록체인을 생성하고, 이 블록체인에 코드를 배포하는 방법에 대해 알아보겠습니다. 감사합니다.

 

 

다음글

 

[web3.js] 2. 트러플, 가나슈

이전글 [web3.js] 1. Visual Studio Code 이전글 [web3.js] 0. 들어가기 전에 0. 들어가기 전에 web3.js는 이더리움 노드와의 상호작용을 도와주기 위한 자바스크립트 라이브러리입니다. web3.js를 이용하여 이더

kwjdnjs.tistory.com

 

'이더리움 > web3.js' 카테고리의 다른 글

[web3.js] 3. ERC-20 토큰 컨트랙트  (0) 2023.11.16
[web3.js] 2. 트러플, 가나슈  (1) 2023.11.11
[web3.js] 0. 들어가기 전에  (0) 2023.11.03