Let's Move Sui: อธิบายภาษาการย้ายพื้นฐานของซุย

กลางJun 12, 2024
Sui Network อาศัยการดําเนินการสัญญาอัจฉริยะ ซึ่งภาษา Move ที่พัฒนาขึ้นใน Rust บนบล็อกเชน Sui มีบทบาทสําคัญ เราเจาะลึกภาษา Move พื้นฐานของ Sui เพื่อสํารวจเสน่ห์ที่เป็นเอกลักษณ์ซึ่งแตกต่างจากภาษาการเขียนโปรแกรมบล็อกเชนอื่น ๆ
Let's Move Sui: อธิบายภาษาการย้ายพื้นฐานของซุย

Sui เป็นเครือข่ายสาธารณะ L1 ที่ออกแบบใหม่และสร้างขึ้นจากหลักการแรกโดยมีเป้าหมายเพื่อจัดหาแพลตฟอร์มการพัฒนาที่สามารถรองรับผู้ใช้พันล้านคนใน Web3 สําหรับผู้สร้างและนักพัฒนา

ในปีนี้ Move ภาษาโปรแกรมดั้งเดิมของ Sui ได้รับการอัปเดตและอัปเกรดที่สําคัญ เวอร์ชัน 2024 นําเสนอคุณสมบัติที่สําคัญเช่น Enums ฟังก์ชันมาโครไวยากรณ์วิธีการและอื่น ๆ คุณสมบัติใหม่ที่จําเป็นเหล่านี้แนะนําวิธีการใหม่ในการกําหนดข้อมูลและฟังก์ชันการโทรในภาษาการเขียนโปรแกรม Move ทําให้การพัฒนาแอปพลิเคชันบน Sui มีความยืดหยุ่นมากขึ้นและสอดคล้องกับความคาดหวังล่าสุดของภาษาโปรแกรม

บทบาทสําคัญของภาษา Move ในระบบนิเวศ Sui คืออะไร? ในความเป็นจริงระบบนิเวศ Sui ทั้งหมดถูกสร้างขึ้นบนรากฐานของแนวคิดหลักสามประการเพื่อให้มั่นใจว่าการชําระธุรกรรมทันทีและต้นทุนการทําธุรกรรมต่ําเสาหลักสามประการคือภาษา Move การดําเนินการธุรกรรมแบบขนานและเครื่องมือฉันทามติ Sui

แอปพลิเคชันบน Sui ใช้ภาษาสัญญาอัจฉริยะ Move ซึ่งมุ่งเน้นไปที่สัญญาอัจฉริยะและใช้ประโยชน์จากความสามารถในการปรับขนาดของ Sui และสภาพแวดล้อมที่มีปริมาณงานสูงอย่างเต็มที่ทําให้นักพัฒนาสามารถสนับสนุนแอปพลิเคชันที่หลากหลายได้อย่างรวดเร็วและคุ้มค่า

ในบทความก่อนหน้านี้ ("Sui สร้างแพลตฟอร์มการพัฒนาต่อไปสําหรับผู้ใช้ Web3 พันล้านคนได้อย่างไร") TinTinLand ได้แนะนํารายละเอียดเกี่ยวกับสถานการณ์พื้นฐานของข้อได้เปรียบทางเทคนิคโอกาสทางการตลาดและการก่อสร้างระบบนิเวศของ Sui วันนี้เราจะมาดําดิ่งสู่เลเยอร์พื้นฐานของ Sui - ย้ายภาษาสํารวจสไตล์ที่เป็นเอกลักษณ์ซึ่งแตกต่างจากภาษาการเขียนโปรแกรมบล็อกเชนอื่น ๆ

คุณสมบัติของ Move Language

เครือข่าย Sui อาศัยการดําเนินการสัญญาอัจฉริยะ ซึ่งภาษา Move ที่พัฒนาขึ้นใน Rust บนบล็อกเชน Sui มีบทบาทสําคัญ ภาษา Move ที่ใช้โดย Sui เมื่อเทียบกับ Solidity ของ ETH ให้ความปลอดภัยและความน่าเชื่อถือที่แข็งแกร่งกว่า นอกจากนี้ Sui ยังได้ปรับเปลี่ยนภาษา Move ให้เน้นวัตถุเป็นศูนย์กลางโดยเน้นการเขียนโปรแกรมเชิงวัตถุ

ภาษา Move on Sui ช่วยให้สามารถสร้างสัญญาอัจฉริยะที่กําหนดเองซึ่งปรับให้เหมาะกับกรณีการใช้งานเฉพาะช่วยในการปรับปรุงกระบวนการต่างๆที่เกี่ยวข้องกับการพัฒนาและการใช้งานโครงการและแอปพลิเคชันและช่วยลดค่าใช้จ่ายที่เกี่ยวข้องกับตัวกลางแบบดั้งเดิม ด้วยเหตุนี้นักพัฒนาและผู้ใช้จํานวนมากขึ้นคาดว่าจะเข้าสู่ระบบนิเวศของ Sui

นอกจากนี้การออกแบบภาษา Move ของ Sui ยังป้องกันการใช้จ่ายซ้ําซ้อน ด้วยวิธีนี้จะช่วยให้ Sui สร้างหนึ่งในแพลตฟอร์มสัญญาอัจฉริยะที่ปลอดภัยที่สุดโดยแก้ไขและปรับปรุงข้อบกพร่องโดยธรรมชาติของภาษาการเขียนโปรแกรมสกุลเงินดิจิทัลที่มีอยู่

Original Goal of the Move Language

Sam Blackshear ผู้ร่วมก่อตั้งและ CTO ของ Sui/Mysten Labs และผู้สร้างภาษา Move ได้พัฒนา Move ในขณะที่ทํางานในโครงการบล็อกเชน Diem ที่ Meta (เดิมชื่อ Facebook)

ก่อนที่จะออกแบบภาษา Move แซมใช้เวลาหลายเดือนในการศึกษา Solidity และ EVM อย่างรอบคอบ เขาเชื่อว่าภาษาสัญญาอัจฉริยะควรเป็นเหมือนภาษาเฉพาะโดเมน (DSL) มากกว่าภาษาโปรแกรมเอนกประสงค์ ภาษาเหล่านี้มุ่งเน้นไปที่งานเฉพาะเช่นการสร้างวัตถุการส่งและการแชร์วัตถุและการตรวจสอบการควบคุมการเข้าถึง สิ่งที่เป็นนามธรรมหลักของการเขียนโปรแกรมสัญญาอัจฉริยะควรหมุนรอบงานเหล่านี้เพื่อความปลอดภัยและประสิทธิภาพ

