Vous êtes sur la page 1sur 18

BLOCK CHAIN ONLINE TRAINING

OVERVIEW
This course will impart an overall outline of the structure and mechanism of
Bitcoin, Ethereum, Hyperledger and Multichain Blockchain platforms. You will
also learn how to set up your own private Blockchain, and deploy smart
contracts on Ethereum.

WHO SHOULD TAKE THIS COURSE?


There is a lot of excitement globally on the opportunities that bitcoin and it's
underlying technology, the blockchain, offers, for financial and non-financial
institutions as well as for individuals like :
 Developers
 Technologists interested in learning Ethereum, Hyperledger, and
Blockchain
 Architects wanting to expand their skills to Blockchain technology
 Experimenters curious to learn how Blockchain technology can change
the way we do business
 Entrepreneurs with technology background interested in realizing their
business idea on the Blockchain
 Anyone interested in ERC20 Tokens & ICOs

WHAT ARE THE PRE-REQUISITES FOR THIS


BLOCKCHAIN TRAINING COURSE?
Learners who want to take up Glory IT Technologies course should be
prepared with the following :
 Fundamentals of blockchain
 Prior Coding knowledge
 You have developed a couple of software applications, backend,
frontend or both
 Basic Knowledge of Javascript, HTML, CSS and NPM

BlockChain Course Content

01 - BLOCKCHAIN
 What is Blockchain
 Blockchain Technology Mechanisms & Networks
 Blockchain Origins
 Blockchain Objectives
 Blockchain Users And Adoption
 Blockchain Challenges
 Transactions And Blocks
 P2P Systems
 Keys As Identity
 Digital Signatures
 Hashes As Addresses
 Hash Pointers And Data Structures
 Blockchain Transactions
 Blockchain Block Structure
 Mining Explained

02 - BITCOIN
 What is Bitcoin
 The Bitcoin Network
 The Bitcoin Minning Process
 Mining Developments
 Bitcoin Wallets
 Decentralization And Hard Forks
 Alternative Blockchains/Altchains
 Ethereum Consensus Mechanisms
 How Smart Contracts Work
 Difference Between Private Consortium And Public Networks
 Ethereum Virtual Machine (EVM)
 Merkle Tree
 Double-Spend Problem
 New Developments In Blockchain
 Ethereum’s Ecosystem And Dapps
 Blockchain And Digital Currency
 Transactional Blocks
 Impact Of Blockchain Technology On Cryptocurrency
 Cryprography
03 - ETHEREUM
 What is Ethereum?
 Introduction
 A Short History Lesson
 Interfacing with Ethereum Networks
 Metamask Setup
 Ethereum Accounts
 Receiving Ether
 What's a Transaction?
 Smart Contracts
 Our First Contract
 Contract Structure
 Function Declarations
 Testing with Remix
 Redeploying Contracts
 Behind the Scenes of Deployment
 More on Running Functions Than You Want to Know
 Wei vs Ether
 Gas and Transactions
 Mnemonic Phrases
 Getting More Ether

04 - SOLIDITY PROGRAMMING FOR ETHEREUM


 Solidity - Language of Smart Contracts
 Installing Solidity & Ethereum Wallet
 Basics of Solidity by Example: Subcoin Smart Contract
 Layout of a Solidity Source File & Structure of Smart Contracts
 General Value Types (Int, Real, String, Bytes, Arrays, Mapping, Enum,
address)
 Ether Units, Time Units

05 - ETHEREUM CODING FOR BLOCKCHAIN


ENVIRONMENT
 Globally Available Variables & Functions
 Operators: Arithmetic, Logical & Bitwise Operators
 Control Structure (if-else, for, while, Do-While)
 Scoping and Declarations
 Input Parameters and Output Parameters
 Function Calls & Return Types
 Function Modifiers
 Fallback Function
 Abstract Contract
 Creating Contracts via "new" Operator
 Inheriting Smart Contracts
 Importing Smart Contracts & Compiling Contracts
 Events & Logging
 Exceptions
 Don't Skip! Node JS Versioning
06 - CONTRACT DEPLOYMENT FOR BLOCKCHAIN
ENVIRONMENT
 Boilerplate Requirements
 Project File Walkthrough
 Syntax Highlighters
 Compiling Solidity
 The Compile Script
 Testing Architecture
 Running Windows?
 Installing Modules
 Web3 Versioning
 Web3 Providers
 Testing with Mocha
 Mocha Structure
 Fetching Accounts from Ganache
 Refactor to Async/Await
 Deployment with Web3
 Deployed Inbox Overview
 Asserting Deployment
 Web3 Version Fix
 Verifying the Initial Message
 Testing Message Updates
 Deployment with Infura
 Infura Signup
 Wallet Provider Setup
 Deployment to Rinkeby
 Observing Deployment on Etherscan
 Deployed Contracts in Remix
 Complete Example: Crowd Funding Smart Contract
 Complete Example: Voting Ballot Smart Contract

07 - ADVANCED SMART CONTRACTS


 The Lottery Contract
 Lottery Design
 Basic Solidity Types
 Starting the Lottery Contract
 The Message Global Variable
 Overview of Arrays
 Overview of Mappings and Structs
 Big Solidity Gotcha
 Entering the Lottery
 Validation with Require Statements
 The Remix Debugger
 Psuedo Random Number Generator
 Selecting a Winner
 Sending Ether from Contracts
 Resetting Contract State
 Requiring Managers
 Function Modifiers
 Returning Players Array
 Contract Review

08 - ETHEREUM TEST ENVIONMENT SETUP


 Test Project Updates
 Test Helper Review
 Asserting Deployment
 Entering the Lottery
 Asserting Multiple Players
 Try-Catch Assertions
 Testing Function Modifiers
 End to End Test
 Building Interactive Front-Ends

09 - ETHEREUM APPLICATION ARCHITECTURE


 Application Overview
 Getting Started with Create-React-App
 Multiple Web3 Instances
 Web3 Setup
 Deploying the Lottery Contract
 Local Contract Instances
 Rendering Contract Data
 Instance Properties
 Accessing More Properties
 The 'Enter' Form
 Form Setup
 Entering the Lottery
 Picking a Winner
 Project Review

10 - REAL WORLD ETHEREUM PROJECTS


 Solving Real Problems with Contracts
 Fixing Kickstarter's Issues
 Campaign Contract Design
 Campaign Constructor
 Contributing to the Campaign
 A Quick Test
 The Request Struct
 More on Function Modifiers
 Creating Struct Instances
 Instance Creation Syntax
 Storage and Memory
 More on Storage vs Memory
 Voting System Requirements
 The Wrong Voting System
 Issues with Arrays
 Mappings vs Arrays
 Basics of Mappings
 Refactoring to Mappings
 Refactoring Request Stucts
 More on Struct Initialization
 Approving a Request
 Testing Request Approvals
 Finalizing a Request
 Last Remix Test
 Thinking about Deployment
 Solution to Deployment
 Adding a Campaign Factory
 Testing the Factory

11 - CREATING PROJECT INFRASTRUCTURE FOR


ETHEREUM
 Project Setup
 Directory Structure
 A Better Compile Script
 Single Run Compilation
 More on Compile
 Test File Setup
 Creating Campaign Instances
 Testing Warmup
 Accessing Mappings
 Requiring Minimum Contributinos
 Array Getters
 One End to End Test
 Deployment
 Refactoring Deployment
 Advanced Multi-Page Front-Ends
 App Mockups
 CRA vs Next
 Next's Pages Architecture
 Basics of Next Routing
 Root Routes
 CampaignFactory Instance
 Getting a Test Campaign
 Fetching Deployed Campaigns
 Why Next.js?
 Server vs Client Web3 Instances
 GetInitialProps Function
 Semantic UI React
 Card Group Setup
 Rendering Card Groups
 Adding CSS
 Adding a Button
 The Need for a Layout
 The Layout Component
 Assembling a Header
 Constraining Content Width
 Two Column Layout
 Nested Routing
 Final CSS Fix
 Form Creation
 Input Change Handlers
 Form Submittal
 Testing Submittal
 Form Error Handling
 Button Spinners
 Routing Issues
 Next Routes Setup
 Automatic Navigation
 Header Navigation
 Routing to Campaigns
 Restarting the Server
 Route Mappings

12 - ETHEREUM CAMPAIGNS
 Planning CampaignShow
 Redeploying CampaignFactory
 CampaignShow's GetInitialProps
 Accessing a Campaign
 Summary Translation Layer
 Custom Card Groups
 One Card Per Property
 The Contribute Form
 Grid Layouts
 Form State
 Communicating the Campaign Address
 Making a Contribution
 Refreshing Contract Data
 Spinners and Error Handlers
 Listing Requests
 Grids vs Columns
 More Routing!
 Request Creation Form
 Form Polish
 Creating a Request
 Requests One by One
 Fancy Javascript
 Small Typo!
 Rendering a Table
 Request Row Component
 Request Row Content
 Approvers Count Cell
 Approving a Request
 Finalizing Requests
 Testing Finalization
 Row Status Styling
 Finishing Requests Index

13 - INTRODUCTION TO HYPERLEDGER
 What is Hyperledger?
 Distributed Ledger Technology & its Challenges
 Hyperledger & Distributed Ledger Technology

14 - INTRODUCTION TO HYPERLEDGER FABRIC


USING COMPOSER
 Hyperledger Fabric & Composer Concepts
 Hyperledger Fabric : A DLT for Business Applications
 Hyperledger Fabric : DLT for Business
 Assets, Chaincode & Ledger
 Assets, Chaincode and Transactions
 Permissioned Network, Members & Membership Service Provider
 Permissioned Network, Member & Membership Services
 Nodes and Channels
 Hyperledger Fabric Composer Overview
 Pre-Requisites for Fabric development
 Frequently Asked Questions | Common Issues
 Development Machine Specifications & IDE
 Composer Dev Tools Installation
 Exercise: Validate the Composer Development Environment
 Install Docker or Docker Toolkit
 Install CURL and Cygwin (Windows only)

15 - SETTING UP THE HYPERLEDGER FABRIC


DEVELOPER ENVIRONMENT TOOLS
 Linux/Ubuntu & AWS: Setup of Fabric Development on Local & Cloud
VM
 Mac OS: Setup of Fabric Development Environment
 Windows : Fabric development environment setup
 How to use the Dev Tools
 Development Environment Topology
 Fabric Under the Hood (Concepts & Terminology)
 Dev Environment Walkthrough: Peer & CouchDB setup
 Ledger Implementation
 Peers Nodes : Anchors and Endorsers
 Anchor Peers & Endorsing Peers
 Clients Node: Endorsement Policies
 Client Peer & Endorsing Policies
 Orderer Nodes
 Membership Service Provider & Certification Authority
 Dev Environment Walkthrough: Orderer and CA Server
 Chaincode Development

16 - HYPERLEDGER COMPOSER TOOLS FOR


APPLICATION DEVELOPMENT
 Using Composer Tools for Application Development & Administration
 Fabric Composer Playground
 Composer Playground
 Yeoman Hyperledger Generators
 Yo Generators
 Participant Roles and Business Network Cards
 Composer CLI Tool - Deploying a Network Application
 Composer CLI Tool - Network Application Management
 Exercise: Create & Deploy Network Application
 REST Server Overview
 REST Server Security
 Skeleton Angular Application using Yo
 Composer SDK Overview
 Business Network Application Modelling
 Case Study: ACME Airlines
 Modeling Language Files | Namespace
 Defining the Resources
 Support for Object Orientation
 Modeling Arrays
 Registries & Relationship between Resources
 Arrays, Registries & Relationships
 Adding the field Validations
 Field validations
 Resource Registries & Identities +Exercise
 Modeling the Transactions
 Exercise: Fix the code for generating the FlightId
 Exercise: Add a set of aircraft queries
 Managing identities for Network Applications
 Access Control Language (Part 1 of 2) Simple Rules
 Exercise: Simple Rule for ACMENetworkAdmin
 Access Control Language (Part 2 of 2) Conditional Rules
 Exercise: Conditional Rule for ACMEPersonnel
 Composer SDK / API : Coding the Client Apps
 Business Network Card Management
 Card Storage API
 Admin Connection Class
 Business Network Connection Class
 Submitting a Transaction
 Registries
 Resources
 Querying the Registries
 Subscribing to Events
 Write a utility to create | delete test data for ACME Airline Model
 Composer SDK / API : Coding the Transaction Processors
 Embedded Runtime for Testing
 Crash course in Mocha and Chai
 Writing Unit Test Cases for Network Applications
 Runtime API for Transaction Processing Functions
 Exercise: Define the Aircraft Assignment Transaction
 Query invocation in Transaction Processing Functions
 Implementing Programmatic Access Control
 Emitting events and Integrating with external systems

17 - FRONT END APPLICATION DEVELOPMENT


USING HYPERLEDGER COMPOSER
 Developing Front End Applications for Network Applications
 Application Design Patterns
 Application Architecture Patterns
 Securing the REST server with Authentication Strategy
 Walkthrough: Applying OAuth2.0 Authentication Strategy to REST
Server
 Working of Multi User Enabled REST Server
 Walkthrough - REST Server Multi User mode
 Create the Design Blueprint for the Fabric Application UI

We stay with you until you get the results you want. If you really interested,
please let me know. We will arrange the Demo Session, Feel Free to call us any
time

Thanks & Regards


Srinivas
Glory IT Technologies
Email: Info@gloryittechnologies.com
Phone : +91-9032813456/ +91-9160177789
Skype ID :gloryittechnologies
Website: www.gloryittechnologies.com

Vous aimerez peut-être aussi