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

กลาง6/12/2024, 2:46:33 PM
Sui Network อาศัยการดําเนินการสัญญาอัจฉริยะ ซึ่งภาษา Move ที่พัฒนาขึ้นใน Rust บนบล็อกเชน Sui มีบทบาทสําคัญ เราเจาะลึกภาษา 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: อธิบายภาษาการย้ายพื้นฐานของซุย

กลาง6/12/2024, 2:46:33 PM
Sui Network อาศัยการดําเนินการสัญญาอัจฉริยะ ซึ่งภาษา Move ที่พัฒนาขึ้นใน Rust บนบล็อกเชน Sui มีบทบาทสําคัญ เราเจาะลึกภาษา 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
It seems that you are attempting to access our services from a Restricted Location where Gate.io is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.