Let's Move Sui: Giải thích ngôn ngữ di chuyển cơ bản của Sui

Trung cấpJun 12, 2024
Sui Network dựa vào việc thực hiện hợp đồng thông minh, trong đó ngôn ngữ Move, được phát triển trong Rust trên blockchain Sui, đóng một vai trò quan trọng. Chúng tôi đi sâu vào ngôn ngữ Move cơ bản của Sui để khám phá sự quyến rũ độc đáo của nó khác với các ngôn ngữ lập trình blockchain khác.
Let's Move Sui: Giải thích ngôn ngữ di chuyển cơ bản của Sui

Sui là một chuỗi công khai L1 được thiết kế lại và xây dựng từ các nguyên tắc đầu tiên, nhằm cung cấp một nền tảng phát triển có khả năng chứa hàng tỷ người dùng tiếp theo trong Web3 cho người sáng tạo và nhà phát triển.

Năm nay, ngôn ngữ lập trình gốc Move của Sui đã trải qua những cập nhật và nâng cấp đáng kể. Phiên bản 2024 giới thiệu các tính năng quan trọng như Enums, chức năng macro, cú pháp Method, v.v. Những tính năng mới thiết yếu này giới thiệu những cách mới để xác định dữ liệu và gọi các hàm trong ngôn ngữ lập trình Move, giúp phát triển ứng dụng trên Sui linh hoạt hơn và phù hợp với những kỳ vọng mới nhất của ngôn ngữ lập trình.

Vai trò chính của ngôn ngữ Move trong hệ sinh thái Sui là gì? Trên thực tế, toàn bộ hệ sinh thái Sui được xây dựng trên nền tảng của ba khái niệm chính, đảm bảo giải quyết giao dịch tức thì và chi phí giao dịch thấp — ba trụ cột cốt lõi là ngôn ngữ Move, thực hiện giao dịch song song và công cụ đồng thuận Sui.

Các ứng dụng trên Sui dựa trên ngôn ngữ hợp đồng thông minh Move, tập trung vào hợp đồng thông minh và tận dụng tối đa khả năng mở rộng và môi trường thông lượng cao của Sui, cho phép các nhà phát triển hỗ trợ một loạt các ứng dụng một cách nhanh chóng và tiết kiệm chi phí.

Trong các bài viết trước ("Làm thế nào để Sui tạo ra nền tảng phát triển tiếp theo cho Web3 tỷ người dùng?"), TinTinLand đã giới thiệu chi tiết về tình hình cơ bản về lợi thế kỹ thuật, triển vọng thị trường và xây dựng sinh thái của Sui. Hôm nay chúng ta sẽ đi sâu vào lớp cơ bản của Sui - Move language, khám phá phong cách độc đáo của nó khác với các ngôn ngữ lập trình blockchain khác.

Các tính năng của Move Language

Mạng Sui dựa vào việc thực hiện hợp đồng thông minh, trong đó ngôn ngữ Move, được phát triển trong Rust trên blockchain Sui, đóng một vai trò quan trọng. Ngôn ngữ Move được sử dụng bởi Sui, so với Solidity của ETH, cung cấp bảo mật và độ tin cậy mạnh mẽ hơn. Ngoài ra, Sui đã sửa đổi ngôn ngữ Move thành trung tâm đối tượng, nhấn mạnh lập trình hướng đối tượng.

Ngôn ngữ Move trên Sui cho phép tạo các hợp đồng thông minh tùy chỉnh phù hợp với các trường hợp sử dụng cụ thể, hỗ trợ cải thiện các quy trình khác nhau liên quan đến phát triển và triển khai dự án và ứng dụng, đồng thời giúp giảm chi phí liên quan đến các trung gian truyền thống. Thông qua đó, nhiều nhà phát triển và người dùng dự kiến sẽ tham gia vào hệ sinh thái Sui.

Hơn nữa, thiết kế ngôn ngữ Move của Sui ngăn chặn chi tiêu kép. Bằng cách này, nó có thể giúp Sui thiết lập một trong những nền tảng hợp đồng thông minh an toàn nhất, giải quyết và cải thiện các lỗ hổng vốn có của các ngôn ngữ lập trình tiền điện tử hiện có.

Original Goal of the Move Language

Sam Blackshear, đồng sáng lập và CTO của Sui / Mysten Labs, đồng thời là người tạo ra ngôn ngữ Move, đã phát triển Move khi làm việc trong dự án blockchain Diem tại Meta (trước đây là Facebook).

Trước khi thiết kế ngôn ngữ Move, Sam đã dành vài tháng để nghiên cứu kỹ về Solidity và EVM. Ông tin rằng các ngôn ngữ hợp đồng thông minh nên giống như các ngôn ngữ dành riêng cho miền (DSL) hơn là các ngôn ngữ lập trình có mục đích chung. Các ngôn ngữ này tập trung vào các tác vụ cụ thể như tạo đối tượng, truyền và chia sẻ đối tượng và thực hiện kiểm tra kiểm soát truy cập. Các trừu tượng cốt lõi của lập trình hợp đồng thông minh nên xoay quanh các nhiệm vụ này để đảm bảo an toàn và hiệu quả.