ด้วยเหตุนี้ แซมและทีมของเขาจึงตัดสินใจออกแบบภาษาใหม่ที่เรียกว่า Move แทนที่จะพยายามยกเครื่องเทคโนโลยีที่มีอยู่ เช่น EVM หรือ Solidity การย้ายเริ่มต้นด้วยรหัส B และรวมคุณสมบัติต่างๆเช่นความปลอดภัยของหน่วยความจําความปลอดภัยของประเภทความปลอดภัยของทรัพยากรและการจัดการวัตถุ / สินทรัพย์ที่ใช้งานง่าย

ด้วยการสร้างภาษา Move ที่ประสบความสําเร็จขั้นตอนต่อไปที่สําคัญคือการดึงดูดนักพัฒนาให้ใช้ Move เพื่อการพัฒนาโดยให้สิ่งจูงใจที่น่าสนใจ การเอาชนะอุปสรรคเช่นการจัดการคีย์ที่ซับซ้อนการติดตั้งกระเป๋าเงินและการได้มาซึ่งโทเค็นดั้งเดิมเป็นสิ่งสําคัญในการดึงดูดนักพัฒนาตามพวกเขา

ดังนั้นเป้าหมายของทีมพัฒนา Move คือการเปลี่ยนความท้าทายเหล่านี้ให้เป็นปัญหาทางเทคนิคโดยการจัดหาคุณสมบัติต่างๆเช่นการเข้าสู่ระบบ ZK ทําให้สามารถทําธุรกรรมได้โดยไม่จําเป็นต้องติดตั้งกระเป๋าเงินและอนุญาตให้ธุรกรรมของผู้สนับสนุนจ่ายค่าธรรมเนียมการทําธุรกรรมสําหรับผู้อื่นซึ่งจะช่วยให้นักพัฒนาสามารถสํารวจรูปแบบรายได้ที่สมบูรณ์ยิ่งขึ้น

ภาษา Move ในระบบนิเวศ Sui ซึ่งเน้นวัตถุเป็นศูนย์กลางด้วยคุณสมบัติต่างๆเช่นการจัดเก็บทั่วโลกการแสดงที่อยู่ของรหัสวัตถุและรหัสวัตถุที่ไม่ซ้ํากันทั่วโลกเป็นรากฐานสําหรับนวัตกรรมทางเทคโนโลยีอื่น ๆ ใน Sui

ข้อดีหลักของภาษา Move

ข้อได้เปรียบหลักของภาษา Move ที่ใช้โดยเครือข่าย Sui ได้แก่ :

  1. ภาษา Move แนะนําโมเดลทรัพยากร และวัตถุแต่ละชิ้นถือเป็นเอนทิตีที่ไม่ซ้ํากัน ทําให้มีความปลอดภัยมากขึ้น

  2. Move มีระบบประเภทและรูปแบบความเป็นเจ้าของที่เข้มงวด ซึ่งช่วยตรวจจับและป้องกันช่องโหว่ต่างๆ ในเวลาคอมไพล์ และเหมาะอย่างยิ่งสําหรับการประมวลผลธุรกรรมทางการเงินที่ซับซ้อน

  3. Move รองรับโมดูลาร์และความสามารถในการประกอบในระดับสูงทําให้นักพัฒนาสามารถสร้างโมดูลและไลบรารีที่ทํางานร่วมกันได้

Resource-Oriented Data

หนึ่งในนวัตกรรมหลักของ Move คือการแนะนําประเภทข้อมูลที่มุ่งเน้นทรัพยากรซึ่งทํางานเหมือนวัตถุในโลกแห่งความเป็นจริงและไม่สามารถคัดลอกหรือลบได้โดยไม่มีร่องรอยจึงป้องกันการปลอมแปลงข้อมูลโดยไม่ได้ตั้งใจ

Move รองรับอ็อบเจ็กต์หลักสองรายการ: สัญญาอัจฉริยะ (แพ็คเกจ Move ซึ่งเป็นชุดของโมดูล Move) และสินทรัพย์ดิจิทัล (ทรัพยากร) การสนับสนุนทรัพยากรดั้งเดิมของ Sui แสดงผ่านตารางการตรวจสอบไบต์โค้ด หลังจากย้ายซอร์สโค้ดถูกคอมไพล์เป็นไบต์โค้ดเครื่องมือวิเคราะห์แบบคงที่ที่เรียกว่า Move Bytecode Verifier ช่วยให้มั่นใจได้ว่า bytecode เป็นไปตามประเภทหน่วยความจําและกฎความปลอดภัยของทรัพยากรของ Sui การตรวจสอบนี้ช่วยให้มั่นใจได้ว่าไม่สามารถสร้างคัดลอกหรือเขียนด้วยรหัสนอกโมดูลที่กําหนดโดยไม่ได้ตั้งใจ นอกจากนี้ยังรวมถึงการป้องกันช่องโหว่บางอย่างเช่นการใช้จ่ายซ้ําซ้อนและการกลับใจ

Security Model

Move ช่วยแก้ไขปัญหาด้านความปลอดภัยบางอย่างที่มีอยู่ในภาษาที่มีอยู่ เช่น reentrancy, dynamic dispatch, ownership checks และ object serialization ทําให้นักพัฒนามีสภาพแวดล้อมที่ปลอดภัยยิ่งขึ้น

*ควรสังเกตว่าความปลอดภัยของ Move ไม่ได้ขึ้นอยู่กับการไม่มีการโจมตีของแฮ็กเกอร์จนถึงปัจจุบันเท่านั้น ไม่มีภาษาสัญญาอัจฉริยะใดที่สามารถป้องกันไม่ให้โปรแกรมเมอร์เขียนโค้ดที่ไม่ปลอดภัยได้ การตรวจสอบและการตรวจสอบอื่น ๆ ยังคงต้องระบุช่องโหว่ดังกล่าว

