찾다
기술 주변기기IT산업블록 체인 스마트 계약 제품군 인 트러플 소개

Introducing Truffle, a Blockchain Smart Contract Suite

트러플 : 스마트 계약의 개발을 단순화하는 강력한 도구 트러플은 스마트 계약의 개발, 테스트 및 배포 프로세스를 단순화하고 표준화하도록 설계된 인기있는 블록 체인 스마트 계약 제품군입니다. SOLC 컴파일러의 여러 버전을 지원하고 환경 별 구성을 허용하며 Smart Contracts와의 통신을 쉽게 통신하기 위해 Web3.JS 인터페이스를 통합하며 내장 테스트 프레임 워크가 있습니다.

트러플 설치 및 준비 트러플을 설치하는 가장 좋은 방법은 NODE 패키지 관리자 (NPM)를 사용하는 것입니다. 설치가 완료되면 개발자는 작동 방식을 이해하기 위해 데모 프로젝트를 설정할 수 있습니다. Truffle은 또한 계약, 마이그레이션 및 테스트를위한 지정된 폴더와 환경, 프로젝트 구조, 컴파일러 버전 및 설정을 관리하는 구성 파일을 갖춘 구조화 된 프로젝트 환경을 제공합니다.

트러플 코어 함수

송로 버섯의 주요 기능에는 자동 계약 테스트, 스크립트 배치 및 마이그레이션 프레임 워크, 직접 계약 통신을위한 대화식 콘솔, 계약 배포 및 테스트를위한 Ganache와의 통합이 포함됩니다. 또한 이슬비와 통합되어 DAPP 프론트 엔드를보다 쉽고 예측하기 쉽게 만들 수 있습니다.

초기 스마트 계약 개발의 도전 스마트 계약 개발 초기 (2016 년경)에 개발자는 종종 좋아하는 텍스트 편집기를 사용하여 스마트 계약을 작성하여 Geth와 Solc에게 직접 전화하여 배치했습니다. 사용자 친화 성을 향상시키기 위해 개발자는 Bash 스크립트를 작성하고 먼저 컴파일 한 다음 계약을 배포하지만 이는 여전히 비교적 간단하고 표준화가 부족하며 사용자 경험이 좋지 않습니다.

송로 버섯과 착륙은 이러한 문제를 해결하기 위해 왔으며, 트러플은이 기사의 초점이 더 높아서이 기사의 초점이되었습니다.

트러플은 다음과 같은 문제를 해결하는 것을 목표로합니다

컴파일 :

는 동시에 SOLC 컴파일러의 여러 버전을 지원하고 사용할 버전을 명확하게 표시합니다. 환경 :

계약에는 개발, 통합 및 생산 환경이 필요하며 각 환경은 자체 이더 리움 노드 주소, 계정 등이 있습니다.

테스트 :

계약은 테스트 할 수 있어야합니다. 스마트 계약의 경우 테스트 소프트웨어의 중요성을 과장 할 수 없습니다. 따라서 계약을 테스트하십시오! 구성 : 개발, 통합 및 생산 환경은 구성 파일에 캡슐화되어 GIT에 제출하고 팀 구성원이 재사용 할 수 있어야합니다. Web3js 통합 : web3.js는 웹 애플리케이션에서 스마트 계약으로 통신을 단순화하는 데 사용되는 JavaScript 프레임 워크입니다. 트러플은 한 단계 더 나아가 송로 버섯 콘솔에서 web3.js 인터페이스를 사용하여 개발 모드 (브라우저 외부)에서 웹 기능을 호출 할 수 있습니다.

트러플 프로젝트 구조

일반적인 송로 버섯 프로젝트 구조는 다음과 같습니다

