你将学到什么
Smart Contract
Ethereum
Blockchains
Solidity
课程概况
This specialization introduces blockchain, a revolutionary technology that enables peer-to-peer transfer of digital assets without any intermediaries, and is predicted to be just as impactful as the Internet. More specifically, it prepares learners to program on the Ethereum blockchain. The four courses provide learners with (i) an understanding and working knowledge of foundational blockchain concepts, (ii) a skill set for designing and implementing smart contracts, (iii) methods for developing decentralized applications on the blockchain, and (iv) information about the ongoing specific industry-wide blockchain frameworks.
The specialization covers a range of essential topics, from the cryptographic underpinnings of blockchain technology to enabling decentralized applications on a private Ethereum blockchain platform.
It is ideal for programmers and designers involved in developing and implementing blockchain applications, and anyone who is interested in understanding its potential.
包含课程
第 1 门课程
区块链基础
课程概述
This first course of the Blockchain specialization provides a broad overview of the essential concepts of blockchain technology – by initially exploring the Bitcoin protocol followed by the Ethereum protocol – to lay the foundation necessary for developing applications and programming. You will be equipped with the knowledge needed to create nodes on your personal Ethereum blockchain, create accounts, unlock accounts, mine, transact, transfer Ethers, and check balances.
You will learn about the decentralized peer-to-peer network, an immutable distributed ledger and the trust model that defines a blockchain. This course enables you to explain basic components of a blockchain (transaction, block, block header, and the chain) its operations (verification, validation, and consensus model) underlying algorithms, and essentials of trust (hard fork and soft fork). Content includes the hashing and cryptography foundations indispensable to blockchain programming, which is the focus of two subsequent specialization courses, Smart Contracts and Decentralized Applications (Dapps). You will work on a virtual machine image, specifically created for this course, to build an Ethereum test chain and operate on the chain. This hands-on activity will help you understand the workings of a blockchain, its transactions, blocks and mining.
Main concepts are delivered through videos, demos and hands-on exercises.
第 2 门课程
智能合约
课程概述
This second course of the Blockchain specialization will help you design, code, deploy and execute a smart contract – the computational element of the blockchain technology. Smart contracts allow for implementing user-defined operations of arbitrary complexity that are not possible through plain cryptocurrency protocols. They allow users to implement conditions, rules and policies of the domain applications. Smart contracts are a powerful feature that, when properly designed and coded, can result in autonomous, efficient and transparent systems.
You will design and program smart contracts in Solidity language, test and deploy them in the Remix development environment, and invoke them from a simple web interface that Remix provides. This course features best practices for designing solutions with smart contracts using Solidity and Remix IDE.
Main concepts are delivered through videos, demos and hands-on exercises.
第 3 门课程
去中心化应用 (Dapps)
课程概述
This third course of the Blockchain specialization prepares you to design and develop end-to-end decentralized applications (Dapps) – which provide anyone with access to the blockchain’s features and services. You will use Truffle IDE, smart contracts, a simple web client and a MetaMask client. You will learn about the architecture of a Dapp: the front-end client interface, backed by the blockchain and smart contracts. The course covers the basic design of a Dapp, Truffle development process and commands (init, develop, test and migrate), test-driven development of Dapp, Dapp application models and emerging standards that are essential for predictable Dapp behavior.
Main concepts are delivered through videos, demos and hands-on exercises.
第 4 门课程
区块链平台
课程概述
This fourth course of the Blockchain specialization provides learners with an understanding of the broader blockchain ecosystem. Learners are introduced to other blockchain platforms, details of two decentralized application use cases, and challenges such as privacy and scalability. They are prepared to discuss permissioned blockchain architectures of Hyperledger and Microsoft Azure's blockchain as a service model and analyze the Augur and Grid+ decentralized application platforms. Course material includes emerging alternative decentralization models such as IPFS and Hashgraph, challenges in broader blockchain adoption, and continuous improvement solutions.
预备知识
Knowledge of at least one modern, high-level programming language is required.
常见问题
退款政策是如何规定的?
您可以在付款后的 14 天内或在课程或专项课程开课后的 14 天内(以较晚者为准)申请退款。获得课程证书后,您便无法再退款;即使您在 14 天内完成了课程,也是如此。
请阅读完整的退款政策。
我可以只注册一门课程吗?我对整个专项课程不感兴趣。
要注册单门课程,请在目录中搜索相应的课程标题。
当当您订阅属于专项课程的课程时,您将自动订阅整个专项课程。如果您仅对单门课程感兴趣,您将需要在完成本课程后取消您的订阅,以停止定期缴纳每月费用。
可以申请助学金吗?
是的,Coursera 可以为无法承担费用的学生提供助学金。通过点击左侧“注册”按钮下的“助学金”链接可以申请助学金。您可以根据屏幕提示完成申请,申请获批后会收到通知。您需要针对专项课程中的每一门课程完成上述步骤,包括毕业项目。了解更多。
How long does it take to complete the Specialization?
Time to completion can vary based on your schedule, but learners can expect to complete the Specialization in 4 to 6 months.
What background knowledge is necessary?
Knowledge of at least one modern, high-level programming language is required. Learners should have an understanding of object-oriented design and programming, as well as the command line interface of a Linux-like system. This object-oriented knowledge is necessary for understanding and designing a smart contract. Basic working knowledge of web applications, HTML and javascript are necessary for developing Dapps. Also required is a laptop or a desktop of this specification: 64 bit machine with minimum 4Gb ram, 10Gb free space and Windows 7 or above , or ubuntu 16.04 or Mac os x 10.0+.
Do I need to take the courses in a specific order?
It is important that learners take the courses in order, since the concepts and projects are developed based on the previous course, as described below.
· The first course focuses on essential concepts and does not require programming.
· The second course explores the smart contract, gradually building the skills to program smart contracts in Solidity and test them using the Remix IDE. It features a programming project.
· The third course drills deeper into developing end-to-end applications for the blockchain. It features interaction of a blockchain ecosystem with traditional web applications. Learners will develop applications and a project in the Truffle environment.
· The fourth course introduces other blockchain platforms and business applications. Learners will compose a white paper that compares industry blockchain platforms.
Will I earn university credit for completing the Specialization?
No.
What will I be able to do upon completing the Specialization?
On completion of this specialization, a learner will recognize foundational concepts of blockchain, and apply these program concepts on the blockchain, including:
· Algorithms and techniques enabling trust in a decentralized peer-to-peer network
· Transactions, account, block and the structure of a blockchain
· The distributed immutable ledger of transactions
· Smart contracts, a core idea and computational model of blockchain that enables automation, autonomy, scalability and transparency
· The blockchain application stack and orchestrating blockchain Dapp solutions for business use cases
· Ongoing industry-wide blockchain efforts, such as Hyperledger (supply chain) and R3 Corda (financial)
More specifically, on successful completion of the specialization, a learner will able to
· Have an understanding and working knowledge of the emerging blockchain technology
· Design and program smart contracts and decentralized application
· Evaluate the applicability of the blockchain technology to their current business problems
· Think of innovative application models leveraging the blockchain technology
· Contribute to protocol improvement of the blockchain