CosmWasm과 스마트 컨트랙트 작성 (1부)
소개
안녕하세요, 저는 Vu입니다. 새로운 시리즈인 CosmWasm과 스마트 계약 작성하기를 공유합니다.
스마트 계약이란 무엇입니까?
블록체인에 저장된 간단한 프로그램입니다. 미리 정해진 조건이 있을 때 실행할 수 있습니다.
다음은 스마트 계약의 이점과 소품 중 일부입니다.
원인은 인간에 의한 프로그램이고 실수를 할 수 있으며 이로 인해 계약이 공격에 취약합니다.
스마트 계약은 24kb를 초과할 수 없으며 그렇지 않으면 가스가 부족할 수 있습니다.
환경
1부에서는 개발할 환경과 이를 설정하는 방법을 소개한다.
설정 녹
Rust는 CosmWasm 스마트 계약에 사용되는 주요 프로그래밍 언어입니다. this을 따라 Rust를 설정할 수 있습니다.
그런 다음 다음 명령을 실행합니다.
# 1. Set stable as the default release channel
rustup default stable
cargo version
# update if it is lower than 1.50.0+
rustup update stable
# 2. Add WASM as the compilation target:
rustup target list --installed
rustup target add wasm32-unknow-unknown
# 3. Install the following packages to generate the contract:
cargo install cargo-generate --features vendored-openssl
cargo install cargo-run-script
VS 코드 설정
VS Code는 강력한 편집기입니다. link을 통해 모든 플랫폼에 다운로드하여 설치할 수 있습니다.
그리고 확장자를 추가할 수 있습니다:
rust-analyzer
진단 녹 코드에.그리고 CosmWasm IDE 스마트 계약을 개발하고 배포합니다.
결국 스마트 컨트랙트 프로그래밍을 개발할 수 있는 환경 설정을 마쳤습니다.
시작할 시간입니다.
스마트 계약을 작성할 때입니다. 논리가 있는 스마트 계약을 작성할 것입니다. 실행하면 스마트 계약이 카운터 변수를 1로 증가시킵니다.
먼저 상용구 프로젝트를 설정하기 위해
CW-Template
부터 시작합니다.최소한의 상용구 버전을 사용합니다.
cargo generate --git https://github.com/CosmWasm/cw-template.git --branch 1.0-minimal --name counter-contract
완료되면 출력을 확인합니다.
🔧 Destination: /Users/oraichain/Desktop/person/rust-lab/cw-starter ...
🔧 Generating template ...
[ 1/30] Done: .cargo/config
[ 2/30] Done: .cargo
[ 3/30] Skipped: .circleci/config.yml
[ 4/30] Done: .circleci
[ 5/30] Done: .editorconfig
[ 6/30] Done: .github/workflows/Basic.yml
[ 7/30] Done: .github/workflows
[ 8/30] Done: .github
[ 9/30] Done: .gitignore
[10/30] Done: Cargo.lock
[11/30] Done: Cargo.toml
[12/30] Done: LICENSE
[13/30] Done: NOTICE
[14/30] Done: README.md
[15/30] Done: examples/schema.rs
[16/30] Done: examples
[17/30] Done: rustfmt.toml
[18/30] Done: schema/count_response.json
[19/30] Done: schema/execute_msg.json
[20/30] Done: schema/instantiate_msg.json
[21/30] Done: schema/query_msg.json
[22/30] Done: schema/state.json
[23/30] Done: schema
[24/30] Done: src/contract.rs
[25/30] Done: src/error.rs
[26/30] Done: src/helpers.rs
[27/30] Done: src/lib.rs
[28/30] Done: src/msg.rs
[29/30] Done: src/state.rs
[30/30] Done: src
🔧 Moving generated files into: `/Users/oraichain/Desktop/person/rust-lab/cw-starter`...
💡 Initializing a fresh Git repository
✨ Done! New project created /Users/oraichain/Desktop/person/rust-lab/cw-starter
다음 명령을 사용하여 프로젝트를 엽니다.
cd cw-starter # change dir to project.
code . # open project with vscode.
짜잔, 당신은 스마트 컨트랙트 프로젝트를 가지고 있었습니다.
게시물을 읽어 주셔서 감사합니다. 곧 2부도 업데이트 하겠습니다. 좋은 하루 보내세요!
Reference
이 문제에 관하여(CosmWasm과 스마트 컨트랙트 작성 (1부)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/im6h/writing-smart-contract-with-cosmwasm-part-1-1iho텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)