คุณค่าที่สําคัญของ Move อยู่ที่วัตถุที่พิมพ์และความปลอดภัยประเภท ความปลอดภัยประเภทใช้ไม่เพียง แต่ภายในโปรแกรม แต่ยังเมื่อโต้ตอบกับรหัสภายนอกหรือแหล่งที่ไม่น่าเชื่อถือ

คุณสมบัติความปลอดภัยในตัวอีกอย่างของ Move คือตัวตรวจสอบไบต์โค้ด ช่วยให้มั่นใจได้ว่า bytecode ของสัญญาอัจฉริยะนั้นถูกต้องและปฏิบัติการได้อย่างปลอดภัย การออกแบบตัวตรวจสอบ bytecode มีวัตถุประสงค์เพื่อป้องกันไม่ให้รหัสที่เป็นอันตรายดําเนินการบนห่วงโซ่เช่นการสร้างเหรียญปลอมการเพิ่มมูลค่าเหรียญเทียมหรือการคัดลอก / การเผาเหรียญที่มีอยู่

Modular design

Move ช่วยให้สามารถจัดระเบียบโค้ดเป็นโมดูลโดยแต่ละโมดูลจะมีเนมสเปซและกฎความเป็นส่วนตัวของตัวเองทําให้ง่ายต่อการบํารุงรักษาและนําโค้ดกลับมาใช้ใหม่ รหัสการย้ายถูกจัดเป็นโมดูลคล้ายกับสัญญาอัจฉริยะแต่ละรายการบนบล็อกเชนอื่น ๆ การออกแบบโมดูลาร์นี้เน้นใน Sui โดยมีเป้าหมายเพื่อส่งเสริมให้นักพัฒนารักษาโมดูลให้มีขนาดเล็กและกระจายไปตามไฟล์ต่างๆในขณะที่ยึดมั่นในโครงสร้างข้อมูลที่ชัดเจนและแบบแผนรหัส สิ่งนี้อํานวยความสะดวกทั้งการรวมแอปพลิเคชันและความเข้าใจของผู้ใช้

ประสบการณ์การพัฒนาที่มีประสิทธิภาพและปลอดภัยยิ่งขึ้น

สําหรับนักพัฒนา Web3 ประสบการณ์การพัฒนาบน Move และ Sui มีประสิทธิภาพและปลอดภัยยิ่งขึ้น ควรสังเกตว่าสําหรับโครงการ Web3 ที่พัฒนาโดยใช้ Move เพื่อใช้ประโยชน์จากข้อได้เปรียบด้านความปลอดภัยของ Move อย่างเต็มที่สัญญาอัจฉริยะทั้งหมดในระบบต้องใช้ Move อย่างสม่ําเสมอ เมื่อสัญญาทั้งหมดถูกเขียนใน Move ผู้ตรวจสอบความถูกต้องสามารถเรียกใช้และรับรองสมมติฐานที่ชัดเจนเกี่ยวกับรหัสและวัตถุ

ตัวอย่างเช่น Bucket Protocol กําลังสร้างโครงการ DeFi บนระบบนิเวศ Sui เมื่อแสดงสถาปัตยกรรมระบบและการทํางานร่วมกันพวกเขากล่าวโดยเฉพาะว่าหากพวกเขาเขียนโครงการใน Solidity อาจใช้เวลาแปดเดือน แต่การใช้ Move ใช้เวลาเพียงสองเดือนและพวกเขามีความมั่นใจอย่างมากในด้านความปลอดภัย วิธีการทํางานของ Move สอดคล้องกับแนวคิดเรื่ององค์ประกอบของโครงการอย่างใกล้ชิด

Sui สําหรับภาษา Move มาตรฐาน

นวัตกรรมและการสํารวจ

Sui Move พัฒนามาจากภาษา Move และได้รับการออกแบบมาเพื่อตอบสนองความต้องการของบล็อกเชนประสิทธิภาพสูงใหม่ได้ดีขึ้นดังนั้นจึงมีความแตกต่างจากภาษา Move มาตรฐาน จากภาษา Move มาตรฐาน Sui ใช้ประโยชน์จากความปลอดภัยและความยืดหยุ่นเพื่อปรับปรุงปริมาณงานและลดเวลาแฝงขั้นสุดท้ายและทําให้การเขียนโปรแกรม Move ง่ายต่อการฝึกฝน

ภาษาโปรแกรม Sui Move มีความแตกต่างที่ชัดเจนจาก Move มาตรฐาน ได้แก่ :

  • Sui ใช้ที่เก็บข้อมูลส่วนกลางที่เน้นวัตถุเป็นของตัวเอง
  • ที่อยู่แสดงถึงตัวระบุวัตถุ
  • วัตถุ Sui มีตัวระบุที่ไม่ซ้ํากันทั่วโลก
  • Sui มีตัวเริ่มต้นโมดูล (init)
  • จุดเริ่มต้น Sui ใช้การอ้างอิงวัตถุเป็นอินพุต

Standard Move language

Move เปิดตัวในปี 2020 และปัจจุบันได้รับอนุญาตภายใต้ใบอนุญาตโอเพ่นซอร์ส Apache 2.0 มีการใช้กันอย่างแพร่หลายในเครือข่ายเช่น Aptos, StarCoin, 0L, Rooch, Movement และ Offshore

Standard Move ใช้ภาษาการเขียนโปรแกรม Rust และเป็นสากลมากกว่าเมื่อเทียบกับภาษาบล็อกเชนที่มีอยู่ ซึ่งมักจะเชื่อมโยงกับบล็อกเชนเฉพาะ เป้าหมายของ Sam ผู้สร้างภาษา Move คือการสร้าง JavaScript ของ Web3 ซึ่งเป็นภาษาข้ามแพลตฟอร์มที่ช่วยให้นักพัฒนาสามารถใช้ทักษะของตนในสภาพแวดล้อมเครือข่ายที่หลากหลาย

จุดสนใจหลักของ Move คือสัญญาอัจฉริยะซึ่งรวมถึงประเภทและการแสดงมูลค่าสําหรับสินทรัพย์และการควบคุมการเข้าถึงซึ่งเป็นแนวคิดพื้นฐานสองประการที่นักพัฒนา DApp มักพบเมื่อเขียนโค้ด สิ่งที่เป็นนามธรรมชั้นหนึ่งของ Move ทําให้การเขียนโปรแกรมปลอดภัยและมีประสิทธิภาพมากขึ้น