각 폴더의 함수는 다음과 같습니다

    Contracts 폴더 : 모든 스마트 계약을 저장합니다. Migrations.sol 파일은 계약 마이그레이션을위한 특수 파일입니다.
  • 마이그레이션 폴더 : 에는 계약이 블록 체인에 배치되는 방법을 정의하는 스크립트를 포함합니다.
  • 테스트 폴더 :
  • 에는 계약 테스트 사례가 포함되어 있으며, 이는 견고성 또는 JavaScript를 사용하여 작성할 수 있습니다. Truffle-config.js 또는 Truffle.js 파일 : 구성 파일, 환경, 프로젝트 구조, 컴파일러 버전 및 설정 등을 정의합니다.
  • 계약 마이그레이션 및 테스트
  • 마이그레이션 스크립트는 블록 체인에 계약 배포 프로세스를 정의하여 최대 가스를 설정하고 배포의 전송 주소, 배포 라이브러리를 변경하고 계약 기능을 호출 할 수 있습니다. 초기 마이그레이션 (1_initial_migration.js)은 Migrations.sol 계약을 블록 체인에 배포합니다. 트러플 내장 테스트 프레임 워크로 개발자는 견고성 또는 JavaScript 테스트 사례를 작성할 수 있습니다. 구성 파일 (Truffle.js/Truffle-config.js) 구성 파일은 다음을 정의합니다
  • 환경 :
  • 개발, 테스트 네트워크, 생산 환경. Geth 노드 주소, 네트워크 ID, 최대 가스 및 배치를위한 가스 가격을 정의 할 수 있습니다. 프로젝트 구조 : 파일 구성 및 저장 위치를 ​​변경할 수 있지만 수정은 권장되지 않습니다.
  • 컴파일러 버전 및 설정 :
SOLC 버전 및 최적화 매개 변수를 설정합니다.

패키지 관리 : 는 ETHPM (Ethereum Package Manager)과 함께 ETHPM 종속성을 설정할 수 있습니다. 프로젝트 설명 : 프로젝트 제작자, 프로젝트 이름, 연락처 주소 등

한계 :

예를 들어, gplv3.

코드를 실행하십시오 컴파일 계약 : 마이그레이션을 실행하십시오 :

또는

(지정된 환경) 실행 테스트 : 또는

(테스트 파일 지정)

위 내용은 블록 체인 스마트 계약 제품군 인 트러플 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
2025 년에 가입 할 Top 21 개발자 뉴스 레터2025 년에 가입 할 Top 21 개발자 뉴스 레터Apr 24, 2025 am 08:28 AM

이 최고의 개발자 뉴스 레터와 함께 최신 기술 트렌드에 대해 정보를 얻으십시오! 이 선별 된 목록은 AI 애호가부터 노련한 백엔드 및 프론트 엔드 개발자에 이르기까지 모든 사람에게 무언가를 제공합니다. 즐겨 찾기를 선택하고 Rel을 검색하는 데 시간을 절약하십시오

AWS ECS 및 LAMBDA가있는 서버리스 이미지 처리 파이프 라인AWS ECS 및 LAMBDA가있는 서버리스 이미지 처리 파이프 라인Apr 18, 2025 am 08:28 AM

이 튜토리얼은 AWS 서비스를 사용하여 서버리스 이미지 처리 파이프 라인을 구축함으로써 안내합니다. ECS Fargate 클러스터에 배포 된 Next.js Frontend를 만들어 API 게이트웨이, Lambda 기능, S3 버킷 및 DynamoDB와 상호 작용합니다. th

CNCF ARM64 파일럿 : 충격 및 통찰력CNCF ARM64 파일럿 : 충격 및 통찰력Apr 15, 2025 am 08:27 AM

CNCF (Cloud Native Computing Foundation), Ampere Computing, Equinix Metal 및 Actuated 간의 공동 작업 인이 파일럿 프로그램은 CNCF Github 프로젝트를위한 ARM64 CI/CD를 간소화합니다. 이 이니셔티브는 보안 문제 및 성과를 다룹니다

GO와 함께 네트워크 취약성 스캐너 구축GO와 함께 네트워크 취약성 스캐너 구축Apr 01, 2025 am 08:27 AM

이 GO 기반 네트워크 취약점 스캐너는 잠재적 보안 약점을 효율적으로 식별합니다. 속도를 위해 Go의 동시성 기능을 활용하고 서비스 감지 및 취약성 일치를 포함합니다. 그 능력과 윤리를 탐색합시다

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구