๐ง Blockchain Development Basics
Master the fundamentals of blockchain development and the Move programming language
New to blockchain? This guide assumes programming experience but not blockchain knowledge.
๐ฏ What Youโll Learn
Blockchain Basics
Understanding decentralized systems and how they work
Move Language
Introduction to Move programming concepts
Dubhe Integration
How Dubhe simplifies blockchain development
๐ Blockchain Fundamentals
What is a Blockchain?
Core Concept
Core Concept
A blockchain is a distributed ledger that maintains a continuously growing list of records (blocks) that are linked and secured using cryptography. Think of it as a shared database that no single party controls.Key Properties:
- Decentralized: No central authority
- Immutable: Records cannot be changed once confirmed
- Transparent: All transactions are publicly visible
- Consensus-based: Network participants agree on the state
Key Blockchain Concepts
Accounts & Addresses
Every user has a unique address (like a bank account number) that identifies them on the blockchain.
Transactions
Actions that modify the blockchain state. Every transaction is:
- Signed by the sender
- Verified by the network
- Recorded permanently
Smart Contracts
Programs that run on the blockchain, automatically executing when conditions are met.
๐ Introduction to Move Language
Why Move?
Resource Safety
Moveโs unique feature: Resources cannot be copied or lost, only moved
Formal Verification
Mathematical proofs ensure your code works as intended
Move vs. Traditional Languages
- Move
- JavaScript (for comparison)
Core Move Concepts
Structs - Data Containers
Structs - Data Containers
Functions - Actions
Functions - Actions
Abilities - What Data Can Do
Abilities - What Data Can Do
๐๏ธ Understanding Fully On-Chain Applications
Traditional vs. Fully On-Chain
- Traditional Web App
- Fully On-Chain App
Characteristics:
- Central server controls logic
- Database can be modified
- Single point of failure
- Users trust the company
Benefits of Going Fully On-Chain
True Ownership
Users truly own their digital assets - no company can take them away
Composability
Applications can interact with each other like building blocks
Transparency
All logic is public and verifiable - no hidden mechanics
Persistence
Applications continue to exist even if the company disappears
๐ฎ Entity Component System (ECS) in Blockchain
Why ECS for Blockchain?
Game Development Pattern: ECS is used by major game engines because itโs perfect for managing complex, interactive systems - exactly what blockchain applications need.
- Traditional OOP
- ECS Approach
ECS Components in Dubhe
๐ ๏ธ How Dubhe Simplifies Development
The Problem Dubhe Solves
Dubheโs Solution
Schema-Driven
Define your data once, generate everything else automatically
Type Safety
Full type safety from blockchain to frontend
Real-Time Sync
Automatic state synchronization with WebSocket support
Multi-Chain
Deploy to multiple blockchains with the same code
Development Workflow Comparison
- Without Dubhe
- With Dubhe
๐ฏ Your Learning Path
Recommended Next Steps
Complete the Quickstart
Build your first application with our quickstart guide
Try the First DApp Tutorial
Follow the step-by-step counter app tutorial
Learn Contract Development
Dive deeper with contract development patterns
Build Something Real
Create a game with the Monster Hunter tutorial
๐ Key Takeaways
Remember These Concepts
โ
Blockchain = Shared, immutable database
โ Move = Resource-safe programming language
โ Smart Contracts = Programs that run on blockchain
โ ECS = Flexible architecture for complex applications
โ Dubhe = Framework that simplifies everything above
โ Move = Resource-safe programming language
โ Smart Contracts = Programs that run on blockchain
โ ECS = Flexible architecture for complex applications
โ Dubhe = Framework that simplifies everything above
๐ค Getting Help
Questions about these concepts?
- ๐ฌ Join our Discord for real-time help
- ๐ Check the glossary for term definitions
- ๐ฅ Watch tutorial videos for visual explanations
- ๐ง Email us for detailed questions
๐ Ready to Build?
Start Building Now
Jump into development with our quickstart guide
Learn by Example
Follow a complete tutorial from start to finish