จาก Move to Sui Move

แม้ว่าภาษา Move จะไม่เชื่อเรื่องแพลตฟอร์ม แต่ก็ถูก จํากัด ด้วยรูปแบบที่เน้นบัญชีเป็นศูนย์กลาง เมื่อแซมและทีมของเขาที่ Mysten Labs มุ่งเน้นไปที่การสร้าง Sui พวกเขามุ่งเน้นไปที่การสร้างโครงสร้างพื้นฐานเครือข่ายที่เป็นสากลมากกว่าขอบเขตที่ จํากัด ของบล็อกเชน Diem ในโครงการ Libra

Sui Move ได้รับการออกแบบให้เป็นสาขาหนึ่งของภาษา Move เพื่อรองรับนวัตกรรมของ Sui ได้ดียิ่งขึ้น เช่น โมเดลฉันทามติ โดยมีความแตกต่างที่สําคัญที่สุดคือการนําโมเดลการจัดเก็บข้อมูลเชิงวัตถุมาใช้ ด้วยการใช้ Sui Move เป็นภาษาการเขียนโปรแกรมดั้งเดิมเครือข่าย Sui จึงบรรลุประสิทธิภาพการทําธุรกรรมที่น่าประทับใจด้วยแอพที่เขียนใน Sui Move โดยใช้ประโยชน์จากกลไกฉันทามติของ Sui

เมื่อปีที่แล้ว แซมให้รายละเอียดความแตกต่างระหว่าง Move และ Sui Move ในบทความชื่อ "Why We Created Sui Move" ซึ่งแสดงคุณสมบัติและความสามารถของ Sui Move

🔗 อ่านบทความฉบับเต็มที่นี่: https://blog.sui.io/why-we-created-sui-move

การมุ่งเน้นไปที่ออบเจ็กต์ทําให้การประมวลผลธุรกรรมแบบขนานเป็นไปได้โดยให้ประสิทธิภาพที่ดีกว่าเมื่อเทียบกับบล็อกเชนที่ จํากัด เฉพาะการประมวลผลแบบอนุกรม ในระดับที่สูงขึ้นรันไทม์ Sui สามารถกําหนดอ็อบเจ็กต์พิเศษเทียบกับอ็อบเจ็กต์ที่ใช้ร่วมกันได้โดยตรงโดยดําเนินการตรวจสอบความถูกต้องทันทีกับอดีตและใช้การตรวจสอบฉันทามติในตอนหลัง

จากมุมมองของนักพัฒนา Sui ไม่จําเป็นต้องทํางานก่อนและหลังการทําธุรกรรมที่เกี่ยวข้องกับการเป็นเจ้าของสินทรัพย์ ในขณะที่ภาษา Move ดั้งเดิมควบคุมที่เก็บข้อมูลส่วนกลางผ่านที่อยู่และชื่อประเภท Sui Move จะใช้ ID ออบเจ็กต์สําหรับการควบคุมพื้นที่จัดเก็บส่วนกลาง การเน้นสถานะวัตถุทําให้ Sui Move มีความเป็นไปได้ที่ไร้ขีด จํากัด เช่นความสามารถในการประกอบซึ่งวัตถุสามารถเป็นเจ้าของวัตถุอื่นได้

Embark on the Move Development Journey

Move และภาษาบล็อกเชนอื่น ๆ ได้รับอิทธิพลอย่างลึกซึ้งจากประเพณีของการเข้ารหัสโดยเน้นที่การเป็นเจ้าของสินทรัพย์มากขึ้นทําให้พวกเขาเป็นศูนย์กลางของบัญชีมากกว่าสินทรัพย์เป็นศูนย์กลาง ส้อมของ Sui Move ให้ความยืดหยุ่นมากขึ้นในการสร้างและใช้งานสินทรัพย์เปิดประตูสู่โปรแกรมและเกมที่ทรงพลังมากมายที่มวลชนรอคอย

ดังนั้นคุณจะเปลี่ยนจากการพัฒนาด้วยภาษา Move มาตรฐานเป็น Sui Move ได้อย่างไร? นักพัฒนาที่คุ้นเคยกับ Move ดั้งเดิมจะเพิ่มภาษาแบบพกพาที่มีประโยชน์อย่างมากลงในกล่องเครื่องมือของพวกเขา ในการเจาะลึก Sui Move เราต้องคิดจากมุมมองของวัตถุและเรียนรู้คําแนะนําใหม่ ๆ แต่เครื่องมือเช่น Sui Move Analyzer และปลั๊กอิน WELLDONE Code สามารถทําให้กระบวนการนี้ง่ายขึ้น

🛠️ ปลั๊กอิน Sui Move Analyzer: https://zh.blog.sui.io/move-analyzer-tutorial/

🛠️ ปลั๊กอินรหัส WELLDONE: https://zh.blog.sui.io/remix-ide-welldone-code/

🔍 สํารวจเพิ่มเติมเกี่ยวกับการพัฒนาภาษาของ Move:

📄 ย้ายเอกสารสําหรับนักพัฒนาซอฟต์แวร์: https://docs-zh.sui-book.com/concepts/sui-move-concepts/

📄 เอกสารสําหรับนักพัฒนา Sui: https://docs.sui.io/guides/developer/sui-101

📄 บทเรียนการพัฒนาขั้นพื้นฐาน: https://zh.blog.sui.io/encode-club-sui-series-1/

ข้อจํากัดความรับผิดชอบ:

  1. บทความนี้พิมพ์ซ้ําจาก [TinTinLand] ลิขสิทธิ์ทั้งหมดเป็นของผู้เขียนต้นฉบับ [TinTinLand] หากมีการคัดค้านการพิมพ์ซ้ํานี้ โปรดติดต่อทีม Gate Learn และพวกเขาจะจัดการทันที
  2. ข้อจํากัดความรับผิดชอบความรับผิด: มุมมองและความคิดเห็นที่แสดงในบทความนี้เป็นเพียงของผู้เขียนและไม่ถือเป็นคําแนะนําการลงทุนใด ๆ
  3. การแปลบทความเป็นภาษาอื่นทําโดยทีม Gate Learn ห้ามคัดลอก แจกจ่าย หรือลอกเลียนแบบบทความที่แปล
แล้ว เว้นแต่จะกล่าวถึง

Let's Move Sui: อธิบายภาษาการย้ายพื้นฐานของซุย

กลางJun 12, 2024
Sui Network อาศัยการดําเนินการสัญญาอัจฉริยะ ซึ่งภาษา Move ที่พัฒนาขึ้นใน Rust บนบล็อกเชน Sui มีบทบาทสําคัญ เราเจาะลึกภาษา Move พื้นฐานของ Sui เพื่อสํารวจเสน่ห์ที่เป็นเอกลักษณ์ซึ่งแตกต่างจากภาษาการเขียนโปรแกรมบล็อกเชนอื่น ๆ
Let's Move Sui: อธิบายภาษาการย้ายพื้นฐานของซุย

Sui เป็นเครือข่ายสาธารณะ L1 ที่ออกแบบใหม่และสร้างขึ้นจากหลักการแรกโดยมีเป้าหมายเพื่อจัดหาแพลตฟอร์มการพัฒนาที่สามารถรองรับผู้ใช้พันล้านคนใน Web3 สําหรับผู้สร้างและนักพัฒนา

ในปีนี้ Move ภาษาโปรแกรมดั้งเดิมของ Sui ได้รับการอัปเดตและอัปเกรดที่สําคัญ เวอร์ชัน 2024 นําเสนอคุณสมบัติที่สําคัญเช่น Enums ฟังก์ชันมาโครไวยากรณ์วิธีการและอื่น ๆ คุณสมบัติใหม่ที่จําเป็นเหล่านี้แนะนําวิธีการใหม่ในการกําหนดข้อมูลและฟังก์ชันการโทรในภาษาการเขียนโปรแกรม Move ทําให้การพัฒนาแอปพลิเคชันบน Sui มีความยืดหยุ่นมากขึ้นและสอดคล้องกับความคาดหวังล่าสุดของภาษาโปรแกรม

บทบาทสําคัญของภาษา Move ในระบบนิเวศ Sui คืออะไร? ในความเป็นจริงระบบนิเวศ Sui ทั้งหมดถูกสร้างขึ้นบนรากฐานของแนวคิดหลักสามประการเพื่อให้มั่นใจว่าการชําระธุรกรรมทันทีและต้นทุนการทําธุรกรรมต่ําเสาหลักสามประการคือภาษา Move การดําเนินการธุรกรรมแบบขนานและเครื่องมือฉันทามติ Sui

แอปพลิเคชันบน Sui ใช้ภาษาสัญญาอัจฉริยะ Move ซึ่งมุ่งเน้นไปที่สัญญาอัจฉริยะและใช้ประโยชน์จากความสามารถในการปรับขนาดของ Sui และสภาพแวดล้อมที่มีปริมาณงานสูงอย่างเต็มที่ทําให้นักพัฒนาสามารถสนับสนุนแอปพลิเคชันที่หลากหลายได้อย่างรวดเร็วและคุ้มค่า

ในบทความก่อนหน้านี้ ("Sui สร้างแพลตฟอร์มการพัฒนาต่อไปสําหรับผู้ใช้ Web3 พันล้านคนได้อย่างไร") TinTinLand ได้แนะนํารายละเอียดเกี่ยวกับสถานการณ์พื้นฐานของข้อได้เปรียบทางเทคนิคโอกาสทางการตลาดและการก่อสร้างระบบนิเวศของ Sui วันนี้เราจะมาดําดิ่งสู่เลเยอร์พื้นฐานของ Sui - ย้ายภาษาสํารวจสไตล์ที่เป็นเอกลักษณ์ซึ่งแตกต่างจากภาษาการเขียนโปรแกรมบล็อกเชนอื่น ๆ

คุณสมบัติของ Move Language

เครือข่าย Sui อาศัยการดําเนินการสัญญาอัจฉริยะ ซึ่งภาษา Move ที่พัฒนาขึ้นใน Rust บนบล็อกเชน Sui มีบทบาทสําคัญ ภาษา Move ที่ใช้โดย Sui เมื่อเทียบกับ Solidity ของ ETH ให้ความปลอดภัยและความน่าเชื่อถือที่แข็งแกร่งกว่า นอกจากนี้ Sui ยังได้ปรับเปลี่ยนภาษา Move ให้เน้นวัตถุเป็นศูนย์กลางโดยเน้นการเขียนโปรแกรมเชิงวัตถุ

ภาษา Move on Sui ช่วยให้สามารถสร้างสัญญาอัจฉริยะที่กําหนดเองซึ่งปรับให้เหมาะกับกรณีการใช้งานเฉพาะช่วยในการปรับปรุงกระบวนการต่างๆที่เกี่ยวข้องกับการพัฒนาและการใช้งานโครงการและแอปพลิเคชันและช่วยลดค่าใช้จ่ายที่เกี่ยวข้องกับตัวกลางแบบดั้งเดิม ด้วยเหตุนี้นักพัฒนาและผู้ใช้จํานวนมากขึ้นคาดว่าจะเข้าสู่ระบบนิเวศของ Sui

นอกจากนี้การออกแบบภาษา Move ของ Sui ยังป้องกันการใช้จ่ายซ้ําซ้อน ด้วยวิธีนี้จะช่วยให้ Sui สร้างหนึ่งในแพลตฟอร์มสัญญาอัจฉริยะที่ปลอดภัยที่สุดโดยแก้ไขและปรับปรุงข้อบกพร่องโดยธรรมชาติของภาษาการเขียนโปรแกรมสกุลเงินดิจิทัลที่มีอยู่

Original Goal of the Move Language

Sam Blackshear ผู้ร่วมก่อตั้งและ CTO ของ Sui/Mysten Labs และผู้สร้างภาษา Move ได้พัฒนา Move ในขณะที่ทํางานในโครงการบล็อกเชน Diem ที่ Meta (เดิมชื่อ Facebook)

ก่อนที่จะออกแบบภาษา Move แซมใช้เวลาหลายเดือนในการศึกษา Solidity และ EVM อย่างรอบคอบ เขาเชื่อว่าภาษาสัญญาอัจฉริยะควรเป็นเหมือนภาษาเฉพาะโดเมน (DSL) มากกว่าภาษาโปรแกรมเอนกประสงค์ ภาษาเหล่านี้มุ่งเน้นไปที่งานเฉพาะเช่นการสร้างวัตถุการส่งและการแชร์วัตถุและการตรวจสอบการควบคุมการเข้าถึง สิ่งที่เป็นนามธรรมหลักของการเขียนโปรแกรมสัญญาอัจฉริยะควรหมุนรอบงานเหล่านี้เพื่อความปลอดภัยและประสิทธิภาพ

