첫 번째 Solidity 코드 작성 및 컴파일 방법

첫 번째 Solidity 코드 작성 및 컴파일 방법

Solidity는 이더리움 블록체인의 스마트 계약에서 사용하는 프로그래밍 언어입니다. 정적으로 유형이 지정된 객체 지향 프로그래밍 언어입니다.

Solidity는 시맨틱 버전 관리 체계를 사용하며 작성 당시 최신 버전은 0.8.9입니다. 보시다시피 언어는 의미론적 XYZ 버전 지정 형식을 사용하여 변경 속도가 얼마나 빠른지를 나타냅니다.

C++ 및 JavaScript와 같은 프로그래밍 언어는 Solidity 언어에 영감을 주었습니다. 이 가이드에서는 첫 번째 스마트 계약을 작성하고 컴파일하는 방법을 볼 수 있습니다.

리믹스 편집기

Solidity 코드를 작성하는 데 사용할 수 있는 많은 텍스트 편집기와 컴파일러가 있지만 가장 쉬운 것은 Remix 입니다. Remix는 Solidity 코드를 작성하고 디버그할 수 있는 온라인 IDE입니다. Remix를 처음 방문하면 아래와 유사한 랜딩 페이지가 표시되어야 합니다.

첫 번째 Solidity 코드 작성 및 컴파일 방법

첫 번째 스마트 계약 작성

먼저 파일 탐색기 탭에서 새 파일 만들기 아이콘을 클릭합니다 . 아이콘은 모서리가 접힌 종이 페이지처럼 보입니다. 새 파일의 이름을 helloWorld.sol 로 지정 합니다. .sol 확장자를 사용하여 파일에 Solidity 코드가 포함되어 있음을 표시합니다.

이제 아래 코드를 새 파일에 복사할 수 있습니다. 각 행에 대한 설명은 다음과 같습니다.

// SPDX-License-Identifier: GPL-3.0 pragma solidity ^0.8.1; contract FirstContract { uint var1; function set(uint x) public { var1 = x; } function get() public view returns (uint) { return var1; } }

첫 번째 줄은 누군가가 소프트웨어를 사용하고 배포할 수 있는 라이선스를 보여줍니다. 위 예제의 코드는 GPL 버전 3.0을 사용합니다 . 이것을 MIT 라이선스 와 같은 다른 라이선스로 대체할 수 있습니다 .

두 번째 줄은 컴파일러에게 0.8.1에서 0.9.0까지의 Solidity 버전을 사용하도록 지시하지만 0.9.0은 포함하지 않는 pragma 지시문을 보여줍니다 . 즉, >= 0.8.1 ~ < 0.9.0.="">

코드와 컴파일러 버전 간의 비호환성을 피하기 위해 이 줄을 포함하는 것도 중요합니다.

관련: Solidity란 무엇이며 스마트 계약을 개발하는 데 어떻게 사용됩니까?

일반적으로 xy Z 버전 에는 사소한 변경 또는 패치가 있습니다. 주요 변경 사항은 일반적으로 x에 있습니다. Y .z 버전. 이것이 pragma 지시문이 위의 코드에 0.9.0 버전을 포함하지 않는 이유 입니다.

Solidity는 객체 지향 언어입니다. 네 번째 줄 의 계약 키워드 는 다른 객체 지향 언어 의 class 키워드와 사용 방식이 비슷 합니다.

계약에는 함수, 상태 변수 및 기타 고급 유형이 포함될 수 있습니다. 계약 FirstContract 에는 var1 이라는 부호 없는 정수( 단위 ) 가 포함되어 있습니다 .

set()get() 이라는 두 함수 는 각각 변수 var1 에 대한 setter 및 getter 함수 입니다. 당신은 키워드로 함수를 정의 할 수 있습니다 기능 함수 이름과 괄호 하였다.

괄호 안에 함수가 사용할 매개변수를 선언할 수 있습니다. 변수 정의와 유사한 방식으로 작성해야 합니다. 데이터 유형 다음에 매개변수 이름을 명시하십시오.

관련: Monero는 무엇이며 개인 정보를 어떻게 보호합니까?

set()get() 함수 의 정의 에는 public 키워드가 포함되어 있습니다 . 이것은 다른 계약에서 호출할 수 있음을 선언합니다.

컴파일 및 배포

코드를 컴파일하려면 Solidity 컴파일러 버튼을 클릭하십시오 . 편집기의 왼쪽에 있는 버튼 위로 마우스를 가져가면 버튼의 이름을 볼 수 있어야 합니다.

첫 번째 Solidity 코드 작성 및 컴파일 방법

이제 Compile helloWorld.sol 이라는 버튼을 클릭합니다 . 컴파일러에서 오류가 발생하지 않으면 첫 번째 스마트 계약을 성공적으로 컴파일한 것입니다.

첫 번째 Solidity 코드 작성 및 컴파일 방법

코드를 배포하려면 트랜잭션 배포 및 실행 버튼을 클릭합니다. 이 버튼은 왼쪽 메뉴 의 Solidity 컴파일러 버튼 바로 아래에 있습니다. 이 페이지에서 계약 이름이 배포 버튼 위에 올바르게 표시되는지 확인하십시오 .

확인되면 이제 배포 를 클릭 하여 거래 수수료 없이 현재 로컬 테스트 네트워크에서 코드를 실행할 수 있습니다.

첫 번째 Solidity 코드 작성 및 컴파일 방법

이더리움 네트워크에서 DApp 만들기

스마트 계약을 만드는 방법을 배운 후 다음 단계는 분산 앱(DApp)을 만드는 방법을 배우는 것입니다. 이들은 무허가 네트워크에서 실행되는 블록체인 기반 애플리케이션입니다. 이것이 이더리움 스마트 계약의 아름다움입니다.

Ethereum에서 강력한 P2P 응용 프로그램을 만들 수 있습니다.


Python을 명령줄 계산기로 사용하는 방법

Python을 명령줄 계산기로 사용하는 방법

컴퓨터에서 그래픽 계산기를 사용할 수 있지만 Python 프로그래밍 언어 인터프리터는 탁상 계산기로도 사용할 수 있습니다. 공식 튜토리얼에서 언급한 Python 커뮤니티에서 인기 있는 실행 중인 농담입니다. Python을 계산기로 사용하는 방법은 다음과 같습니다.

프로그래머를 위한 8가지 최고의 자바 블로그

프로그래머를 위한 8가지 최고의 자바 블로그

프로그래머는 개발 또는 프로그래밍 분야에서 살아남기 위해 도전하고 경이로운 것들을 구축해야 합니다. 따라서 경력 기술을 향상시키기 위해 고급 프로그래밍 언어를 배우려는 경우 Java가 최고의 잠재 고객 중 하나입니다.

초보자를 위한 Python 시작을 위한 7가지 필수 명령

초보자를 위한 Python 시작을 위한 7가지 필수 명령

초보자로서 어떤 개념을 배우고 다음 이정표에 도달하기 위해 더 발전하는 방법을 자세히 설명하는 포괄적인 로드맵이 있다면 Python과 같은 새로운 프로그래밍 언어를 배우는 것이 수월해집니다. 중급 프로그래머라도 자신을 위한 견고한 토대를 구축하기 위해 기본 사항을 자주 다듬어야 합니다.

반응형 웹 디자인 원칙

반응형 웹 디자인 원칙

요즘에는 브라우저나 기기에 따라 사용자 인터페이스를 조정하는 웹사이트나 앱을 만드는 것이 일반적입니다. 이 목표를 달성하기 위한 두 가지 접근 방식이 있습니다. 첫 번째는 다양한 기기에 대해 다양한 버전의 웹사이트 또는 앱을 만드는 것입니다. 그러나 비효율적이며 예측할 수 없는 오류가 발생할 수 있습니다.

C++, Python 및 JavaScript를 사용하여 숫자의 자릿수를 계산하는 방법

C++, Python 및 JavaScript를 사용하여 숫자의 자릿수를 계산하는 방법

숫자로 작업하는 것은 프로그래밍의 필수적인 부분입니다. 모든 프로그래밍 언어는 다양한 방식으로 숫자를 조작할 수 있도록 지원합니다. 이 기사에서는 반복, 로그 기반 및 문자열 기반 접근 방식을 사용하여 정수의 총 자릿수를 찾는 방법을 배웁니다.

컨테이너 관리를 위한 9가지 최고의 Docker 대안

컨테이너 관리를 위한 9가지 최고의 Docker 대안

컨테이너는 가상 환경에서 소프트웨어 개발, 배포 및 관리에 매우 유용합니다. Docker는 컨테이너화 프로세스에 유용하지만 유일한 플랫폼은 아닙니다. Docker에 대한 몇 가지 대안을 찾고 있다면 더 이상 찾지 마십시오. 이 목록은 다음 프로젝트에서 사용할 수 있는 기능이 풍부하고 효율적인 Docker 대안을 보여줍니다.

SQL 대 NoSQL: 다음 프로젝트에 가장 적합한 데이터베이스는 무엇입니까?

SQL 대 NoSQL: 다음 프로젝트에 가장 적합한 데이터베이스는 무엇입니까?

SQL 대 NoSQL: 다음 프로젝트에 가장 적합한 데이터베이스는 무엇입니까?

WordPress 게시물에 트윗을 포함하는 방법

WordPress 게시물에 트윗을 포함하는 방법

WordPress 게시물에 타사 서비스를 포함하는 것은 방문자의 관심을 사로잡는 흥미로운 방법입니다. 포함된 콘텐츠는 또한 스캔을 더 쉽게 만드는 시각적 신호를 제공합니다. WordPress에서는 이러한 유형의 콘텐츠를 쉽게 추가할 수 있습니다.

npkill로 노드 모듈 폴더를 삭제하는 방법

npkill로 노드 모듈 폴더를 삭제하는 방법

Node.js는 웹 브라우저 외부에서 JavaScript를 실행할 수 있는 JavaScript 런타임 환경으로, 모든 종류의 애플리케이션 개발에 널리 사용됩니다. 인기의 일부는 개발자 경험을 용이하게 하는 NPM 패키지가 너무 많기 때문입니다.

GitHub 리포지토리를 강화할 상위 5개 배지

GitHub 리포지토리를 강화할 상위 5개 배지

GitHub 배지는 사용자에게 리포지토리 메트릭을 캡처하는 빠른 방법을 제공하여 리포지토리의 가독성을 높일 수 있습니다. 다른 개발자에게 프로젝트의 중요성과 필요성을 명확히 하기 위해 README.md에 배지를 삽입할 수 있습니다. 결과적으로 독자는 첨부된 배지를 확인하여 저장소에 대한 매우 빠른 아이디어를 얻을 수 있습니다.

국제 프로그래머의 날이란? 올해를 축하하는 3가지 방법

국제 프로그래머의 날이란? 올해를 축하하는 3가지 방법

국제 기념일은 사회적 문제, 역사적 날 및 각자의 경력을 인정하는 좋은 방법입니다. 국제 프로그래머의 날은 프로그래머가 일상 생활을 개선하기 위해 수행하는 역할을 기념합니다. 우리가 살고 있는 문명화된 세상은 프로그래머들이 쏟은 노력의 산물입니다.

Python String format() 메서드는 어떻게 작동합니까? 10가지 예

Python String format() 메서드는 어떻게 작동합니까? 10가지 예

데이터베이스 쿼리든 수학 연산의 결과든 Python 문자열 형식 방법은 사용자에게 결과를 표시하는 보다 동적이고 매력적인 방법을 제공합니다.

Visual Studio 2022 대 2019: 지금 업그레이드해야 합니까? 설명

Visual Studio 2022 대 2019: 지금 업그레이드해야 합니까? 설명