Do đó, Sam và nhóm của ông đã quyết định thiết kế một ngôn ngữ mới gọi là Move thay vì cố gắng đại tu các công nghệ hiện có như EVM hoặc Solidity. Di chuyển bắt đầu với mã B và kết hợp các tính năng như an toàn bộ nhớ, an toàn loại, an toàn tài nguyên và xử lý thân thiện với người dùng đối tượng / tài sản.

Với việc tạo ra thành công ngôn ngữ Move, bước quan trọng tiếp theo là thu hút nhiều nhà phát triển sử dụng Move để phát triển bằng cách đưa ra các ưu đãi hấp dẫn. Vượt qua các rào cản như quản lý khóa phức tạp, cài đặt ví và mua lại mã thông báo gốc là rất quan trọng để thu hút các nhà phát triển, theo họ.

Do đó, mục tiêu của nhóm phát triển Move là biến những thách thức này thành các vấn đề kỹ thuật bằng cách cung cấp các tính năng như đăng nhập ZK, cho phép giao dịch mà không cần cài đặt ví và cho phép các giao dịch của nhà tài trợ trả phí giao dịch cho người khác, từ đó cho phép các nhà phát triển khám phá các mô hình doanh thu phong phú hơn.

Ngôn ngữ Move trong hệ sinh thái Sui, tập trung vào đối tượng với các tính năng như lưu trữ toàn cầu, biểu diễn địa chỉ của ID đối tượng và ID đối tượng duy nhất trên toàn cầu, tạo thành nền tảng cơ bản cho các đổi mới công nghệ khác trong Sui.

Ưu điểm cốt lõi của ngôn ngữ Move

Những ưu điểm cốt lõi của ngôn ngữ Move được sử dụng bởi mạng Sui bao gồm:

  1. Ngôn ngữ Move giới thiệu một mô hình tài nguyên và mỗi Đối tượng được coi là một thực thể duy nhất, làm cho nó an toàn hơn.

  2. Move cung cấp một hệ thống kiểu và mô hình sở hữu nghiêm ngặt, giúp phát hiện và ngăn chặn các lỗ hổng khác nhau tại thời điểm biên dịch và đặc biệt phù hợp để xử lý các giao dịch tài chính phức tạp.

  3. Move hỗ trợ mức độ mô-đun và khả năng kết hợp cao, cho phép các nhà phát triển tạo các mô-đun và thư viện có thể tương tác.

dữ liệu hướng tài nguyên

Một trong những cải tiến cốt lõi của Move là giới thiệu các kiểu dữ liệu hướng tài nguyên, hoạt động giống như các đối tượng trong thế giới thực và không thể sao chép hoặc xóa mà không có dấu vết, do đó ngăn chặn việc giả mạo dữ liệu ngoài ý muốn.

Move hỗ trợ hai đối tượng cốt lõi: hợp đồng thông minh (Move packages, là một tập hợp các mô-đun Move) và tài sản kỹ thuật số (tài nguyên). Tiếng hỗ trợ tài nguyên bản địa của Tùy được thể hiện thông qua các bảng xác minh bytecode. Sau khi mã nguồn Move được biên dịch thành bytecode, một công cụ phân tích tĩnh được gọi là Move Bytecode Verifier đảm bảo rằng bytecode tuân theo các quy tắc an toàn kiểu, bộ nhớ và tài nguyên của Sui. Việc xác minh này đảm bảo rằng các đối tượng không thể được tạo, sao chép hoặc vô tình bị ghi bởi mã bên ngoài mô-đun xác định của chúng. Nó cũng bao gồm bảo vệ chống lại các lỗ hổng nhất định như chi tiêu kép và reentrancy.

Security Model

Move giải quyết một số vấn đề bảo mật có trong các ngôn ngữ hiện có, chẳng hạn như reentrancy, dynamic dispatch, kiểm tra quyền sở hữu và tuần tự hóa đối tượng, cung cấp cho các nhà phát triển một môi trường an toàn hơn.

* Cần lưu ý rằng bảo mật của Move không chỉ dựa trên sự vắng mặt của các cuộc tấn công của hacker cho đến nay; không có ngôn ngữ hợp đồng thông minh nào có thể ngăn chặn các lập trình viên viết mã không an toàn. Kiểm toán và kiểm tra khác vẫn được yêu cầu để xác định các lỗ hổng đó.

Đề xuất giá trị chính của Move nằm ở các đối tượng được nhập và độ an toàn kiểu của nó. An toàn kiểu không chỉ áp dụng trong chương trình mà còn khi tương tác với mã bên ngoài hoặc các nguồn không đáng tin cậy.

Một tính năng bảo mật tích hợp khác của Move là trình xác minh bytecode. Nó đảm bảo rằng bytecode của hợp đồng thông minh là hợp lệ và có thể thực thi một cách an toàn. Thiết kế của trình xác minh bytecode nhằm ngăn chặn mã độc thực thi trên chuỗi, chẳng hạn như tạo tiền giả, tăng giá trị coin giả tạo hoặc sao chép / đốt các đồng tiền hiện có.

thiết kế mô-đun

Move cho phép mã được tổ chức thành các mô-đun, mỗi mô-đun có không gian tên và quy tắc bảo mật riêng, giúp duy trì và sử dụng lại mã dễ dàng hơn. Mã di chuyển được tổ chức thành các mô-đun, tương tự như các hợp đồng thông minh riêng lẻ trên các blockchain khác. Thiết kế mô-đun này được nhấn mạnh trong Sui, nhằm khuyến khích các nhà phát triển giữ các mô-đun nhỏ và phân tán trên các tệp khác nhau trong khi tuân thủ các cấu trúc dữ liệu và quy ước mã rõ ràng. Điều này tạo điều kiện cho cả tích hợp ứng dụng và sự hiểu biết của người dùng.

Trải nghiệm phát triển hiệu quả và an toàn hơn

Đối với các nhà phát triển Web3, trải nghiệm phát triển trên Move và Sui hiệu quả và an toàn hơn. Cần lưu ý rằng đối với các dự án Web3 được phát triển bằng Move, để tận dụng tối đa lợi thế bảo mật của Move, tất cả hợp đồng thông minh trong hệ thống phải sử dụng Move một cách nhất quán. Khi tất cả các hợp đồng được viết bằng Move, Người xác thực có thể chạy và đảm bảo các giả định mạnh mẽ về mã và đối tượng.

Ví dụ, Bucket Protocol đang xây dựng một dự án DeFi trên hệ sinh thái Sui. Khi giới thiệu kiến trúc hệ thống và sự hợp tác của nó, họ đã đề cập cụ thể rằng nếu họ viết dự án trong Solidity, có thể mất tám tháng, nhưng sử dụng Move chỉ mất hai tháng và họ rất tự tin vào tính bảo mật của nó. Cách thức hoạt động của Move phù hợp chặt chẽ với ý tưởng của họ về thành phần dự án.

Sui cho ngôn ngữ Move tiêu chuẩn

Đổi mới và khám phá

Sui Move phát triển từ ngôn ngữ Move và được thiết kế để đáp ứng tốt hơn nhu cầu của các blockchain hiệu suất cao mới, vì vậy nó có sự khác biệt nhất định so với ngôn ngữ Move tiêu chuẩn. Dựa trên ngôn ngữ Move tiêu chuẩn, Sui tận dụng sự an toàn và linh hoạt của nó để cải thiện đáng kể thông lượng và giảm Trễ tính cuối cùng, đồng thời làm cho lập trình Move dễ thực hành hơn.

Ngôn ngữ lập trình Sui Move có nhiều điểm khác biệt rõ ràng so với Move tiêu chuẩn, bao gồm:

  • Sui sử dụng bộ lưu trữ toàn cục tập trung vào đối tượng của riêng mình
  • Địa chỉ đại diện cho mã định danh đối tượng
  • Các đối tượng Sui có số nhận dạng duy nhất trên toàn cầu
  • Sui có một trình khởi tạo mô-đun (init)
  • The Sui điểm vào lấy một tham chiếu đối tượng làm đầu vào

Standard Move language

Move được phát hành vào năm 2020 và hiện được cấp phép theo giấy phép mã nguồn mở Apache 2.0. Nó được sử dụng rộng rãi trong các mạng như Aptos, StarCoin, 0L, Rooch, Movement và Offshore.

Standard Move dựa trên ngôn ngữ lập trình Rust và phổ biến hơn so với các ngôn ngữ blockchain hiện có, thường được gắn với các blockchain cụ thể. Mục tiêu của Sam, người tạo ra ngôn ngữ Move, là tạo ra JavaScript của Web3, một ngôn ngữ đa nền tảng cho phép các nhà phát triển áp dụng các kỹ năng của họ trong nhiều môi trường mạng.

Trọng tâm chính của Move là hợp đồng thông minh, bao gồm các loại và biểu diễn giá trị cho tài sản và kiểm soát truy cập, hai khái niệm cơ bản thường gặp phải bởi các nhà phát triển DApp khi mã hóa. Sự trừu tượng hóa hạng nhất của Move về các loại làm cho lập trình an toàn hơn và hiệu quả hơn.

Từ Move đến Sui Move

Mặc dù ngôn ngữ Move không phụ thuộc vào nền tảng, nhưng nó bị giới hạn bởi mô hình tập trung vào tài khoản. Khi Sam và nhóm của ông tại Mysten Labs tập trung vào việc xây dựng Sui, họ tập trung vào việc tạo ra một cơ sở hạ tầng mạng phổ quát hơn là phạm vi hạn chế của blockchain Diem trong dự án Libra.

Sui Move được thiết kế như một nhánh của ngôn ngữ Move để phù hợp hơn với những đổi mới của Sui, chẳng hạn như mô hình đồng thuận của nó, với sự khác biệt đáng kể nhất là việc áp dụng mô hình lưu trữ dữ liệu hướng đối tượng. Bằng cách sử dụng Sui Move làm ngôn ngữ lập trình gốc, mạng Sui đạt được hiệu suất giao dịch ấn tượng với các ứng dụng được viết bằng Sui Move tận dụng cơ chế đồng thuận của Sui.

Năm ngoái, Sam đã trình bày chi tiết sự khác biệt giữa Move và Sui Move trong một bài viết có tiêu đề "Tại sao chúng tôi tạo ra Sui Move", giới thiệu các tính năng và khả năng của Sui Move.

🔗 Đọc toàn bộ bài viết tại đây: https://blog.sui.io/why-we-created-sui-move

Bằng cách tập trung vào các đối tượng, xử lý giao dịch song song trở nên khả thi, mang lại hiệu suất tốt hơn so với các blockchain giới hạn trong xử lý nối tiếp. Ở cấp độ cao hơn, thời gian chạy Sui có thể trực tiếp xác định các đối tượng độc quyền so với các đối tượng được chia sẻ, thực hiện xác thực ngay lập tức trên đối tượng trước và áp dụng xác thực đồng thuận trên đối tượng sau.

Từ quan điểm của nhà phát triển, Sui loại bỏ sự cần thiết phải mở rộng công việc trước và sau giao dịch liên quan đến quyền sở hữu tài sản. Trong khi ngôn ngữ Move ban đầu kiểm soát lưu trữ toàn cầu thông qua địa chỉ và tên loại, Sui Move sử dụng ID đối tượng để kiểm soát lưu trữ toàn cầu. Sự nhấn mạnh vào trạng thái đối tượng mang lại cho Sui Move khả năng vô hạn, chẳng hạn như khả năng kết hợp, nơi các đối tượng có thể sở hữu các đối tượng khác.

Bắt tay vào hành trình phát triển di chuyển

Move và các ngôn ngữ blockchain khác bị ảnh hưởng sâu sắc bởi truyền thống mật mã, tập trung nhiều hơn vào quyền sở hữu tài sản dẫn đầu chúng tập trung vào tài khoản hơn là tập trung vào tài sản. fork của Sui Move cung cấp sự linh hoạt hơn trong việc tạo và vận hành tài sản, mở ra cánh cửa cho nhiều chương trình và trò chơi mạnh mẽ được công chúng chờ đợi.

Vậy làm thế nào để bạn chuyển từ phát triển với ngôn ngữ Move tiêu chuẩn sang Sui Move? Các nhà phát triển quen thuộc với Move ban đầu sẽ thêm một ngôn ngữ di động, rất hữu ích vào hộp công cụ của họ. Để đi sâu vào Sui Move, người ta cần suy nghĩ từ góc độ của các đối tượng và tìm hiểu một số hướng dẫn mới, nhưng các công cụ như Sui Move Analyzer và các plugin WELLDONE Code có thể đơn giản hóa quá trình này.

🛠️ Sui Move Analyzer Plugin: https://zh.blog.sui.io/move-analyzer-tutorial/

🛠️ Plugin mã WELLDONE: https://zh.blog.sui.io/remix-ide-welldone-code/

🔍 Khám phá thêm về phát triển ngôn ngữ Move:

📄 Di chuyển tài liệu dành cho nhà phát triển: https://docs-zh.sui-book.com/concepts/sui-move-concepts/

📄 Tài liệu dành cho nhà phát triển Sui: https://docs.sui.io/guides/developer/sui-101

📄 Hướng dẫn phát triển cơ bản: https://zh.blog.sui.io/encode-club-sui-series-1/

Tuyên bố từ chối trách nhiệm:

  1. Bài viết này được in lại từ [TinTinLand], Tất cả bản quyền thuộc về tác giả gốc [TinTinLand]. Nếu có ý kiến phản đối việc tái bản này, vui lòng liên hệ với nhóm Gate Learn và họ sẽ xử lý kịp thời.
  2. Tuyên bố từ chối trách nhiệm: Các quan điểm và ý kiến được trình bày trong bài viết này chỉ là của tác giả và không cấu thành bất kỳ lời khuyên đầu tư nào.
  3. Bản dịch bài viết sang các ngôn ngữ khác được thực hiện bởi nhóm Gate Learn. Trừ khi được đề cập, việc sao chép, phân phối hoặc đạo văn các bài báo đã dịch đều bị cấm.

Các tính năng của Move Language

Mục tiêu ban đầu của ngôn ngữ di chuyển

Dữ liệu định hướng tài nguyên

Mô hình bảo mật

Thiết kế mô-đun

Trải nghiệm phát triển hiệu quả và an toàn hơn

Ngôn ngữ di chuyển chuẩn