ด้วยเหตุนี้ แซมและทีมของเขาจึงตัดสินใจออกแบบภาษาใหม่ที่เรียกว่า Move แทนที่จะพยายามยกเครื่องเทคโนโลยีที่มีอยู่ เช่น EVM หรือ Solidity การย้ายเริ่มต้นด้วยรหัส B และรวมคุณสมบัติต่างๆเช่นความปลอดภัยของหน่วยความจําความปลอดภัยของประเภทความปลอดภัยของทรัพยากรและการจัดการวัตถุ / สินทรัพย์ที่ใช้งานง่าย

ด้วยการสร้างภาษา Move ที่ประสบความสําเร็จขั้นตอนต่อไปที่สําคัญคือการดึงดูดนักพัฒนาให้ใช้ Move เพื่อการพัฒนาโดยให้สิ่งจูงใจที่น่าสนใจ การเอาชนะอุปสรรคเช่นการจัดการคีย์ที่ซับซ้อนการติดตั้งกระเป๋าเงินและการได้มาซึ่งโทเค็นดั้งเดิมเป็นสิ่งสําคัญในการดึงดูดนักพัฒนาตามพวกเขา

ดังนั้นเป้าหมายของทีมพัฒนา Move คือการเปลี่ยนความท้าทายเหล่านี้ให้เป็นปัญหาทางเทคนิคโดยการจัดหาคุณสมบัติต่างๆเช่นการเข้าสู่ระบบ ZK ทําให้สามารถทําธุรกรรมได้โดยไม่จําเป็นต้องติดตั้งกระเป๋าเงินและอนุญาตให้ธุรกรรมของผู้สนับสนุนจ่ายค่าธรรมเนียมการทําธุรกรรมสําหรับผู้อื่นซึ่งจะช่วยให้นักพัฒนาสามารถสํารวจรูปแบบรายได้ที่สมบูรณ์ยิ่งขึ้น

ภาษา Move ในระบบนิเวศ Sui ซึ่งเน้นวัตถุเป็นศูนย์กลางด้วยคุณสมบัติต่างๆเช่นการจัดเก็บทั่วโลกการแสดงที่อยู่ของรหัสวัตถุและรหัสวัตถุที่ไม่ซ้ํากันทั่วโลกเป็นรากฐานสําหรับนวัตกรรมทางเทคโนโลยีอื่น ๆ ใน Sui

ข้อดีหลักของภาษา Move

ข้อได้เปรียบหลักของภาษา Move ที่ใช้โดยเครือข่าย Sui ได้แก่ :

  1. ภาษา Move แนะนําโมเดลทรัพยากร และวัตถุแต่ละชิ้นถือเป็นเอนทิตีที่ไม่ซ้ํากัน ทําให้มีความปลอดภัยมากขึ้น

  2. Move มีระบบประเภทและรูปแบบความเป็นเจ้าของที่เข้มงวด ซึ่งช่วยตรวจจับและป้องกันช่องโหว่ต่างๆ ในเวลาคอมไพล์ และเหมาะอย่างยิ่งสําหรับการประมวลผลธุรกรรมทางการเงินที่ซับซ้อน

  3. Move รองรับโมดูลาร์และความสามารถในการประกอบในระดับสูงทําให้นักพัฒนาสามารถสร้างโมดูลและไลบรารีที่ทํางานร่วมกันได้

Resource-Oriented Data

หนึ่งในนวัตกรรมหลักของ Move คือการแนะนําประเภทข้อมูลที่มุ่งเน้นทรัพยากรซึ่งทํางานเหมือนวัตถุในโลกแห่งความเป็นจริงและไม่สามารถคัดลอกหรือลบได้โดยไม่มีร่องรอยจึงป้องกันการปลอมแปลงข้อมูลโดยไม่ได้ตั้งใจ

Move รองรับอ็อบเจ็กต์หลักสองรายการ: สัญญาอัจฉริยะ (แพ็คเกจ Move ซึ่งเป็นชุดของโมดูล Move) และสินทรัพย์ดิจิทัล (ทรัพยากร) การสนับสนุนทรัพยากรดั้งเดิมของ Sui แสดงผ่านตารางการตรวจสอบไบต์โค้ด หลังจากย้ายซอร์สโค้ดถูกคอมไพล์เป็นไบต์โค้ดเครื่องมือวิเคราะห์แบบคงที่ที่เรียกว่า Move Bytecode Verifier ช่วยให้มั่นใจได้ว่า bytecode เป็นไปตามประเภทหน่วยความจําและกฎความปลอดภัยของทรัพยากรของ Sui การตรวจสอบนี้ช่วยให้มั่นใจได้ว่าไม่สามารถสร้างคัดลอกหรือเขียนด้วยรหัสนอกโมดูลที่กําหนดโดยไม่ได้ตั้งใจ นอกจากนี้ยังรวมถึงการป้องกันช่องโหว่บางอย่างเช่นการใช้จ่ายซ้ําซ้อนและการกลับใจ

Security Model

Move ช่วยแก้ไขปัญหาด้านความปลอดภัยบางอย่างที่มีอยู่ในภาษาที่มีอยู่ เช่น reentrancy, dynamic dispatch, ownership checks และ object serialization ทําให้นักพัฒนามีสภาพแวดล้อมที่ปลอดภัยยิ่งขึ้น

*ควรสังเกตว่าความปลอดภัยของ Move ไม่ได้ขึ้นอยู่กับการไม่มีการโจมตีของแฮ็กเกอร์จนถึงปัจจุบันเท่านั้น ไม่มีภาษาสัญญาอัจฉริยะใดที่สามารถป้องกันไม่ให้โปรแกรมเมอร์เขียนโค้ดที่ไม่ปลอดภัยได้ การตรวจสอบและการตรวจสอบอื่น ๆ ยังคงต้องระบุช่องโหว่ดังกล่าว

