Bài viết
Chia sẻ kiến thức của bạn.
Tại sao bạn nên thử Sui Move?
Aptos và Sui đã xông vào Crypto Twitter với các điểm chuẩn TPS và tính năng uốn cong “L1 thế hệ tiếp theo”, nhưng mã gian lận thực sự là Move. Được sinh ra trong phòng thí nghiệm Libra, Move được chế tạo nhằm mục đích quét sạch các khẩu súng chân hợp đồng thông minh cổ điển (tái nhập cảnh, tràn, mã ma, bất cứ tên nào). Sau đó, Sui đã phối lại Move với một thời gian chạy tập trung vào đối tượng, biến mọi thứ trên chuỗi thành... à, một thứ bạn có thể theo dõi, chuyển hoặc phá hủy theo đúng nghĩa đen - không có tác dụng phụ vô hình.
“Hệ thống tệp” của Solana so với “Lego Bucket” của Sui 🔍
Solana xử lý mọi đoạn trạng thái giống như một tệp trong hệ điều hành. Các chương trình (hợp đồng thông minh) có thể đọc bất kỳ tệp nào, nhưng chỉ chương trình chủ sở hữu của tệp mới có thể ghi vào nó. Một giao dịch có thể chứa nhiều hướng dẫn và mỗi cuộc gọi có thể xem xét hàng xóm của nó. Nó hoạt động, nhưng việc tung hứng các tài khoản và PDA có thể cảm thấy giống như nộp thuế bằng ngôn ngữ lắp ráp.
Sui Move lật ngược bảng: hãy tưởng tượng một chương trình khổng lồ trong đó mọi mô-đun hợp đồng sống cạnh nhau trong cùng một vũ trụ. Các mô-đun nói chuyện trực tiếp với nhau; không giao ABI, không thể dục JSON. Mỗi giá trị liên tục là một đối tượng có chủ sở hữu (hoặc không có chủ sở hữu, hoặc bị đóng băng mãi mãi). Như thể ánh xạ của Solidity (địa chỉ ⇒ uint) đã mọc chân và thẻ ID.
Gặp gỡ Object Squad 👫🚌🏛️
- Đối tượng thuộc sở hữu - Giày thể thao riêng của bạn. Chỉ có bạn mới có thể buộc chúng lại ho���c giao dịch chúng. Hoàn hảo cho tiền xu, NFT, thiết bị trò chơi.
- Shared Objects - Xe tay ga thành phố. Bất cứ ai cũng có thể đi xe, nhưng hợp đồng thông minh đặt ra các quy tắc.
- Vật thể bất biến - Hiện vật bảo tàng. Chụp ảnh tự sướng; bạn không thể tinh chỉnh Mona Lisa.
Bảng gian lận thực hiện:
struct Sneaker has key { id: UID, color: vector<u8> } // owned
struct Scooter has key, store { id: UID, mileage: u64 } // shared
struct Artifact has key { id: UID } // immutable (never mutated after mint)
Vệ sĩ tích hợp: Cờ khả năng của Move 🛡️
Di chuyển có khả năng theo nghĩa đen:
Kết quả? Một đồng xu không có bản sao hoặc rơi không thể được in ra khỏi không khí hoặc vô tình xóa. Trình biên dịch thực thi nó. Đó là lý do tại sao các nhà phát triển nói đùa rằng tài nguyên Move là khoai tây nóng - hệ thống loại buộc bạn phải đưa chúng hoặc đốt chúng; bạn không thể đặt một cái sau chiếc ghế dài.
Và trước khi bất kỳ bytecode nào chạm vào trình xác thực, Move Verifier thực hiện kiểm tra tĩnh: “Không, bạn đã cố sao chép một tài nguyên không thể sao chép. “Hãy cố định điều đó hoặc tránh xa xích của tôi.” Kiểm toán không chi phí FTW.
5. Khởi động gói Sui Move 🛠️
sui move new hello_world
cd hello_world
tree .
hello_world
├─ Move.toml # project manifest
└─ sources/
└─ hello_world.move
Move.toml - Tên, phiên bản, phụ thuộc (Sui stdlib được kết nối sẵn) và địa chỉ được đặt tên. • sources/ - Một tập tin.move cho mỗi mô-đun. Giữ tên tệp snake_case.
Di chuyển nhanh.Toml Peek:
[package]
name = "hello_world"
[dependencies]
Sui = { git = "https://github.com/MystenLabs/sui.git",
subdir = "crates/sui-framework/packages/sui-framework",
rev = "framework/testnet" }
[addresses]
hello_world = "0x0" # auto-replaced on publish
Xây dựng và kiểm tra:
sui move build # compiles
sui move test # runs Move unit tests
Sui Move không chỉ là “một ngôn ngữ chuỗi khác”. Đó là một tư duy: tài sản là công dân hạng nhất, an toàn là mặc định và UX của nhà phát triển sáng tạo tỏa sáng thông qua quy trình làm việc CLI đơn giản. Ít thời gian kiểm tra toán học tràn, nhiều thời gian hơn để xây dựng các trò chơi trên chuỗi, ứng dụng xã hội và bất kỳ meta hoang dã nào xuất hiện tiếp theo.
Vì vậy, hãy lấy IDE yêu thích của bạn, mở một ly bia lạnh (hoặc yerba) và vận chuyển thứ gì đó chạy bằng Move-chạy.
- Sui
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Kiếm phần của bạn từ 1000 Sui
Tích lũy điểm danh tiếng và nhận phần thưởng khi giúp cộng đồng Sui phát triển.

- ... SUIBigSneh+1396
- ... SUISuiLover+1333
- ... SUI0xduckmove+1207
- ... SUIThorfin+1202
- ... SUIOwen+970
- ... SUIharry phan+847
- ... SUItheking+742
- Tại sao BCS yêu cầu thứ tự trường chính xác để khử chuỗi khi cấu trúc Move có các trường được đặt tên?53
- Nhiều lỗi xác minh nguồn” trong các ấn phẩm về mô-đun Sui Move - Giải quyết lỗi tự động43
- Giao dịch Sui thất bại: Đối tượng được dành riêng cho giao dịch khác25
- Làm thế nào để các ràng buộc về khả năng tương tác với các trường động trong các bộ sưu tập không đồng nhất?05