Last Update: Feb 25, 2024

Learn Corda blockchain development by examples

  • Free

About Course

Corda is a Distributed Ledger Technology to be used by businesses, such as financial institutions, to keep a shared ledger of transactions and thus removing the need for the involved parties to constantly check that each of their books are in line after interacting with each other. Corda is designed to removes the need for all parties on the Corda network to know about each and every transaction, as only those involved are interested in them. Here is an example that shows how Coda works:

When a business or financial institution, a bank for this example, transfers money from a client’s account to the receiver’s account in another bank both must check that what was sent was valid, that the funds from the client have been sent and finally that they were received correctly. Ensuring that the funds have decreased in one account and increased in the other requires multiple checks from both sides of the transaction as they need to be 100% sure that money hasn’t magically disappeared or created out of thin air. Furthermore, a number of these checks are done manually, requiring even more time and effort to ensure consistency.

Learning Objectives

Intro to Corda

  • Understand the overall architecture, key concepts and components of Corda

Getting Started

  • Learn how to set up your development environment for running and writing CorDapps


  • Understand how to model shared facts and agreements on the ledger

Smart Contract development in Corda

  • Use test-driven development to create smart contracts controlling the evolution of the ledger


  • Learn about the transaction lifecycle, and how transactions are used to propose ledger updates


  • Use our flow testing framework to develop flows allowing Corda users to automate common business logic

Corda Node

  • Learn how the node is designed, what it can do, and what it can’t. Learn what services/APIs the node offers

Corda Network

  • Understand how a Corda network is structured and how data flows between nodes on the network

Other topics

  • Review of Java programming and Kotlin and IntelliJ
  • Review of peer to peer networks
  • Review of Notaries and consensus
  • Review of Coda tools such as Corda Network Builder, Network Bootstrapper, DemoBench, and Node Explorer

Topics and Subtopics

The below is the outline for this course

1- Coda for blockchain development

  • What is Coda
  • What is a distributed ledger
  • How Corda is different from Ethereum
  • Corda versus Hyperledger

2- Review of Java programming as well as Kotlin and IntelliJ

  • Review Java programming language
  • Setup Kotlin development environment
  • Setup IntelliJ development environment

3- Review of Corda key concepts

  • The Network
  • The ledger
  • States
  • Transactions
  • Contracts
  • Flows
  • Consensus
  • Notaries
  • Vault
  • Time-windows
  • Oracles
  • Nodes
  • Transaction tear-offs
  • Trade-offs
  • Deterministic JVM

4- The peer to peer network

  • Network overview
  • Identity and the permissioning service
  • The network map
  • Message delivery
  • Serialization, sessioning, deduplication and signing

5- Run and write Corda DApps

  • What is a CorDapp?
  • Getting set up for CorDapp development
  • Running the example CorDapp
  • CorDapp samples
  • Structuring a CorDapp
  • Building and installing a CorDapp
  • Building CorDapps against a non-release branch
  • Debugging a CorDapp
  • Versioning

6- Notaries and consensus

  • Comparison to Nakamoto block chains
  • Algorithmic agility
  • Validating and non-validating notaries
  • Merging networks
  • Guaranteed data distribution

7- Corda Contracts and Transaction Flow

  • Writing a contract
  • Writing a contract test
  • Upgrading contracts
  • Integration testing
  • Building transactions
  • Writing flows
  • Writing flow tests
  • Writing oracle services

8- Review of essential Corda tools

  • Corda Network Builder
  • Network Bootstrapper
  • DemoBench
  • Node Explorer


Good knowledge of Java programming as well as basic knowledge of Linux commands is required.

If you are not familiar with blockchain technology, taking Intro to Blockchain Technology course is highly recommended.

Related Courses

Complete Training Bundle

If you are serious about becoming a pro blockchain specialist, you should enroll in our Complete Blockchain Development Training. This bundle covers all essential and practical topics related to blockchain design and development. For $290 monthly subscription, you can have access to 300+ hours of hands-on project-based training covering all courses related to blockchain technology like Hyperledger, Ethereum, Solidity, Blockchain Security, Corda R3 and more. Click here to learn more.

Private Tutoring Classes

To take skills you learn from this course to the next level, taking the following tutoring classes are highly recommended. It is also a great opportunity to discuss your questions and problems related to this course with an experienced instructor:

What Is Next?

After finishing this course, you can enroll in any of following classes:

Recommended Free Courses

If you are new to the IT or programming, we suggest the following free courses:

Show More

What Will You Learn?

  • Learn new things
  • Revamp your career
  • Target IT jobs
  • Sharpen your skills
Free access this course


  • A laptop or PC
  • Good Internet
  • Routine Study
  • Regular Join Class