Position: Home page » Blockchain » Functional programming blockchain

Functional programming blockchain

Publish: 2021-04-23 14:40:39
1. Do you want to learn blockchain development technology or just want to know what blockchain is? If it is the former, you can look at the code of other blockchain projects and learn about it first. If it is the latter, we can pay attention to some good blockchain we media. Blockchain is an emerging instry. There is no ready-made training course. It depends on self exploration and understanding.
2.

Blockchain is a new application mode of distributed data storage, point-to-point transmission, consensus mechanism, encryption algorithm and other computer technologies. Blockchain is an important concept of bitcoin. It is essentially a decentralized database. At the same time, as the underlying technology of bitcoin, it is a series of data blocks generated by using cryptographic methods. Each data block contains a batch of information about bitcoin network transactions, Used to verify the validity of its information (anti-counterfeiting) and generate the next block

if such technology wants to be put into application, the biggest problem is the "Impossible Triangle problem"

that is, scalability, decentralization and security cannot be achieved at the same time, and only two of them can be achieved

most of the existing public chain projects in the market are difficult to put into use on a large scale

3.

Analysis on the expenditure scale and application prospect of China's blockchain instry in 2018 will be close to US $300 million in 2019, so as to solve the short board problem and promote economic development

blockchain technology is expected to be widely used in the economic field

blockchain technology has strong practical significance for cultivating new momentum of economic growth, building an honest society, improving the level of management technology and alleviating the financing difficulties of small and medium-sized enterprises, It is expected to be widely used in the economic field. At present, the application of blockchain technology is still in the early stage of development, facing many challenges. We should actively promote the application of blockchain in many economic and social fields, scenes and environments, create a good environment for instrial development, improve the quality of development, strengthen the research and development of blockchain core technology, professional application demonstration, and strengthen standard manufacturing Personnel training and the construction of public service platform

in 2019, the expenditure scale of China's blockchain market will be close to US $300 million

according to the statistical data of in depth analysis report on business model innovation and investment opportunities of China's blockchain instry published by prospective instry research institute , as of 2017, the expenditure scale of China's blockchain market is only US $83 million. In 2018, the expenditure scale of China's blockchain market will reach US $160 million. It is predicted that the expenditure scale of China's blockchain market will be close to US $300 million in 2019. At this stage, the overall market scale of blockchain is small, because most blockchain projects in the market are in the trial stage, with little investment. On the other hand, many enterprises have realized the potential of blockchain and plan to increase the budget in the future. Affected by this, China's blockchain market will usher in rapid growth. It is estimated that the market expenditure will reach US $1.95 billion by 2023, and the average annual compound growth rate will be 60.51% from 2019 to 2023

Statistics and forecast of China's blockchain market expenditure scale from 2017 to 2023. At present, blockchain technology is not mature in system stability, application security, business model, etc., which can not meet the requirements of "high efficiency and low energy", "decentralization" and "security" at the same time. First, performance. The transaction throughput that can be carried out on the blockchain is not high, and the current block capacity is very small, which leads to network congestion, and it is difficult to meet the needs of high-frequency business. Many projects are also starting to optimize, but there is still a certain distance from the transaction throughput of real scenes such as banks and stock exchanges. Second, consensus mechanism. In terms of energy consumption, consensus algorithms such as workload proof consume a lot of energy and cost, which makes blockchain waste a lot of network computing power and pairing power; In terms of types, there are too few types of blockchain consensus mechanisms at present. In the future diversified business scenarios, more abundant consensus mechanisms are necessary to adapt. Third, security. Privacy protection, harmful information on the chain, smart contract vulnerability, consensus mechanism and private key protection, computing power attack, cryptography algorithm security and other issues make the blockchain face a severe situation of platform security and application security. Fourth, the database problem. Different from traditional databases, blockchain applications require a lot of write operations, hash calculation and verification operations. The database system for blockchain is still a difficult point to break through

2. Unclear application scenarios

currently, the blockchain project is still in the exploration stage, and no specific landing scenarios can be found. At present, the more promising fields are finance, sharing economy, Internet of things, public services, etc., but from the perspective of the existing blockchain technology maturity, there are still many problems in the application of blockchain, and there is still a gap from the actual use. First, the immaturity of blockchain technology restricts the implementation of commercial applications. At present, although there are many kinds of blockchain core technologies such as privacy protection algorithm and consensus mechanism, they generally do not have commercial availability. Second, the application mode of blockchain is still in exploration, and the "irreplaceable" advantage of blockchain has not been reflected. Blockchain itself represents a consensus system, so we should build a consensus system in line with the corresponding business scenarios from a higher level, rather than just "business + blockchain". There are many users in China, and the business scenario is complex. Moreover, any commercial proct will involve a very large flow and population. The current blockchain technology can not meet the demand