올해 초 Microsoft는 Visual Studio 2022의 미리 보기 버전을 야생 프로그래밍 세계에 출시했습니다. 이것은 좋은 소식입니다! 그것은 매우 인기 있는 IDE이지만, 그것이 번성하는 DevOps 생태계의 변화 속도를 고려할 때 조정 또는 정밀 검사가 필요합니다.

소프트웨어 메트릭스에 대한 간단한 소개

소프트웨어 메트릭스에 대한 간단한 소개

소프트웨어 메트릭은 소프트웨어의 다양한 측면을 수량화하는 데 사용되는 측정값입니다. 이러한 측면은 개발 팀의 비용, 품질 및 효율성에 이르기까지 다양합니다.

Windows 10에 .NET Framework 버전 3.5를 설치하는 방법

Windows 10에 .NET Framework 버전 3.5를 설치하는 방법

Windows 사용자로서 한 번 이상 .NET Framework라는 단어를 접했을 것입니다. Microsoft에서 개발한 소프트웨어 프레임워크로 C#, C++, F# 및 Visual Basic 프로그램을 빌드하고 실행할 수 있습니다. 최신 .NET 버전은 4.8이지만 일부 앱을 실행하려면 컴퓨터에 이전 버전의 .NET(예: .NET 3.5)이 필요할 수 있습니다.

Flask 또는 CherryPy: 어떤 Python 프레임워크를 사용해야 하나요?

Flask 또는 CherryPy: 어떤 Python 프레임워크를 사용해야 하나요?

Python 개발자라면 사용 가능한 프레임워크의 배열로부터 많은 이점을 얻을 수 있습니다. 일부 프레임워크는 대규모 생태계에 가장 적합하지만 다른 프레임워크는 특정 개발 목표를 제공하는 데 특화되어 있습니다. 두 Python 프레임워크(Flask 및 CherryPy) 간의 기본 기능, 사용법 및 차이점을 알아보려면 계속 읽으십시오.

Python, C++ 및 JavaScript를 사용하여 N자릿수 완벽한 정육면체와 정사각형을 찾는 방법

Python, C++ 및 JavaScript를 사용하여 N자릿수 완벽한 정육면체와 정사각형을 찾는 방법

많은 프로그래머는 코드를 사용하여 까다로운 수학 문제를 해결하는 것을 좋아합니다. 그것은 마음을 날카롭게하고 문제 해결 능력을 향상시키는 데 도움이됩니다. 이 기사에서는 Python, C++ 및 JavaScript를 사용하여 가장 작은 n자리 완전 정사각형과 정육면체를 찾는 방법을 배웁니다. 각 예제에는 여러 다른 값에 대한 샘플 출력도 포함되어 있습니다.

Windows PATH 변수에 Python을 추가하는 방법

Windows PATH 변수에 Python을 추가하는 방법

터미널에서 Python을 실행하는 것은 종종 불가피합니다. 그러나 Windows 10에 Python을 처음 설치한 경우 Windows PATH 환경 변수에 추가된 경우에만 Windows 터미널을 통해 Python을 실행할 수 있습니다.

파이썬 if 문을 사용하는 방법

파이썬 if 문을 사용하는 방법

if 문은 논리 프로그래밍의 원동력입니다. 결과적으로 Python 프로그래밍 기술에 상당한 도움이 된다면 Python을 더 잘 이해할 수 있습니다.

Python을 명령줄 계산기로 사용하는 방법

Python을 명령줄 계산기로 사용하는 방법

컴퓨터에서 그래픽 계산기를 사용할 수 있지만 Python 프로그래밍 언어 인터프리터는 탁상 계산기로도 사용할 수 있습니다. 공식 튜토리얼에서 언급한 Python 커뮤니티에서 인기 있는 실행 중인 농담입니다. Python을 계산기로 사용하는 방법은 다음과 같습니다.

프로그래머를 위한 8가지 최고의 자바 블로그

프로그래머를 위한 8가지 최고의 자바 블로그

프로그래머는 개발 또는 프로그래밍 분야에서 살아남기 위해 도전하고 경이로운 것들을 구축해야 합니다. 따라서 경력 기술을 향상시키기 위해 고급 프로그래밍 언어를 배우려는 경우 Java가 최고의 잠재 고객 중 하나입니다.

초보자를 위한 Python 시작을 위한 7가지 필수 명령

초보자를 위한 Python 시작을 위한 7가지 필수 명령

초보자로서 어떤 개념을 배우고 다음 이정표에 도달하기 위해 더 발전하는 방법을 자세히 설명하는 포괄적인 로드맵이 있다면 Python과 같은 새로운 프로그래밍 언어를 배우는 것이 수월해집니다. 중급 프로그래머라도 자신을 위한 견고한 토대를 구축하기 위해 기본 사항을 자주 다듬어야 합니다.

반응형 웹 디자인 원칙

반응형 웹 디자인 원칙

요즘에는 브라우저나 기기에 따라 사용자 인터페이스를 조정하는 웹사이트나 앱을 만드는 것이 일반적입니다. 이 목표를 달성하기 위한 두 가지 접근 방식이 있습니다. 첫 번째는 다양한 기기에 대해 다양한 버전의 웹사이트 또는 앱을 만드는 것입니다. 그러나 비효율적이며 예측할 수 없는 오류가 발생할 수 있습니다.

C++, Python 및 JavaScript를 사용하여 숫자의 자릿수를 계산하는 방법

C++, Python 및 JavaScript를 사용하여 숫자의 자릿수를 계산하는 방법

숫자로 작업하는 것은 프로그래밍의 필수적인 부분입니다. 모든 프로그래밍 언어는 다양한 방식으로 숫자를 조작할 수 있도록 지원합니다. 이 기사에서는 반복, 로그 기반 및 문자열 기반 접근 방식을 사용하여 정수의 총 자릿수를 찾는 방법을 배웁니다.

컨테이너 관리를 위한 9가지 최고의 Docker 대안

컨테이너 관리를 위한 9가지 최고의 Docker 대안

컨테이너는 가상 환경에서 소프트웨어 개발, 배포 및 관리에 매우 유용합니다. Docker는 컨테이너화 프로세스에 유용하지만 유일한 플랫폼은 아닙니다. Docker에 대한 몇 가지 대안을 찾고 있다면 더 이상 찾지 마십시오. 이 목록은 다음 프로젝트에서 사용할 수 있는 기능이 풍부하고 효율적인 Docker 대안을 보여줍니다.

SQL 대 NoSQL: 다음 프로젝트에 가장 적합한 데이터베이스는 무엇입니까?

SQL 대 NoSQL: 다음 프로젝트에 가장 적합한 데이터베이스는 무엇입니까?

SQL 대 NoSQL: 다음 프로젝트에 가장 적합한 데이터베이스는 무엇입니까?

WordPress 게시물에 트윗을 포함하는 방법

WordPress 게시물에 트윗을 포함하는 방법

WordPress 게시물에 타사 서비스를 포함하는 것은 방문자의 관심을 사로잡는 흥미로운 방법입니다. 포함된 콘텐츠는 또한 스캔을 더 쉽게 만드는 시각적 신호를 제공합니다. WordPress에서는 이러한 유형의 콘텐츠를 쉽게 추가할 수 있습니다.

npkill로 노드 모듈 폴더를 삭제하는 방법

npkill로 노드 모듈 폴더를 삭제하는 방법

Node.js는 웹 브라우저 외부에서 JavaScript를 실행할 수 있는 JavaScript 런타임 환경으로, 모든 종류의 애플리케이션 개발에 널리 사용됩니다. 인기의 일부는 개발자 경험을 용이하게 하는 NPM 패키지가 너무 많기 때문입니다.

첫 번째 Solidity 코드 작성 및 컴파일 방법

첫 번째 Solidity 코드 작성 및 컴파일 방법

Solidity는 이더리움 블록체인의 스마트 계약에서 사용하는 프로그래밍 언어입니다. 정적 형식의 객체 지향 프로그래밍 언어입니다.