Giới thiệu về Move
Nhập môn Move và tư duy thiết kế của nó
💡 Thuật ngữ chính
- Move — Ngôn ngữ hợp đồng thông minh tập trung vào tài sản trên blockchain
- Resource (Tài nguyên) — Giá trị không thể sao chép hoặc xóa, chỉ có thể di chuyển
- Module (Mô-đun) — Đơn vị cơ bản trong Move, chứa các kiểu dữ liệu và hàm
1. Move là gì?
Move là ngôn ngữ lập trình được thiết kế để quản lý tài sản kỹ thuật số một cách an toàn. Ra đời từ dự án Libra của Facebook (2018), Move hiện là nền tảng cốt lõi của Sui và Aptos. Tên gọi “Move” xuất phát từ hành động di chuyển giá trị thay vì sao chép, thể hiện triết lý an toàn của mô hình tài sản.
2. Giá trị cốt lõi của Move
Giá trị | Giải thích |
---|---|
🔒 Bảo mật | Đảm bảo tài sản không thể bị sao chép hoặc xóa ngoài ý muốn. |
⚙️ Biểu đạt mạnh mẽ | Cho phép mô tả logic tài sản phức tạp một cách an toàn. |
🚀 Dễ tiếp cận | Dễ hiểu cho cả lập trình viên hợp đồng thông minh và nhà phát triển ứng dụng. |
3. Đặc điểm chính của Move
Đặc điểm | Mô tả |
---|---|
Resource Types (Kiểu tài nguyên) | Tài sản kỹ thuật số không thể sao chép hay xóa, chỉ có thể di chuyển. |
Ability System (Hệ thống khả năng) | Kiểm soát việc tạo, lưu trữ và di chuyển dữ liệu. |
Module System (Hệ thống mô-đun) | Cho phép đóng gói, tái sử dụng và bảo vệ logic code. |
PTB (Programmable Transaction Block) | Gộp nhiều hành động thành một giao dịch duy nhất để thực thi. |
4. Move trong hệ sinh thái Sui
Sui mở rộng Move với mô hình Object (Đối tượng), nơi mỗi tài sản tồn tại như một đối tượng duy nhất và có thể giao dịch riêng biệt。
Khái niệm | Giải thích |
---|---|
Mô hình đối tượng (Object Model) | Mỗi tài sản được quản lý như một đối tượng có thể định danh. |
ID đối tượng duy nhất | Mỗi đối tượng trên mạng Sui có một ID toàn cầu duy nhất. |
Thực thi song song (Parallel Execution) | Các giao dịch không xung đột có thể được thực hiện đồng thời. |
Entry Function (Hàm nhập) | Hàm có thể được gọi trực tiếp từ bên ngoài mạng. |
5. Mối quan hệ giữa Move và PTB
PTB (Programmable Transaction Block) cho phép kết hợp nhiều hàm Move thành một khối giao dịch duy nhất. Điều này giúp nhà phát triển thiết kế luồng giao dịch trực quan và tự động sinh mã TypeScript để tích hợp vào ứng dụng.
💡 Ở chương tiếp theo, chúng ta sẽ cài đặt môi trường phát triển Move và Sui để bắt đầu thực hành.