Introduction to Eth--dapp and related development tools

Source: Internet
Author: User

Go to the center of the application

A hub-and-go application is a service that enables direct interaction between the user and the supplier (for example, connecting buyers and sellers in certain markets, holders and stores in the file store). Ethereum de-centralized applications typically interact with users through Html/javascript Web applications, using JavaScript APIs to communicate with blockchain. A de-centralized application typically has its own set of related contracts on the blockchain, which encodes the business logic, allowing persistent storage to require a state of strict consensus. Remember that because of the inherently redundant operations on the Ethereum network, the gas cost of execution is higher than the private execution cost of the off-chain. This motivates the central application developer to limit the amount of code executed and the number of code stored on the blockchain.

Go to the centralized application directory

The use of Ethereum's de-centric application is compiled into the following list, listed at different stages of development (concepts, work prototypes, real-time/deployed). If you are developing a centralized application, consider adding a portal to these lists:

    • The ethercasts state of Dapps
    • Dappslist
    • dappcentral– the classification page of the application, with instructions, code validation and network data.
    • Dapps Mailing List – The developer mailing list on Ethereum (stop using).

The list provides the go-to-center service covering a wide range of areas including finance, insurance, predictive markets, social networking, computing and storage allocation, gambling, markets, Internet of Things, management, collaboration, development and gaming.

    • What application will we expect to end up with? https://www.reddit.com/r/ethereum/comments/2mnl7f/the_top_10_ether_dapps_of_201

In the future, the Dappstores application may be listed and allocated in the centralized application browser integrated in the center.

Go to the Hub app browser
    • mist– The official GUI developed by the Foundation to center the application browser, the development phase. Mist as Wallet Dapp in the trial.
    • Syng–jarrad Hope developed Mobile Ethereum browser (development phase) – Supported by Devgrants
    • Metamask–aaron Kumavis Davis's in-browser GUI. Epicenter Bitcoin interview on GitHub – supported by devgrants
    • alethzero–c++ ETH client GUI (stop using).
    • supernova– (stop using).
Developer Tools

De-centric application development requires an understanding of the WEB3 Javascript API, the JSON RPC API, and the solidity programming language.

Note: There are developer tools to help you develop, test, and deploy a centralized application that automatically uses the resources listed below.

    • WEB3 JavaScript API – The JavaScript SDK that is used primarily when you want to interact with ethereum nodes.
    • JSON RPC API – the low-level JSON RPC 2.0 interface that interacts with nodes. This API is used by the WEB3 JavaScript API.
    • Solidity Docs–solidity is an ethereum-developed smart contract language that compiles to ethereum virtual machine opcode.
    • Test network – The test network helps developers develop and test Ethereum code and network interactions without spending their own etheric currency on the main network. The test network options are listed below.
    • To central application development resources. This will help you develop, debug, and deploy Ethereum applications.
De-Centralized application development resources
    • Smart Contract ELI5:HTTPS://BLOG.SLOCK.IT/A-PRIMER-TO-THE-DECENTRALIZED-AUTONOMOUS-ORGANIZATION-DAO-69FB125BD3CD
    • Introduction to 101 small white programming Smart contracts
    • List of standardized contract APIs

Example

    • Pricefeed Use instance –web3 script to print all account balances
    • Ethereum Contract Example

https://dappsforbeginners.wordpress.com/tutorials/your-first-dapp/https://github.com/ethereum/wiki/wiki/ Dapp-developer-resources

Tutorial

    • A tutorial on ethereum.org application in the center of the World
    • Go to the center of the Application Beginner tutorial series
    • Eris's Solidity Tutorial series
    • Advanced Solidity Tutorials
    • http://ethereumj.io/blog/2015/09/09/friendly-ether-bot/
    • Https://github.com/ConsenSys/ether-pudding
Mix-ide

Mix is the official Ethereum IDE, which allows developers to create and deploy contracts and de-centralized applications in the Ethereum blockchain. It contains a solidity source code error-Detector.

Ides/frameworks

Below is the developer framework and IDE for writing Ethereum-centric applications.

    • Truffle–truffle is the Ethereum development environment, testing framework and asset pipeline.
    • Dapple–dapple is a solidity developer tool to help build and manage the complex contract architecture of Ethereum-like blockchain.
    • Populus–populus is an intelligent contract development framework written in Python language.
    • Eris-pm–eris Package Manager deploys and tests the smart contract architecture on both private and public chains.
    • Embark–embark is a de-centralized application development framework written in JavaScript.
    • Etherscripter (retired, deactivated)
    • Resilient original trade broadcast