คุณค่าที่สําคัญของ Move อยู่ที่วัตถุที่พิมพ์และความปลอดภัยประเภท ความปลอดภัยประเภทใช้ไม่เพียง แต่ภายในโปรแกรม แต่ยังเมื่อโต้ตอบกับรหัสภายนอกหรือแหล่งที่ไม่น่าเชื่อถือ

คุณสมบัติความปลอดภัยในตัวอีกอย่างของ Move คือตัวตรวจสอบไบต์โค้ด ช่วยให้มั่นใจได้ว่า bytecode ของสัญญาอัจฉริยะนั้นถูกต้องและปฏิบัติการได้อย่างปลอดภัย การออกแบบตัวตรวจสอบ bytecode มีวัตถุประสงค์เพื่อป้องกันไม่ให้รหัสที่เป็นอันตรายดําเนินการบนห่วงโซ่เช่นการสร้างเหรียญปลอมการเพิ่มมูลค่าเหรียญเทียมหรือการคัดลอก / การเผาเหรียญที่มีอยู่

Modular design

Move ช่วยให้สามารถจัดระเบียบโค้ดเป็นโมดูลโดยแต่ละโมดูลจะมีเนมสเปซและกฎความเป็นส่วนตัวของตัวเองทําให้ง่ายต่อการบํารุงรักษาและนําโค้ดกลับมาใช้ใหม่ รหัสการย้ายถูกจัดเป็นโมดูลคล้ายกับสัญญาอัจฉริยะแต่ละรายการบนบล็อกเชนอื่น ๆ การออกแบบโมดูลาร์นี้เน้นใน Sui โดยมีเป้าหมายเพื่อส่งเสริมให้นักพัฒนารักษาโมดูลให้มีขนาดเล็กและกระจายไปตามไฟล์ต่างๆในขณะที่ยึดมั่นในโครงสร้างข้อมูลที่ชัดเจนและแบบแผนรหัส สิ่งนี้อํานวยความสะดวกทั้งการรวมแอปพลิเคชันและความเข้าใจของผู้ใช้

ประสบการณ์การพัฒนาที่มีประสิทธิภาพและปลอดภัยยิ่งขึ้น

สําหรับนักพัฒนา Web3 ประสบการณ์การพัฒนาบน Move และ Sui มีประสิทธิภาพและปลอดภัยยิ่งขึ้น ควรสังเกตว่าสําหรับโครงการ Web3 ที่พัฒนาโดยใช้ Move เพื่อใช้ประโยชน์จากข้อได้เปรียบด้านความปลอดภัยของ Move อย่างเต็มที่สัญญาอัจฉริยะทั้งหมดในระบบต้องใช้ Move อย่างสม่ําเสมอ เมื่อสัญญาทั้งหมดถูกเขียนใน Move ผู้ตรวจสอบความถูกต้องสามารถเรียกใช้และรับรองสมมติฐานที่ชัดเจนเกี่ยวกับรหัสและวัตถุ

ตัวอย่างเช่น Bucket Protocol กําลังสร้างโครงการ DeFi บนระบบนิเวศ Sui เมื่อแสดงสถาปัตยกรรมระบบและการทํางานร่วมกันพวกเขากล่าวโดยเฉพาะว่าหากพวกเขาเขียนโครงการใน Solidity อาจใช้เวลาแปดเดือน แต่การใช้ Move ใช้เวลาเพียงสองเดือนและพวกเขามีความมั่นใจอย่างมากในด้านความปลอดภัย วิธีการทํางานของ Move สอดคล้องกับแนวคิดเรื่ององค์ประกอบของโครงการอย่างใกล้ชิด

Sui สําหรับภาษา Move มาตรฐาน

นวัตกรรมและการสํารวจ

Sui Move พัฒนามาจากภาษา Move และได้รับการออกแบบมาเพื่อตอบสนองความต้องการของบล็อกเชนประสิทธิภาพสูงใหม่ได้ดีขึ้นดังนั้นจึงมีความแตกต่างจากภาษา Move มาตรฐาน จากภาษา Move มาตรฐาน Sui ใช้ประโยชน์จากความปลอดภัยและความยืดหยุ่นเพื่อปรับปรุงปริมาณงานและลดเวลาแฝงขั้นสุดท้ายและทําให้การเขียนโปรแกรม Move ง่ายต่อการฝึกฝน

ภาษาโปรแกรม Sui Move มีความแตกต่างที่ชัดเจนจาก Move มาตรฐาน ได้แก่ :

  • Sui ใช้ที่เก็บข้อมูลส่วนกลางที่เน้นวัตถุเป็นของตัวเอง
  • ที่อยู่แสดงถึงตัวระบุวัตถุ
  • วัตถุ Sui มีตัวระบุที่ไม่ซ้ํากันทั่วโลก
  • Sui มีตัวเริ่มต้นโมดูล (init)
  • จุดเริ่มต้น Sui ใช้การอ้างอิงวัตถุเป็นอินพุต

Standard Move language

Move เปิดตัวในปี 2020 และปัจจุบันได้รับอนุญาตภายใต้ใบอนุญาตโอเพ่นซอร์ส Apache 2.0 มีการใช้กันอย่างแพร่หลายในเครือข่ายเช่น Aptos, StarCoin, 0L, Rooch, Movement และ Offshore

Standard Move ใช้ภาษาการเขียนโปรแกรม Rust และเป็นสากลมากกว่าเมื่อเทียบกับภาษาบล็อกเชนที่มีอยู่ ซึ่งมักจะเชื่อมโยงกับบล็อกเชนเฉพาะ เป้าหมายของ Sam ผู้สร้างภาษา Move คือการสร้าง JavaScript ของ Web3 ซึ่งเป็นภาษาข้ามแพลตฟอร์มที่ช่วยให้นักพัฒนาสามารถใช้ทักษะของตนในสภาพแวดล้อมเครือข่ายที่หลากหลาย

จุดสนใจหลักของ Move คือสัญญาอัจฉริยะซึ่งรวมถึงประเภทและการแสดงมูลค่าสําหรับสินทรัพย์และการควบคุมการเข้าถึงซึ่งเป็นแนวคิดพื้นฐานสองประการที่นักพัฒนา DApp มักพบเมื่อเขียนโค้ด สิ่งที่เป็นนามธรรมชั้นหนึ่งของ Move ทําให้การเขียนโปรแกรมปลอดภัยและมีประสิทธิภาพมากขึ้น

จาก Move to Sui Move