Let's Move Sui: Giải thích ngôn ngữ di chuyển cơ bản của Sui

Trung cấpJun 12, 2024
Sui Network dựa vào việc thực hiện hợp đồng thông minh, trong đó ngôn ngữ Move, được phát triển trong Rust trên blockchain Sui, đóng một vai trò quan trọng. Chúng tôi đi sâu vào ngôn ngữ Move cơ bản của Sui để khám phá sự quyến rũ độc đáo của nó khác với các ngôn ngữ lập trình blockchain khác.
Let's Move Sui: Giải thích ngôn ngữ di chuyển cơ bản của Sui

Các tính năng của Move Language

Mục tiêu ban đầu của ngôn ngữ di chuyển

Dữ liệu định hướng tài nguyên

Mô hình bảo mật

Thiết kế mô-đun

Trải nghiệm phát triển hiệu quả và an toàn hơn

Ngôn ngữ di chuyển chuẩn

Sui là một chuỗi công khai L1 được thiết kế lại và xây dựng từ các nguyên tắc đầu tiên, nhằm cung cấp một nền tảng phát triển có khả năng chứa hàng tỷ người dùng tiếp theo trong Web3 cho người sáng tạo và nhà phát triển.

Năm nay, ngôn ngữ lập trình gốc Move của Sui đã trải qua những cập nhật và nâng cấp đáng kể. Phiên bản 2024 giới thiệu các tính năng quan trọng như Enums, chức năng macro, cú pháp Method, v.v. Những tính năng mới thiết yếu này giới thiệu những cách mới để xác định dữ liệu và gọi các hàm trong ngôn ngữ lập trình Move, giúp phát triển ứng dụng trên Sui linh hoạt hơn và phù hợp với những kỳ vọng mới nhất của ngôn ngữ lập trình.

Vai trò chính của ngôn ngữ Move trong hệ sinh thái Sui là gì? Trên thực tế, toàn bộ hệ sinh thái Sui được xây dựng trên nền tảng của ba khái niệm chính, đảm bảo giải quyết giao dịch tức thì và chi phí giao dịch thấp — ba trụ cột cốt lõi là ngôn ngữ Move, thực hiện giao dịch song song và công cụ đồng thuận Sui.

Các ứng dụng trên Sui dựa trên ngôn ngữ hợp đồng thông minh Move, tập trung vào hợp đồng thông minh và tận dụng tối đa khả năng mở rộng và môi trường thông lượng cao của Sui, cho phép các nhà phát triển hỗ trợ một loạt các ứng dụng một cách nhanh chóng và tiết kiệm chi phí.

Trong các bài viết trước ("Làm thế nào để Sui tạo ra nền tảng phát triển tiếp theo cho Web3 tỷ người dùng?"), TinTinLand đã giới thiệu chi tiết về tình hình cơ bản về lợi thế kỹ thuật, triển vọng thị trường và xây dựng sinh thái của Sui. Hôm nay chúng ta sẽ đi sâu vào lớp cơ bản của Sui - Move language, khám phá phong cách độc đáo của nó khác với các ngôn ngữ lập trình blockchain khác.

Các tính năng của Move Language

Mạng Sui dựa vào việc thực hiện hợp đồng thông minh, trong đó ngôn ngữ Move, được phát triển trong Rust trên blockchain Sui, đóng một vai trò quan trọng. Ngôn ngữ Move được sử dụng bởi Sui, so với Solidity của ETH, cung cấp bảo mật và độ tin cậy mạnh mẽ hơn. Ngoài ra, Sui đã sửa đổi ngôn ngữ Move thành trung tâm đối tượng, nhấn mạnh lập trình hướng đối tượng.

Ngôn ngữ Move trên Sui cho phép tạo các hợp đồng thông minh tùy chỉnh phù hợp với các trường hợp sử dụng cụ thể, hỗ trợ cải thiện các quy trình khác nhau liên quan đến phát triển và triển khai dự án và ứng dụng, đồng thời giúp giảm chi phí liên quan đến các trung gian truyền thống. Thông qua đó, nhiều nhà phát triển và người dùng dự kiến sẽ tham gia vào hệ sinh thái Sui.

Hơn nữa, thiết kế ngôn ngữ Move của Sui ngăn chặn chi tiêu kép. Bằng cách này, nó có thể giúp Sui thiết lập một trong những nền tảng hợp đồng thông minh an toàn nhất, giải quyết và cải thiện các lỗ hổng vốn có của các ngôn ngữ lập trình tiền điện tử hiện có.

Original Goal of the Move Language

Sam Blackshear, đồng sáng lập và CTO của Sui / Mysten Labs, đồng thời là người tạo ra ngôn ngữ Move, đã phát triển Move khi làm việc trong dự án blockchain Diem tại Meta (trước đây là Facebook).