3, lack of professional talents

blockchain technology is a multi-disciplinary and interdisciplinary technology, which mainly involves operating system, network communication, cryptography, mathematics, finance, proction and so on. However, at present, there are still deficiencies in interdisciplinary and fields in China, and the supply of talents in related fields is seriously insufficient. On the one hand, there is a large gap of R & D technical talents. Blockchain technology research and development mainly focuses on go, JavaScript, C and C + programming languages, and new smart contracts use Haskell, Ocaml, rhoang and other new functional programming languages. In China's talent market, there is a big gap for technical talents with senior R & D experience in relevant languages. On the other hand, there is a lack of bottom design talents. Different from R & D technical talents, blockchain bottom system architecture designers need to master a number of interdisciplinary professional skills, not only to deeply understand the block chain bottom design principle, but also to have the system architecture design experience, but also to master the business logic of specific application scenarios. Although some colleges and universities have launched interdisciplinary ecation and blockchain special skills discipline setting, professional talents are still very scarce

analysis of favorable factors for the development of China's blockchain. In January 2017, the Ministry of instry and information technology issued the development plan of software and information technology service instry (2016-2020), which proposed that the innovation in blockchain and other fields should reach the international advanced level. In August 2017, the State Council issued the guidance on further expanding and upgrading information consumption and continuously releasing the potential of domestic demand, proposing to carry out the pilot application of new technologies such as blockchain and artificial intelligence. In October 2017, the State Council issued the guidance on actively promoting the innovation and application of supply chain, which proposed to study the use of blockchain, artificial intelligence and other emerging technologies to establish a credit evaluation mechanism based on supply chain

in March 2018, the Ministry of instry and information technology (MIIT) issued the key points for standardization of informatization and software service instry in 2018, proposing to promote the establishment of the national informatization and instrialization Integration Management Standardization Technical Committee, and the national blockchain and Distributed Accounting Technology Standardization Committee. In June 2018, the Ministry of instry and information technology issued the instrial Internet development action plan (2018-2020) to encourage the application and research of emerging cutting-edge technologies such as edge computing, deep learning and blockchain in the instrial Internet

since the blockchain was listed in the 13th five year plan for national informatization for the first time in 2016, the national government has paid more and more attention to the blockchain. 24 provinces and cities or regions, including Beijing, Shanghai, Guangdong, Hebei, Jiangsu, Shandong, Guizhou, Gansu and Hainan, have launched dividend policies to carry out the layout of the blockchain instry chain, Actively explore instry applications based on blockchain

At present, China's blockchain technology continues to innovate, and the blockchain instry graally takes shape, and has begun to be applied in supply chain finance, credit reference, proct traceability, right trading, digital identity, electronic evidence and other fields, which is expected to promote China's economic system to achieve technological change, organizational change and efficiency change, To make important contributions to the construction of a modern economic system. With the continuous influx of entrepreneurs and capital, the number of enterprises is increasing rapidly. The application of blockchain will accelerate the landing, boost the high-quality development of traditional instries, accelerate the instrial transformation and upgrading, use blockchain technology to "rece costs" and "improve efficiency" for the real economy, and boost the standardized development of traditional instries. In addition, blockchain technology is becoming a new business form and a new driving force for economic development. Blockchain technology is promoting a new round of business model reform and becoming an important support for building a social system of integrity

In the past, the circulation of physical banknotes was difficult to trace, but with the application of blockchain technology, the flow of all digital assets will have a "chain" to check. For example, in the financial field, blockchain is expected to solve the pain points and difficulties in the payment field, rece the complexity of transactions, improve the end-to-end speed of transactions, rece the communication cost in the transaction process, and improve the transparency and non tamperability of transaction records. The cost of reconciliation, clearing and settlement among financial institutions, especially cross-border financial institutions, has always been very high, and there are complex manual processes. The application of blockchain technology can help rece the cost of reconciliation and dispute resolution among financial institutions, and significantly improve the processing speed and efficiency of payment business, It also makes small cross-border payments possible. In addition, the application of blockchain will also extend to many fields, such as health care, ecation, charity, social management and so on. The market prospect is very broad

