Blockchain circle

One stop hot information platform

About us:

Blockchain circle provides the latest information about blockchain, digital currency, digital wallet, exchange, metauniverse, bitcoin, Ethereum, contract, financial management and so on, and always pays attention to the latest market...

How to enter the blockchain development project?

Time : 12/09/2021 Author : e67qc9 Click : + -
        Blockchain development (bottom Development) does not require project experience. Your experience in distributed storage development is enough. Bitcoin, Ethereum, fabric code, half a month is enough. For encrypted content, you can adjust the library. You don't need to create new content, and you don't have that ability. Those complicated consensus algorithms can not be separated from their ancestors. It is enough to know a Paxos. Therefore, it is enough for you to highlight your experience in distributed system development and then talk about the working mechanism of blockchain projects that you are familiar with. If you are doing tokens and writing smart contracts, you do not need experience in distributed systems. It is enough to be familiar with open source bitcoin and Ethereum.
 
        Blockchain is a popular new concept at present, which contains two concepts of technology and finance. From the technical point of view, this is a distributed database that sacrifices consistency efficiency and ensures final consistency. Of course, this is one-sided. From the perspective of economics, this kind of peer-to-peer network with strong fault-tolerant ability just meets a necessary requirement of the sharing economy & mdash& mdash; Low cost trusted environment. Business scenario construction and preliminary analysis, business scenario modeling, development path and development difficulties. This article cannot cover all types of development. It mainly provides some development ideas and describes the feasible practices.
 
        Blockchain is a popular new concept at present, which contains two concepts of technology and finance. From the technical point of view, this is a distributed database that sacrifices consistency efficiency and ensures final consistency. Of course, this is one-sided. From the perspective of economics, this kind of peer-to-peer network with strong fault-tolerant ability just meets a necessary requirement of the sharing economy & mdash& mdash; Low cost trusted environment. Business scenario construction and preliminary analysis, business scenario modeling, development path and development difficulties. This article cannot cover all types of development. It mainly provides some development ideas and describes the feasible practices.
 
        Notarized blockchain: refers to a blockchain that is limited to some key data self certification, disclosure, tamper proof and other functions. It is usually a function attached to the value blockchain, and can also be expanded separately for publicity. Value based blockchain: refers to a bookkeeping ledger that can transfer the ownership of assets. On the value-based blockchain, we need to determine the overall positioning of the target blockchain: is it a universal value transmission blockchain or a blockchain under specific scenarios? If it is a blockchain in a specific scenario, we usually recommend super Ledger as the technical prototype. If it is a more general value blockchain, we recommend the idea of Ethereum.
 
        In the field of cross-border payment, the blockchain can play a good role because there are many point-to-point cross-border institutions with a large number of payment and clearing needs, and they do not want intermediary institutions to participate. Blockchain is a good choice. There is an untrusted P2P network environment in which nodes are peers and there is no absolute arbiter. The behavior between nodes is a game behavior. P2P networks may contain inputs and outputs. When inputs and outputs are included, the blockchain is no longer closed. Do not trust other nodes; To ensure the maximization of their own income; Selfishly acquire but not contribute resources. For the business modeling of the above scenarios, it is necessary to deduce a solution to meet your own needs according to specific business logic and game theory.
 
        Usually, we have different institutions a, B and C, which have asymmetric information exchange needs, that is, a, B and C have partial data respectively, but the three together have full market data. However, as a, I want to know whether B and C have some point data in their own data set, and adjust their purchase strategies according to this result. We have different organizations x, y, Z, which need information feedback. When Z receives Y's service, Z will give y an information feedback, which may be credit evaluation or just response feedback. In short, this feedback needs to be recorded, and X will adjust its purchase strategy according to Z's information feedback results.
 
        When x purchases the service, it will also give y a feedback, and Z will receive the feedback. For case 1, sensitive data and private data will not be disclosed, and even if encrypted, they will not be allowed to be uploaded to the blockchain. Therefore, a data input and output blockchain process is generated, which is uncontrollable by the blockchain. So can it be controlled by using traditional technology? It seems that it is not good. Only hash calculation and homomorphic encryption can meet the requirements of not exposing sensitive data. Generally, we will consider using zero knowledge proof as a solution. However, specific algorithms may need to be built according to specific business logic, combined with simple smart contracts, and generate different outputs according to the query results.
 
        In case 2, the feedback information is easy to tamper and can be swiped. How to ensure that this information feedback is objective, neutral and cannot be tampered with can be combined with the age of blockchain tokens to make the transaction directional to prevent cheating. For the two cases in Section 2, we will conduct modeling next. Apart from the core pain points, we must also have the need for accounting. In essence, every node in any case is both the service side and the customer side. How can we measure how much we have contributed and received? Therefore, on any blockchain platform, there must be a token system, otherwise accounting will be very difficult. In the process of business scenario modeling, we mainly focus on how to achieve Pareto improvement among nodes, rather than making the blockchain service name exist because each node is selfish.
 
        According to the description at the beginning of this article, if it is a blockchain solution for a specific scenario, hyperledger fabric is recommended. Of course, it is also possible to build an Ethereum private chain. They are platforms that provide blockchain business implementation. Business implementation is completed through smart contracts to achieve maximum flexibility and no modification to the underlying. Ethereum is an EVM virtual machine, and the solidity contract language hyperledger is a shim chain code container, and contracts are written in go. The official versions are implemented in go language because they provide third-party programmability. Due to the difficulty, it is inevitable that there are loopholes inside.
 
        Externally, there is a threat of malicious program attacks. Especially when it is a public chain, the threat will be greater. Last month, Ethereum reported the contract solidity language vulnerability. Ethereum only provides smart contract capabilities. It also coincides with his positioning: smart contract and decentralized application platform. There is no underlying or core support for system security or access mechanism. Hyperledger, while absorbing the features of Ethereum smart contract, provides modules such as membership and authentication role management. It is closer to the commercial application scenario. The consensus mechanism is different. Due to different consensus, the transaction volume that can be processed per second is also different. Ethereum has a processing volume of thousands per second.
 
        And hyperledger can achieve a processing capacity of 100000 levels. The technologies adopted are different in the realization ideas. Ethereum is mostly implemented by itself. It looks like a developer's skill. For example, it provides the contract language solidity and implements EVM by itself (this may be a practical need). Consensus algorithm network transport protocol additional contract (optional) in fact, smart contract is not a necessary option in some scenarios. For users, reliable, convenient and real-time is the first requirement. It is also a feasible idea to solidify the "contract" in the blockchain for specific application scenarios. In view of the above two alliance chain implementations, I also want to emphasize that not all services must be blockchain. I have conceived a general umbrella structure,.
 
        For example, bitcoin's side chain technology, the main chain provides basic ledger services, and the side chain provides specific scenario services. Applications on the side chain can be realized by non blockchain, and only need to register the interface. In terms of interaction interface design, it is recommended to use the current common Jason RPC interface in the industry, which is both extensible and friendly. Generally, we divide the interface into two types: open interface and account interface. The open interface refers to the description information of the blockchain itself, which does not require authentication. And the account interface requires account authentication. The following questions are included: has the prototype blockchain met the requirements? For Ethereum, there is basically no need to change the basic ledger, and only need to build smart contracts.
 
        How to base on the bitcoin system may be greatly changed. How to change the basic ledger if the demand is not met? This actually depends on the account model. If utxo mode is used, the focus of change is how to embed the template transaction body. If the balance mode is used, then there is no such problem. It includes the following questions: is the extension layer external to the blockchain or built-in to the blockchain? If data input is included, is desensitization required? How to chain after desensitization?. Developers are no longer facing high availability and high concurrency applications as the main indicators, but are switching to user-oriented terminal program development that focuses on user friendliness and development scalability.
 
        At present, the reserve of human resources for development is insufficient. At present, the relatively mature technology systems include bitcoin and derivative technology system, Ethereum, hyperledger, bitshares, ripple and NXT. The first three projects listed are the most influential blockchain projects. Bitcoin and derivative technologies are mostly developed in C + + language; Ethereum supports most of the mainstream languages. The official language is mainly golang. There are also other branch projects such as the parity wallet of rust language; The super ledger is currently dominated by golang.
 
        According to the current blockchain practitioners in Shanghai, the conservative estimate is about 400-500. According to half of the developers, there are only more than 200. Facing the huge market demand, talents are extremely scarce. Since C + + is only partially required in the financial and game fields, there are not many C + + engineers, especially high-level C + + engineers. As an emerging language, go has a strong development momentum, but the ecology of go is not as big as Java. Blockchain is an interdisciplinary subject that requires experience in various aspects of engineering practice. In practice, we hope that blockchain practitioners can understand technology and financial business at the same time. This requirement is relatively high.
 
        Due to the deviation in understanding of various blockchain technology systems, blockchain technologies and concepts are changing with each passing day, and closed door development may come to a dead end. How to maintain some energy to update the knowledge system and ensure the development progress is a great challenge for developers. As an emerging technology, blockchain covers many aspects such as decentralization, distrust, sharing economy, distributed computing, distributed storage, etc., testing the learning ability and thinking ability of technicians. In the future, blockchain, together with artificial intelligence, will affect all aspects of ordinary people's lives. It is reported that blockchain development is one of the fastest growing industries. With the explosive growth of projects (defi, NFT, Dao) built on the blockchain, the demand for blockchain developers has also risen sharply.
 
        When you have developed on the blockchain or plan to create a free blockchain developer account in alchemy, here is a comprehensive guide to some of the best tools for creating blockchain applications. In order to develop blockchain applications, you need to learn a programming language. These languages allow you to create smart contract code as the back-end function of your application. At present, solidity is the most popular programming language in blockchain development. Solidity is a high-level, object-oriented language, which borrows some elements of other languages, especially C + +. Many developers like to learn about solidity because Ethereum, which is considered to be a de facto blockchain, uses solidity to write smart contracts.
 
        In addition, solidity is Turing complete, allowing you to create complex applications with rich functions. Learning solidity is a good way to start your blockchain development journey. The popularity of solidity means that you can get useful tutorials, guides and documents, which are designed for beginners. It is hard to say that solidity is the only language for creating smart contracts. A popular alternative is Vyper -- a Python based and EVM compatible language. Although Vyper does not have as many functions and popularity as solidity, it can be an ideal choice for developers familiar with Python.
 
        In addition, Vyper's simple architecture reduces software errors and simplifies the audit of smart contracts. Rust is a relatively new programming language and is becoming more and more popular in the blockchain development community. It is a low-level language used to write smart contracts and is highly praised for its memory efficiency, simplicity and reliability. The problem is that rust is not compatible with EVM, so you cannot deploy projects on Ethereum and EVM compatible chains. However, newer chains like Solana, Terra, near, Polkadot and Elrond use rust, so learning this language is still a good investment.
 
        Building a decentralized application (DAPP) from scratch can be a difficult task, especially if you have to handle every tiny detail yourself. Fortunately, you can benefit from a software framework that provides a plug and play infrastructure to easily create dapps. The framework comes with the resources (Libraries and tools) needed to create, test, and deploy code. It is not necessary to code your DAPP from scratch, because you can use off the shelf software packages and add additional functions. In addition, most frameworks are developed and optimized by experienced engineers to make them robust, efficient and versatile. In our list of blockchain development frameworks, the first one is truffle.
 
        Truffle is a javascript based framework for developing, testing and deploying smart contracts. It has always been one of the most commonly used frameworks in the blockchain industry, and for good reasons. Truffle contains the resources needed to create a full-featured DAPP, from the built-in smart contract creation tool to the test blockchain environment. It is also equipped with a library out of the box, which makes it easier to build the front end of your Ethereum DAPP. Hardhat is another framework strongly recommended for smart contract developers. Like truffle, hardhat is a javascript based framework for creating, testing, deploying, and debugging applications on Ethereum.
 
        Hardhat is a comprehensive tool platform that abstracts most low-level and general functions related to blockchain software development. Therefore, you can focus on more important tasks, such as building the core infrastructure for your DAPP. Embark is a full stack development framework that allows you to build the front end and back end of your DAPP at the same time. Although at the bottom of the list, embark is as good as the other frameworks listed in this section. Embark provides resources for DAPP data storage, real-time code testing and smart contract deployment. In addition, you can also get important plug-ins, such as Etherscan, Solc, solium, and more.
 
        The integrated development environment (IDE) integrates core development tools into a graphical user interface (G
 
        
Previous:"Blockchain landing application has n years to go!" "Creating the future" salon issue 19
Next:No more

Related articles:



© 2005-2032 | Blockchain Circle & & All Rights Reserved    Sitemap1 Sitemap2 If there is infringement, please contact us at: