Ethereum Blockchain Development Course – קורס בלוקצ’יין אתריום
The Ethereum Development course is an exciting and comprehensive program designed to provide students with in-depth knowledge and hands-on experience in developing decentralized applications (DApps) on the Ethereum blockchain platform.
This course is ideal for computer science, software engineering, and blockchain enthusiasts with programming experience (mainly OOP) who are interested in understanding the fundamentals of Ethereum and leveraging its potential to build decentralized trustless systems.
Ethereum Blockchain Development Course Objectives:
- Gain a strong understanding of Ethereum’s fundamentals, cryptography concepts, wallet standards, smart contract development using the Solidity programming language, best practices for writing secure smart contracts and more.
- Delve into Ethereum token standards, focusing on ERC20 and ERC721, with insights into token creation, transferability, and interoperability.
- Learn advanced Solidity concepts and the usage of third-party libraries, including OpenZeppelin, for efficient and secure smart contract development.
- By the end of this course, you will gain in-depth skills and knowledge and will be able to develop secure and efficient decentralized applications and smart contracts on the Ethereum platform.
קורס פיתוח אתריום בלוקצ’יין
אנחנו שמחים לפתוח את קורס פיתוח אתריום בלוקצ’יין, קורס ייחודי המציע הזדמנות מרתקת לרכוש מיומנויות רלוונטיות וניסיון מעשי בפיתוח יישומים מבוססי דיגיטל על פלטפורמת אתריום. הקורס מיועד בעיקר למתכנתים ולמפתחים עם רקע בתכנות (בעיקר אובייקטים) המעוניינים להבין את היסודות של אתריום ולהפיק את המרב מהפוטנציאל העצום שלו לבניית מערכות ומבוטחות מבוזרות.
מטרות קורס בלוקצ’יין אתריום:
- שליטה ביסודות אתריום, מושגי הקריפטוגרפיה, הארנק הדיגיטלי, ופיתוח חוזים חכמים בשימוש בשפת התכנות Solidity.
- סקירה מעמיקה של הטוקנים של אתריום, עם דגש על ERC20 ו-ERC721.
- לימוד מתקדם של עקרונות Solidity ושימוש בספריות צד שלישי, כולל OpenZeppelin, לפיתוח חוזים חכמים ביעילות ובצורה מאובטחת
This course is ideal for computer science, software engineering, and blockchain enthusiasts with programming experience (mainly OOP) who are interested in understanding the fundamentals of Ethereum and leveraging its potential to build decentralized trustless systems.
- OOP Programmimg experience
- Programming experience NODE.js , JavaScript/Typescript
Module 1: Introduction to Blockchain Technology
- What is a blockchain?
- Definition and main components of a blockchain
- The first blockchain – Bitcoin
- Overview and history
- Understanding the bitcoin network
- How bitcoin works: transactions, blocks, and nodes
- Mining and proof of work consensus algorithm
- Network forks
- Problems addressed by blockchain technology
- Centralized vs decentralized systems
- The issues of traditional finance
- Blockchain use cases and real-world applications
- Advantages and disadvantages of blockchain technology
Module 2: Ethereum Basics
- Ethereum Overview
- A bit of history
- Ethereum vs Bitcoin – “the world computer”
- Ethereum main component
- Networks and clients
- Testnet and Mainnet
- Setting up and running the Ethereum geth client
- Interacting with the Ethereum network – JSON-RPC interface
- Wallets, externally owned accounts and contracts
- Currency units
- Creating your first wallet
- Wallet basic operations – transactions and gas fees
- A simple smart contract using Solidity and Remix playground
Module 3: Cryptography Fundamentals
- Public key cryptography
- Usage in Blockchain
- Private keys
- Public keys
- Elliptic curve cryptography
- Overview
- Operations
- Creating a public key
- Elliptic curve cryptography
- Cryptographic hash functions
- What is a hash function?
- Ethereum Keccak-256 hash function
- Ethereum addresses
- Generation, formats and encoding
Module 4: Wallets and Mnemonic Codes
- Introduction to Wallets and their role in blockchain transactions
- Non-deterministic wallets
- Hierarchical Deterministic (HD) wallets
- BIP-32/44 standards
- Seeds and mnemonic codes (BIP-39)
Module 5: Ethereum Transactions
- Structure of an Ethereum transaction
- Nonce and transaction ordering
- The importance of transaction ordering
- Nonce gaps
- Transaction speedup
- Transaction fees – Gas
- Transaction value and data payload
- Nonce and transaction ordering
- Types of transactions
- Value transfer
- Smart contract creation
- Smart contract interaction
- Digital signatures and transaction ownership
- Introduction
- Elliptic curve revisited – digital signatures
- Transaction signing and ownership verification
- Deducing the ‘from’ address from the signature
Module 6: Smart Contracts
- Introduction to smart contracts and their Significance in blockchain
- Developing intelligent contracts – The solidity programming language
- Types and units
- Globally available variables and functions
- Defining a contract
- Contract functions
- Contract inheritance
- Interfaces
- Modifiers
- Events
- Error handling
- External contract invocation
- Libraries
- Advanced
- Memory layout
- Storage state variables
- Memory variables
- Calldata parameters
- Mapping, arrays and structs
- Gas Considerations and optimizations
- Memory layout
Module 7: Smart Contract Security
- The importance of security in smart contracts
- Risks, antipatterns and real-world examples
- State variables/functions Visibility and function modifiers
- Reentrancy
- External contract invocations issues
- Arithmetic underflow and overflow
- Loops and block gas limit
- origin
Module 8: Token Standards (ERC20, ERC721)
- What are Ethereum tokens?
- ERC20 token standard
- ERC721 non-fungible token (NFT) standard
Module 9: Ethereum 3rd Party Libraries
- The importance of 3rd party libraries in Ethereum
- OpenZeppelin library
- Proxy pattern and upgradeability
- Transparent proxy
- UUPS proxy
- Access control
- Ownable pattern
- Role-based access control
- Reentrancy guard
- ERC20
- ERC721
- Proxy pattern and upgradeability
- טרם נקבע מועד פתיחה
- 2 מפגשי ערב
ימים ושעות
- 150
שעות אקדמיות
- בסיסי ומתקדם
רמת הקורס
- עברית
שפת הדרכה
לבדיקת התאמה לקורס
ממליצים
לפתיחה והורדת סילבוס