4. This is determined by your programming level. At present, the level of domestic programmers is basically a pyramid structure, and most of them are middle-level programmers. From this point of view, it is basically impossible for most people to learn functional programming. One of the most important reasons for choosing go is that a middle-level programmer can write very good go code. The main reason is that go language is very simple, features are very few, and the official class library is very rich. Most programmers can easily start to develop it. Chain33 blockchain developer platform, a well-known domestic open source project, is completely completed by go. There are many mature blockchain technologies in China, such as micro three cloud, etc., which will not be repeated here.
5. Go language + blockchain training course:
from the characteristics of the language itself, go is a very efficient language, which highly supports concurrency. Go language itself pays more attention to distributed systems, and concurrency processing is relatively good, such as advertising and search, which are high concurrency servers
go language advantages:
excellent performance, can be directly compiled into machine code, does not rely on other libraries, go is extremely fast. Its performance is similar to Java or C + +
concurrency is supported at the language level, which is the biggest feature of go. It is born to support concurrency, and go is the concurrency supported in gene, which can make full use of multi-core and make it easy to use concurrency
the built-in runtime supports garbage collection, which is one of the features of dynamic language. Although GC is not perfect at present, it is enough to cope with most of the situations we can encounter, especially GC after go1.1
it's easy to learn. The authors of go language all have the gene of C, so go naturally has the gene of C. There are 25 go keywords, but the expressive ability is very strong. It almost supports most of the features you've seen in other languages: inheritance, overloading, object, etc
rich standard libraries, go has built a large number of libraries, especially the network library, which is also my favorite part< As like as two peas, br / > built-in powerful tools, Go language is built with many tools chain, the best should be gofmt tools, automatic formatting code, make team review become so simple, code format is exactly the same, it is very difficult to think differently.
cross platform compilation and fast compilation. Compared with the sluggish compilation speed of Java and C + +, the fast compilation time of go is a major efficiency advantage
disadvantages of go language:
package management: package management of go language is absolutely not perfect. By default, it has no way to make a specific version of the dependency library, nor can it create replicable builds. In contrast, python, node and Ruby all have better package management systems. However, with the right tools, the package management of go language can also perform well
lack of development framework: go language does not have a major framework, such as Ruby's rails framework, Python's Django framework or PHP's laravel. This is a heated discussion in the go language community, because many people think that we should not start with using frameworks. This is true in many cases, but if you just want to build a simple crud API, it's much easier to use Django / djrf, rails laravel, or Phoenix
exception handling: go language can help developers deal with compilation errors by simply returning errors (or call stack) through functions and expected calling codes. Although this method is effective, it is easy to lose the scope of the error, so it is difficult to provide meaningful error information to users. Error package can solve this problem by allowing us to add context and stack trace to return error
another problem is that we may forget to handle errors. Static analysis tools such as errcheck and megacheck can avoid these errors. Although these solutions are very effective, they may not be the right way.
6. Blockchain is an important concept of bitcoin. It is essentially a decentralized database. At the same time, as the underlying technology of bitcoin, it is a series of data blocks generated by using cryptographic methods. Each data block contains a batch of information about bitcoin network transactions, Used to verify the validity of its information (anti-counterfeiting) and generate the next block.
7. In the future, blockchain will cover many instries. At present, digital cryptocurrency is more popular. If you are really optimistic about the prospect of blockchain instry, it's better to start investing in bitcoin for a long time now, open an account in okex and make long-term investment. Don't care about short-term fluctuations. You may be the winner in life in a few years.
8. Reservoir blockchain is a mode, and bitcoin is its main confirmation proct. The projects in the reservoir platform are all real blockchain projects, which are relatively reliable.
Hot content
Inn digger Publish: 2021-05-29 20:04:36 Views: 341
Purchase of virtual currency in trust contract dispute Publish: 2021-05-29 20:04:33 Views: 942
Blockchain trust machine Publish: 2021-05-29 20:04:26 Views: 720
Brief introduction of ant mine Publish: 2021-05-29 20:04:25 Views: 848
Will digital currency open in November Publish: 2021-05-29 19:56:16 Views: 861
Global digital currency asset exchange Publish: 2021-05-29 19:54:29 Views: 603
Mining chip machine S11 Publish: 2021-05-29 19:54:26 Views: 945
Ethereum algorithm Sha3 Publish: 2021-05-29 19:52:40 Views: 643
Talking about blockchain is not reliable Publish: 2021-05-29 19:52:26 Views: 754
Mining machine node query Publish: 2021-05-29 19:36:37 Views: 750