Trước khi thiết kế ngôn ngữ Move, Sam đã dành vài tháng để nghiên cứu kỹ về Solidity và EVM. Ông tin rằng các ngôn ngữ hợp đồng thông minh nên giống như các ngôn ngữ dành riêng cho miền (DSL) hơn là các ngôn ngữ lập trình có mục đích chung. Các ngôn ngữ này tập trung vào các tác vụ cụ thể như tạo đối tượng, truyền và chia sẻ đối tượng và thực hiện kiểm tra kiểm soát truy cập. Các trừu tượng cốt lõi của lập trình hợp đồng thông minh nên xoay quanh các nhiệm vụ này để đảm bảo an toàn và hiệu quả.

Do đó, Sam và nhóm của ông đã quyết định thiết kế một ngôn ngữ mới gọi là Move thay vì cố gắng đại tu các công nghệ hiện có như EVM hoặc Solidity. Di chuyển bắt đầu với mã B và kết hợp các tính năng như an toàn bộ nhớ, an toàn loại, an toàn tài nguyên và xử lý thân thiện với người dùng đối tượng / tài sản.

Với việc tạo ra thành công ngôn ngữ Move, bước quan trọng tiếp theo là thu hút nhiều nhà phát triển sử dụng Move để phát triển bằng cách đưa ra các ưu đãi hấp dẫn. Vượt qua các rào cản như quản lý khóa phức tạp, cài đặt ví và mua lại mã thông báo gốc là rất quan trọng để thu hút các nhà phát triển, theo họ.

Do đó, mục tiêu của nhóm phát triển Move là biến những thách thức này thành các vấn đề kỹ thuật bằng cách cung cấp các tính năng như đăng nhập ZK, cho phép giao dịch mà không cần cài đặt ví và cho phép các giao dịch của nhà tài trợ trả phí giao dịch cho người khác, từ đó cho phép các nhà phát triển khám phá các mô hình doanh thu phong phú hơn.

Ngôn ngữ Move trong hệ sinh thái Sui, tập trung vào đối tượng với các tính năng như lưu trữ toàn cầu, biểu diễn địa chỉ của ID đối tượng và ID đối tượng duy nhất trên toàn cầu, tạo thành nền tảng cơ bản cho các đổi mới công nghệ khác trong Sui.

Ưu điểm cốt lõi của ngôn ngữ Move

Những ưu điểm cốt lõi của ngôn ngữ Move được sử dụng bởi mạng Sui bao gồm:

  1. Ngôn ngữ Move giới thiệu một mô hình tài nguyên và mỗi Đối tượng được coi là một thực thể duy nhất, làm cho nó an toàn hơn.

  2. Move cung cấp một hệ thống kiểu và mô hình sở hữu nghiêm ngặt, giúp phát hiện và ngăn chặn các lỗ hổng khác nhau tại thời điểm biên dịch và đặc biệt phù hợp để xử lý các giao dịch tài chính phức tạp.

  3. Move hỗ trợ mức độ mô-đun và khả năng kết hợp cao, cho phép các nhà phát triển tạo các mô-đun và thư viện có thể tương tác.

dữ liệu hướng tài nguyên

Một trong những cải tiến cốt lõi của Move là giới thiệu các kiểu dữ liệu hướng tài nguyên, hoạt động giống như các đối tượng trong thế giới thực và không thể sao chép hoặc xóa mà không có dấu vết, do đó ngăn chặn việc giả mạo dữ liệu ngoài ý muốn.

Move hỗ trợ hai đối tượng cốt lõi: hợp đồng thông minh (Move packages, là một tập hợp các mô-đun Move) và tài sản kỹ thuật số (tài nguyên). Tiếng hỗ trợ tài nguyên bản địa của Tùy được thể hiện thông qua các bảng xác minh bytecode. Sau khi mã nguồn Move được biên dịch thành bytecode, một công cụ phân tích tĩnh được gọi là Move Bytecode Verifier đảm bảo rằng bytecode tuân theo các quy tắc an toàn kiểu, bộ nhớ và tài nguyên của Sui. Việc xác minh này đảm bảo rằng các đối tượng không thể được tạo, sao chép hoặc vô tình bị ghi bởi mã bên ngoài mô-đun xác định của chúng. Nó cũng bao gồm bảo vệ chống lại các lỗ hổng nhất định như chi tiêu kép và reentrancy.

Security Model

Move giải quyết một số vấn đề bảo mật có trong các ngôn ngữ hiện có, chẳng hạn như reentrancy, dynamic dispatch, kiểm tra quyền sở hữu và tuần tự hóa đối tượng, cung cấp cho các nhà phát triển một môi trường an toàn hơn.

* Cần lưu ý rằng bảo mật của Move không chỉ dựa trên sự vắng mặt của các cuộc tấn công của hacker cho đến nay; không có ngôn ngữ hợp đồng thông minh nào có thể ngăn chặn các lập trình viên viết mã không an toàn. Kiểm toán và kiểm tra khác vẫn được yêu cầu để xác định các lỗ hổng đó.

Đề xuất giá trị chính của Move nằm ở các đối tượng được nhập và độ an toàn kiểu của nó. An toàn kiểu không chỉ áp dụng trong chương trình mà còn khi tương tác với mã bên ngoài hoặc các nguồn không đáng tin cậy.

Một tính năng bảo mật tích hợp khác của Move là trình xác minh bytecode. Nó đảm bảo rằng bytecode của hợp đồng thông minh là hợp lệ và có thể thực thi một cách an toàn. Thiết kế của trình xác minh bytecode nhằm ngăn chặn mã độc thực thi trên chuỗi, chẳng hạn như tạo tiền giả, tăng giá trị coin giả tạo hoặc sao chép / đốt các đồng tiền hiện có.

thiết kế mô-đun

Move cho phép mã được tổ chức thành các mô-đun, mỗi mô-đun có không gian tên và quy tắc bảo mật riêng, giúp duy trì và sử dụng lại mã dễ dàng hơn. Mã di chuyển được tổ chức thành các mô-đun, tương tự như các hợp đồng thông minh riêng lẻ trên các blockchain khác. Thiết kế mô-đun này được nhấn mạnh trong Sui, nhằm khuyến khích các nhà phát triển giữ các mô-đun nhỏ và phân tán trên các tệp khác nhau trong khi tuân thủ các cấu trúc dữ liệu và quy ước mã rõ ràng. Điều này tạo điều kiện cho cả tích hợp ứng dụng và sự hiểu biết của người dùng.

Trải nghiệm phát triển hiệu quả và an toàn hơn

Đối với các nhà phát triển Web3, trải nghiệm phát triển trên Move và Sui hiệu quả và an toàn hơn. Cần lưu ý rằng đối với các dự án Web3 được phát triển bằng Move, để tận dụng tối đa lợi thế bảo mật của Move, tất cả hợp đồng thông minh trong hệ thống phải sử dụng Move một cách nhất quán. Khi tất cả các hợp đồng được viết bằng Move, Người xác thực có thể chạy và đảm bảo các giả định mạnh mẽ về mã và đối tượng.

Ví dụ, Bucket Protocol đang xây dựng một dự án DeFi trên hệ sinh thái Sui. Khi giới thiệu kiến trúc hệ thống và sự hợp tác của nó, họ đã đề cập cụ thể rằng nếu họ viết dự án trong Solidity, có thể mất tám tháng, nhưng sử dụng Move chỉ mất hai tháng và họ rất tự tin vào tính bảo mật của nó. Cách thức hoạt động của Move phù hợp chặt chẽ với ý tưởng của họ về thành phần dự án.

Sui cho ngôn ngữ Move tiêu chuẩn

Đổi mới và khám phá

Sui Move phát triển từ ngôn ngữ Move và được thiết kế để đáp ứng tốt hơn nhu cầu của các blockchain hiệu suất cao mới, vì vậy nó có sự khác biệt nhất định so với ngôn ngữ Move tiêu chuẩn. Dựa trên ngôn ngữ Move tiêu chuẩn, Sui tận dụng sự an toàn và linh hoạt của nó để cải thiện đáng kể thông lượng và giảm Trễ tính cuối cùng, đồng thời làm cho lập trình Move dễ thực hành hơn.

Ngôn ngữ lập trình Sui Move có nhiều điểm khác biệt rõ ràng so với Move tiêu chuẩn, bao gồm:

  • Sui sử dụng bộ lưu trữ toàn cục tập trung vào đối tượng của riêng mình
  • Địa chỉ đại diện cho mã định danh đối tượng
  • Các đối tượng Sui có số nhận dạng duy nhất trên toàn cầu
  • Sui có một trình khởi tạo mô-đun (init)
  • The Sui điểm vào lấy một tham chiếu đối tượng làm đầu vào

Standard Move language

Move được phát hành vào năm 2020 và hiện được cấp phép theo giấy phép mã nguồn mở Apache 2.0. Nó được sử dụng rộng rãi trong các mạng như Aptos, StarCoin, 0L, Rooch, Movement và Offshore.

Standard Move dựa trên ngôn ngữ lập trình Rust và phổ biến hơn so với các ngôn ngữ blockchain hiện có, thường được gắn với các blockchain cụ thể. Mục tiêu của Sam, người tạo ra ngôn ngữ Move, là tạo ra JavaScript của Web3, một ngôn ngữ đa nền tảng cho phép các nhà phát triển áp dụng các kỹ năng của họ trong nhiều môi trường mạng.

Trọng tâm chính của Move là hợp đồng thông minh, bao gồm các loại và biểu diễn giá trị cho tài sản và kiểm soát truy cập, hai khái niệm cơ bản thường gặp phải bởi các nhà phát triển DApp khi mã hóa. Sự trừu tượng hóa hạng nhất của Move về các loại làm cho lập trình an toàn hơn và hiệu quả hơn.

Từ Move đến Sui Move

Mặc dù ngôn ngữ Move không phụ thuộc vào nền tảng, nhưng nó bị giới hạn bởi mô hình tập trung vào tài khoản. Khi Sam và nhóm của ông tại Mysten Labs tập trung vào việc xây dựng Sui, họ tập trung vào việc tạo ra một cơ sở hạ tầng mạng phổ quát hơn là phạm vi hạn chế của blockchain Diem trong dự án Libra.

Sui Move được thiết kế như một nhánh của ngôn ngữ Move để phù hợp hơn với những đổi mới của Sui, chẳng hạn như mô hình đồng thuận của nó, với sự khác biệt đáng kể nhất là việc áp dụng mô hình lưu trữ dữ liệu hướng đối tượng. Bằng cách sử dụng Sui Move làm ngôn ngữ lập trình gốc, mạng Sui đạt được hiệu suất giao dịch ấn tượng với các ứng dụng được viết bằng Sui Move tận dụng cơ chế đồng thuận của Sui.

Năm ngoái, Sam đã trình bày chi tiết sự khác biệt giữa Move và Sui Move trong một bài viết có tiêu đề "Tại sao chúng tôi tạo ra Sui Move", giới thiệu các tính năng và khả năng của Sui Move.

🔗 Đọc toàn bộ bài viết tại đây: https://blog.sui.io/why-we-created-sui-move

Bằng cách tập trung vào các đối tượng, xử lý giao dịch song song trở nên khả thi, mang lại hiệu suất tốt hơn so với các blockchain giới hạn trong xử lý nối tiếp. Ở cấp độ cao hơn, thời gian chạy Sui có thể trực tiếp xác định các đối tượng độc quyền so với các đối tượng được chia sẻ, thực hiện xác thực ngay lập tức trên đối tượng trước và áp dụng xác thực đồng thuận trên đối tượng sau.

Từ quan điểm của nhà phát triển, Sui loại bỏ sự cần thiết phải mở rộng công việc trước và sau giao dịch liên quan đến quyền sở hữu tài sản. Trong khi ngôn ngữ Move ban đầu kiểm soát lưu trữ toàn cầu thông qua địa chỉ và tên loại, Sui Move sử dụng ID đối tượng để kiểm soát lưu trữ toàn cầu. Sự nhấn mạnh vào trạng thái đối tượng mang lại cho Sui Move khả năng vô hạn, chẳng hạn như khả năng kết hợp, nơi các đối tượng có thể sở hữu các đối tượng khác.

Bắt tay vào hành trình phát triển di chuyển

Move và các ngôn ngữ blockchain khác bị ảnh hưởng sâu sắc bởi truyền thống mật mã, tập trung nhiều hơn vào quyền sở hữu tài sản dẫn đầu chúng tập trung vào tài khoản hơn là tập trung vào tài sản. fork của Sui Move cung cấp sự linh hoạt hơn trong việc tạo và vận hành tài sản, mở ra cánh cửa cho nhiều chương trình và trò chơi mạnh mẽ được công chúng chờ đợi.

Vậy làm thế nào để bạn chuyển từ phát triển với ngôn ngữ Move tiêu chuẩn sang Sui Move? Các nhà phát triển quen thuộc với Move ban đầu sẽ thêm một ngôn ngữ di động, rất hữu ích vào hộp công cụ của họ. Để đi sâu vào Sui Move, người ta cần suy nghĩ từ góc độ của các đối tượng và tìm hiểu một số hướng dẫn mới, nhưng các công cụ như Sui Move Analyzer và các plugin WELLDONE Code có thể đơn giản hóa quá trình này.

🛠️ Sui Move Analyzer Plugin: https://zh.blog.sui.io/move-analyzer-tutorial/

🛠️ Plugin mã WELLDONE: https://zh.blog.sui.io/remix-ide-welldone-code/

🔍 Khám phá thêm về phát triển ngôn ngữ Move:

📄 Di chuyển tài liệu dành cho nhà phát triển: https://docs-zh.sui-book.com/concepts/sui-move-concepts/

📄 Tài liệu dành cho nhà phát triển Sui: https://docs.sui.io/guides/developer/sui-101

📄 Hướng dẫn phát triển cơ bản: https://zh.blog.sui.io/encode-club-sui-series-1/

Tuyên bố từ chối trách nhiệm:

  1. Bài viết này được in lại từ [TinTinLand], Tất cả bản quyền thuộc về tác giả gốc [TinTinLand]. Nếu có ý kiến phản đối việc tái bản này, vui lòng liên hệ với nhóm Gate Learn và họ sẽ xử lý kịp thời.
  2. Tuyên bố từ chối trách nhiệm: Các quan điểm và ý kiến được trình bày trong bài viết này chỉ là của tác giả và không cấu thành bất kỳ lời khuyên đầu tư nào.
  3. Bản dịch bài viết sang các ngôn ngữ khác được thực hiện bởi nhóm Gate Learn. Trừ khi được đề cập, việc sao chép, phân phối hoặc đạo văn các bài báo đã dịch đều bị cấm.
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!