This page uses machine translation from English, which may contain errors or unclear language. For the most accurate information, please see the original English version. Some content may be in the original English due to frequent updates. Help us improve this page's translation by joining our effort on Crowdin. (Crowdin translation page, Contributing guide)
Foundry로 스마트 컨트랙트 배포하기
소개
Foundry는 개발자가 Solidity 스크립트를 통해 명령줄에서 컨트랙트를 관리 및 컴파일하고, 테스트를 실행하고, 컨트랙트를 배포하고, 네트워크와 상호작용할 수 있도록 지원하는 Rust로 작성된 스마트 컨트랙트 개발 프레임워크입니다.
Foundry는 빠르고 모듈화된 스마트 컨트랙트 개발을 가능하게 하는 네 가지 주요 CLI 도구로 구성되어 있습니다:
- Forge: Forge를 사용하여 스마트 컨트랙트를 배포, 테스트 및 컴파일할 수 있습니다.
- Cast: 캐스트는 EVM 스마트 컨트랙트와의 상호작용을 간단하게 만들어줍니다. 여기에는 체인 데이터 가져오기, 트랜잭션 전송 등이 포함됩니다.
- Anvil: 로컬 노드를 스핀업해야 하나요? Anvil은 Foundry에서 제공하는 로컬 노드 환경입니다.
- Chisel: 빠르고 유용하며 자세한 Solidity REPL.
이 가이드에서는 다음을 수행합니다:
- 간단한 Foundry 프로젝트를 생성합니다.
- Foundry를 사용하여 스마트 컨트랙트 샘플을 컴파일하고 테스트합니다.
- Foundry를 사용하여 스마트 컨트랙트를 카이아 Kairos 네트워크에 배포합니다.
- Cast와 Anvil로 메인넷 포크 살펴보기.
사전 요구 사항
이 튜토리얼을 따르기 위한 전제 조건은 다음과 같습니다:
- 코드 편집기: VS-Code와 같은 소스 코드 편집기.
- MetaMask: used to deploy the contracts, sign transactions and interact with the contracts.
- RPC Endpoint: you can get this from one of the supported endpoint providers.
- Test KAIA from Faucet: fund your account with sufficient KAIA.
- Rust 및 Foundry를 설치합니다.
개발 환경 설정하기
Foundry 설치가 성공적으로 완료되었는지 확인하려면 아래 명령을 실행하세요:
forge -V
출력
Foundry를 성공적으로 설치했으면 이제 Foundry에서 사용할 수 있는 CLI 도구(forge, cast, anvil, chisel)에 액세스할 수 있습니다. 다음 단계에 따라 Foundry 프로젝트를 설정해 보겠습니다:
1단계: 새 프로젝트를 시작하려면 아래 명령을 실행합니다:
forge init foundry_example
2단계: 프로젝트 폴더로 이동합니다.
cd foundry_examplels
Foundry 프로젝트를 초기화한 후, 현재 디렉터리에 다음이 포함되어야 합니다:
- src: 스마트 컨트랙트의 기본 디렉터리입니다.
- tests: 테스트를 위한 기본 디렉터리.
- foundry.toml: 기본 프로젝트 구성 파일.
- lib: 프로젝트 종속성을 위한 기본 디렉터리.
- script: Solidity 스크립팅 파일의 기본 디렉터리.