Detailed training program
- Lệnh và chương trình đầu tiên
- Giới thiệu kiểu int và string. Nhập từ bàn phím
- Toán tử điều kiện
- Vòng lặp
- Cài đặt IDE và plugin JavaRush
- Số thực và ký tự
- Mảng
- Slices
- Hàm
- Làm việc với math và enum
- Thao tác chuỗi nâng cao
- Maps và nền tảng collections
- Pointers và quản lý bộ nhớ
- Xử lý lỗi trong Go
- Làm việc với ngày và giờ
- Structs và composition
- Methods và encapsulation trong Go
- Interfaces: nền tảng và contracts
- Polymorphism qua interfaces và type assertion
- DTO và cấu trúc kiểu record (Go-way)
- Standard collections và container package
- Sorting và searching trong collections
- Generics: nền tảng (Go 1.18+)
- Làm việc với files và directories
- JSON, XML và data serialization
- Giới thiệu concurrency: goroutines
- Channels: tạo, gửi và nhận dữ liệu
- Buffered và unbuffered channels
- Select và làm việc với nhiều channels
- Concurrency patterns: worker pool, pipeline
- Synchronization: sync.Mutex, sync.RWMutex, sync.WaitGroup
- Atomic operations và sync/atomic
- Race conditions và cách phòng tránh
- Go modules: tạo và quản lý dependencies
- Làm việc với go.mod và go.sum
- Versioning và module replacement
- Nền tảng testing: gói testing
- Table-driven tests và subtests
- Benchmarks và profiling
- Mocking và integration tests
- Gói context: quản lý vòng đời thao tác
- Context và hủy thao tác
- Timers, tickers và delayed execution
- Profiling và tracing code đồng thời
- Lập trình mạng: TCP, UDP
- Làm việc với HTTP: server và client
- Làm việc với REST API, JSON và Middleware
- WebSockets và giao tiếp thời gian thực
- RPC và gRPC
- Bảo mật, authentication, OAuth2
- Tích hợp với các ngôn ngữ và hệ thống khác
- Testing trong Go: nền tảng
- Testing: mocks, integration tests
- Làm việc với cơ sở dữ liệu SQL và NoSQL
- Architectural patterns và nguyên tắc Go-way
- Code generation trong Go
- Logging và monitoring: thực hành hiện đại (slog)
- Hiệu năng: profiling và tối ưu hóa
- Tài liệu và xuất bản packages
- CI/CD, build và triển khai ứng dụng Go
- Go memory internals và reflect
- Modules, versioning và dự án multi-module
- Điểm mới trong Go 1.20–1.24 và experimental packages
- Điểm mới trong Go 1.25+ và thực hành hiện đại
- Goroutines and WaitGroup
- Channel Basics
- select, Timeouts and Goroutine Leaks
- Synchronization (sync, Mutex, atomic)
- Worker Pool
- Advanced context
- Race Detector and Benchmarks (pprof)
- Course Wrap-Up and Next Steps
360+
Bài học
1000+
Bài tập
72
Bài kiểm tra
Ngoài ra:
- Kiểm tra bài tập tức thì
- Trình kiểm tra mã bằng AI
- Plugin cho IDE
- WebIDE
- Trò chơi hóa
- Bài giảng truyền cảm hứng