Ethereum Console

The command-line console of the Ethereum node.

The Ethereum console connects to the Ethereum node running in the background (tested with ETH and Geth) through the IPC and provides an interactive JavaScript console, including WEB3 objects and administrator attachments.

Here you can find the available management list Ethereum node control commands.

To use this console, you need to launch a local Ethereum node and an available IPC communication jack (the GETH.IPC file in the data directory). After you open a node, the IPC socket is located in your Ethereum local home directory by default. You can also set the-test option to test instructions using a specific node.

Then you can enter it in the console.

This is the interpretation of the-test mode node directive: More information about the node configuration file.

Bottom Service-Whisper
    • What is whisper, what is the purpose of –stackexchange quiz
    • Gavin Wood: Shh! DEVCON-1 Speech Video on Whisper–youtube
    • Whisper Overview and Dream API uses
    • ELI5
Swarm

Swarm is a distributed storage platform as well as a content distribution service, the Ethereum Web 3 stack comes with the grassroots services. The primary goal of Swarm is to provide adequate, centralized and redundant ethereum public record storage, especially for storing and distributing de-centralized application code and data, as well as blockchain data. From an economic standpoint, it allows participants to effectively centralize storage and bandwidth resources to provide the services previously mentioned to all participants.

From the end-user point of view, swarm and www are not very different, except that the upload is not for a specific service provider. The goal is point-to-point storage and provides anti-DDoS, 0 failures, fault tolerance, anti-censorship solutions, and self-maintenance, thanks to a built-in incentive system that uses a point-to-point accounting system and allows for exchange of resources with payments. Swarm is designed to be combined with Ethereum devp2p Multi-Protocol network hierarchy, for domain name solution ethereum Blockchain, service payment and content availability insurance.

Dξvcon speech on the Swarm
    • Viktor Trón, Daniel A. Nagy:swarm–youtube on the Ethereum dξvcon-1 speech
    • Daniel A. Nagy: Keeping public records safe available –youtube on the Ethereum dξvcon-0 speech
Code and Status
    • Resources
    • The release on GitHub
    • Development path Map
    • Ethersphere on Twitter.
    • Swarm Gitter
    • Swarm subreddit

Online and offline storage

    • https://www.reddit.com/r/ethereum/comments/3hkv2f/eli5_storage_in_the_ethereum_blockchain/
    • https://www.reddit.com/r/ethereum/comments/3npsoz/ethereum_ipfs_and_filecoin/
    • What is swarm and what is the purpose? –stackexchange Quiz
Ethereum Timers
    • Piper Merriam
    • Website: alarm_main_website
    • Document: Alarm_documentation

A market that encourages the arrangement of transactions to occur later. Provides roles similar to settimeout in crontab or JavaScript in UNIX. De-centralized cron service in Ethereum proposal – author Peter Szilagyi

Ethereum Computation Market
    • Piper Merriam
    • Website: computation_market_main_website
    • Document: Computation_market_main_website

Enables offline operations to validate the execution of the market. Allows each expensive operation to be used within an ethereum virtual machine without actually paying the high gas cost of executing them on the chain.

Btcrelay
    • For more information (about ETH/BTC two-way peg, there is no need to fix the bitcoin code).
    • Btcrelay Review
Randao

Random Number: https://www.reddit.com/r/ethereum/comments/49yld7/eli5_how_does_a_service_like_szabodice_grab_a/

The EVM

Ethereum virtual Machine (EVM) is an implementation environment for Ethereum smart contracts. Not only is it sandboxed, it is actually completely isolated, which means that the code running inside the Ethereum virtual machine does not have access to the network, file system, or other processes. Smart contracts even have limited access to other smart contracts.

The contract exists on the blockchain and the blockchain is the Ethereum-specific binary format (the Ethereum virtual machine byte code). However, the contract is typically written in a high-level language, used by the too-square compiler to compile into byte code, and eventually uploaded to the blockchain by the too-square client.

Resources:

The list in the article corresponds to the link can refer to "Ethereum Homestead Documentation" 94th page 1.7.5 Dapps

Introduction to Eth--dapp and related development tools

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.