以太坊:Truffle 概述

Truffle 概述

Truffle 是一个在以太坊进行 DApp 开发的世界级开发环境、测试框架。它在使开发人员更轻松。这里有几篇博客让我们了解如何开发DApp:

  • 开发、部署第一个去中心化应用 (Dapp) - 宠物商店

  • 使用 Truffle 开发以太坊投票 DAPP

  • DApp 教程:用 Truffle 开发一个链上记事本

使用 Truffle 开发有一以下优点:

  • 内置智能合约编译,链接,部署和二进制(文件)管理。

  • 可快速开发自动化智能合约测试框架。

  • 可脚本化、可扩展的部署和迁移框架。

  • 可管理多个不同的以太坊网络,可部署到任意数量的公共主网和私有网络。

  • 使用 ERC190 标准,使用 EthPM 和 NPM 进行包装管理。

  • 支持通过命令控制台直接与智能合约进行交互。

  • 可配置的构建管道,支持紧密集成。

  • 支持在Truffle环境中使用外部脚本运行器执行脚本。

Truffle 文档内容

Truffle 文档包含5个部分: 快速入门 ,基本功能, 编写测试用例, 高级用法,参考引用,以下是大纲:

  • 快速入门 Truffle
    • 创建项目工程
    • 项目结构
    • 使用测试
    • 编译合约
    • 使用 Truffle Develop 部署合约
    • 可选: 通过 Ganache 部署
    • 合约交互
    • 进一步学习

基本功能

  • 安装 Truffle
    • 环境依赖
    • Windows 用户需了解
  • 创建 Truffle 项目工程
  • 编译合约
    • 合约文件目录
    • 编译命令
    • 构建 Artifacts
    • 引入合约依赖文件
  • 合约部署(Migrations)
    • 部署命令
    • 脚本文件
    • 初始化迁移功能
    • 部署程序 Deployer
    • 考虑网络
    • 可用账号
    • 部署程序接口 Deployer API
  • 与合约进行交互
    • 介绍
    • 数据的读和写
    • 什么是合约抽象
    • 执行合约函数
    • 延伸阅读
  • Truffle 和 MetaMask 配合
    • MetaMask 是什么?
    • 安装 MetaMask
    • MetaMask 和 Ganache 搭配使用
    • 搭配 Truffle Develop 使用 MetaMask
    • 搭配 Ganache CLI 使用 MetaMask
  • 用 EthPM 进行包管理
    • 安装软件包
    • 安装依赖
    • 使用安装的合约
    • 发布自己的软件包
  • 用 NPM 进行包管理
    • 包位置
    • 使用包
  • 调试合约
    • Overview
    • Command
    • Debugging interface
    • Adding and removing breakpoints
  • 使用控制台
    • 为什么有两个控制台?
    • 命令
    • 功能
  • 编写外部脚本
    • 命令
    • File structure
  • 第三方插件命令
    • Plugin installation / usage
    • Creating a custom command plugin
  • 支持 Quorum 开发
    • Known Issues
    • Configuration
    • Using Privacy Features

编写测试用例

  • 测试合约
    • Framework
    • Location
    • Command
    • Clean-room environment
    • Speed and reliability considerations
  • 用 JavaScript 写测试用例
    • Use contract() instead of describe()
    • Use contract abstractions within your tests
    • Using artifacts.require()
    • Using web3
    • Examples
    • Specifying tests
    • Advanced
    • TypeScript File Support
  • 用 Solidity 写测试用例
    • Example
    • Test structure
    • Advanced features

高级用法

  • 选择网络及部署
    • Configuration
    • Specifying a network
    • Build artifacts
    • Application deployment
  • Build Processes
    • Running an external command
    • Providing a custom function
    • Creating a custom module
    • Bootstrapping your application
  • 创建 Truffle Box
    • Creating a box
    • Configuration file
    • Images
    • Truffle site listing

参考引用

  • 选择以太坊客户端
    • When developing
    • Deploying to live networks
    • Deploying to private networks
  • 配置文件
    • Location
    • General options
    • Compiler configuration
    • plugins
    • EthPM configuration
  • 合约抽象封装
    • Usage
  • API
    • Contract Abstraction API
    • Contract Instance API
  • Truffle 命令手册
    • Usage
    • 命令列表
  • 联系开发者
    • Gitter
    • Issue Tracker
    • Twitter

 

你可能感兴趣的:(区块链,以太坊)