แม้ว่าภาษา Move จะไม่เชื่อเรื่องแพลตฟอร์ม แต่ก็ถูก จํากัด ด้วยรูปแบบที่เน้นบัญชีเป็นศูนย์กลาง เมื่อแซมและทีมของเขาที่ Mysten Labs มุ่งเน้นไปที่การสร้าง Sui พวกเขามุ่งเน้นไปที่การสร้างโครงสร้างพื้นฐานเครือข่ายที่เป็นสากลมากกว่าขอบเขตที่ จํากัด ของบล็อกเชน Diem ในโครงการ Libra

Sui Move ได้รับการออกแบบให้เป็นสาขาหนึ่งของภาษา Move เพื่อรองรับนวัตกรรมของ Sui ได้ดียิ่งขึ้น เช่น โมเดลฉันทามติ โดยมีความแตกต่างที่สําคัญที่สุดคือการนําโมเดลการจัดเก็บข้อมูลเชิงวัตถุมาใช้ ด้วยการใช้ Sui Move เป็นภาษาการเขียนโปรแกรมดั้งเดิมเครือข่าย Sui จึงบรรลุประสิทธิภาพการทําธุรกรรมที่น่าประทับใจด้วยแอพที่เขียนใน Sui Move โดยใช้ประโยชน์จากกลไกฉันทามติของ Sui

เมื่อปีที่แล้ว แซมให้รายละเอียดความแตกต่างระหว่าง Move และ Sui Move ในบทความชื่อ "Why We Created Sui Move" ซึ่งแสดงคุณสมบัติและความสามารถของ Sui Move

🔗 อ่านบทความฉบับเต็มที่นี่: https://blog.sui.io/why-we-created-sui-move

การมุ่งเน้นไปที่ออบเจ็กต์ทําให้การประมวลผลธุรกรรมแบบขนานเป็นไปได้โดยให้ประสิทธิภาพที่ดีกว่าเมื่อเทียบกับบล็อกเชนที่ จํากัด เฉพาะการประมวลผลแบบอนุกรม ในระดับที่สูงขึ้นรันไทม์ Sui สามารถกําหนดอ็อบเจ็กต์พิเศษเทียบกับอ็อบเจ็กต์ที่ใช้ร่วมกันได้โดยตรงโดยดําเนินการตรวจสอบความถูกต้องทันทีกับอดีตและใช้การตรวจสอบฉันทามติในตอนหลัง

จากมุมมองของนักพัฒนา Sui ไม่จําเป็นต้องทํางานก่อนและหลังการทําธุรกรรมที่เกี่ยวข้องกับการเป็นเจ้าของสินทรัพย์ ในขณะที่ภาษา Move ดั้งเดิมควบคุมที่เก็บข้อมูลส่วนกลางผ่านที่อยู่และชื่อประเภท Sui Move จะใช้ ID ออบเจ็กต์สําหรับการควบคุมพื้นที่จัดเก็บส่วนกลาง การเน้นสถานะวัตถุทําให้ Sui Move มีความเป็นไปได้ที่ไร้ขีด จํากัด เช่นความสามารถในการประกอบซึ่งวัตถุสามารถเป็นเจ้าของวัตถุอื่นได้

Embark on the Move Development Journey

Move และภาษาบล็อกเชนอื่น ๆ ได้รับอิทธิพลอย่างลึกซึ้งจากประเพณีของการเข้ารหัสโดยเน้นที่การเป็นเจ้าของสินทรัพย์มากขึ้นทําให้พวกเขาเป็นศูนย์กลางของบัญชีมากกว่าสินทรัพย์เป็นศูนย์กลาง ส้อมของ Sui Move ให้ความยืดหยุ่นมากขึ้นในการสร้างและใช้งานสินทรัพย์เปิดประตูสู่โปรแกรมและเกมที่ทรงพลังมากมายที่มวลชนรอคอย

ดังนั้นคุณจะเปลี่ยนจากการพัฒนาด้วยภาษา Move มาตรฐานเป็น Sui Move ได้อย่างไร? นักพัฒนาที่คุ้นเคยกับ Move ดั้งเดิมจะเพิ่มภาษาแบบพกพาที่มีประโยชน์อย่างมากลงในกล่องเครื่องมือของพวกเขา ในการเจาะลึก Sui Move เราต้องคิดจากมุมมองของวัตถุและเรียนรู้คําแนะนําใหม่ ๆ แต่เครื่องมือเช่น Sui Move Analyzer และปลั๊กอิน WELLDONE Code สามารถทําให้กระบวนการนี้ง่ายขึ้น

🛠️ ปลั๊กอิน Sui Move Analyzer: https://zh.blog.sui.io/move-analyzer-tutorial/

🛠️ ปลั๊กอินรหัส WELLDONE: https://zh.blog.sui.io/remix-ide-welldone-code/

🔍 สํารวจเพิ่มเติมเกี่ยวกับการพัฒนาภาษาของ Move:

📄 ย้ายเอกสารสําหรับนักพัฒนาซอฟต์แวร์: https://docs-zh.sui-book.com/concepts/sui-move-concepts/

📄 เอกสารสําหรับนักพัฒนา Sui: https://docs.sui.io/guides/developer/sui-101

📄 บทเรียนการพัฒนาขั้นพื้นฐาน: https://zh.blog.sui.io/encode-club-sui-series-1/

ข้อจํากัดความรับผิดชอบ:

  1. บทความนี้พิมพ์ซ้ําจาก [TinTinLand] ลิขสิทธิ์ทั้งหมดเป็นของผู้เขียนต้นฉบับ [TinTinLand] หากมีการคัดค้านการพิมพ์ซ้ํานี้ โปรดติดต่อทีม Gate Learn และพวกเขาจะจัดการทันที
  2. ข้อจํากัดความรับผิดชอบความรับผิด: มุมมองและความคิดเห็นที่แสดงในบทความนี้เป็นเพียงของผู้เขียนและไม่ถือเป็นคําแนะนําการลงทุนใด ๆ
  3. การแปลบทความเป็นภาษาอื่นทําโดยทีม Gate Learn ห้ามคัดลอก แจกจ่าย หรือลอกเลียนแบบบทความที่แปล
แล้ว เว้นแต่จะกล่าวถึง
เริ่มตอนนี้
สมัครและรับรางวัล
$100