Grow with AppMaster Grow with AppMaster.
Become our partner arrow ico

Go 1.18 เปิดตัวอย่างเป็นทางการพร้อมความสามารถ Generics ที่แปลกใหม่

Go 1.18 เปิดตัวอย่างเป็นทางการพร้อมความสามารถ Generics ที่แปลกใหม่

ในที่สุด ภาษาโปรแกรม Go 1.18 ที่ได้รับการคาดหวังอย่างสูงก็ได้เปิดตัวเป็นเวอร์ชันที่ใช้งานจริง โดยมีความสามารถทั่วไปที่แปลกใหม่ นับเป็นการเปลี่ยนแปลงที่สำคัญที่สุดในการเขียนโปรแกรมภาษา Go นับตั้งแต่เปิดตัว Go 1.0 ในปี 2555 Go 1.18 สามารถดาวน์โหลดได้ที่ go.dev ณ วันที่ 15 มีนาคม

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

เซิร์ฟเวอร์ภาษา Go, gopls และส่วนขยาย Visual Studio Code Go รองรับ generics แล้ว สำหรับคำแนะนำในการติดตั้ง gopls ด้วยชื่อสามัญ โปรดดูเอกสารประกอบ

การเปิดตัวการผลิต Go 1.18 เป็นไปตามขั้นตอนเบต้าและเผยแพร่ผู้สมัคร การเปิดตัวครั้งแรกคาดว่าจะมีขึ้นในเดือนกุมภาพันธ์ พ.ศ. 2565 แต่ล่าช้าไปจนถึงกลางเดือนมีนาคม Go 1.18 Beta 1 ซึ่งเปิดตัวเมื่อวันที่ 14 ธันวาคม เป็นรุ่นตัวอย่างที่สำคัญที่สุดของภาษาโอเพ่นซอร์สที่พัฒนาโดย Google เพื่อรองรับรหัสทั่วไปโดยใช้ประเภทพารามิเตอร์ รุ่นเบต้านี้ยังเป็น Go beta ที่มีการดาวน์โหลดมากที่สุดเท่าที่เคยมีมา โดยมีการดาวน์โหลดมากกว่ารุ่นเบต้าก่อนหน้านี้ถึงสองเท่า

การเขียนโปรแกรมทั่วไปเป็นการเพิ่มประสิทธิภาพที่ช่วยให้สามารถแสดงฟังก์ชันและโครงสร้างข้อมูลในรูปแบบทั่วไปโดยแยกประเภทต่างๆ ออกมา สิ่งนี้อำนวยความสะดวกในการแบ่งปันรหัสและทำให้การสร้างโปรแกรมง่ายขึ้น

ทีมงาน Go แนะนำให้ใช้ความระมัดระวังเมื่อเข้าใกล้ความสามารถทั่วไปใหม่ เนื่องจากข้อบกพร่องใหม่อาจปรากฏขึ้นพร้อมกับคุณสมบัติใหม่ที่สำคัญใดๆ นอกจากนี้ การสนับสนุนสำหรับกรณีที่ละเอียดอ่อนบางอย่าง เช่น ประเภททั่วไปแบบเรียกซ้ำบางประเภท ได้ถูกเลื่อนไปยังการเปิดตัวในอนาคต

แม้จะมีคำเตือนนี้ แต่ก็ยังมีรายงานว่าผู้ใช้กลุ่มแรกพอใจกับฟีเจอร์ใหม่นี้ มีการเผยแพร่บทช่วยสอนสั้นๆ เกี่ยวกับการเริ่มต้นใช้งานยาชื่อสามัญ ที่นี่ แม้ว่า Go จะมีประเภทอินเทอร์เฟซ ซึ่งเป็นรูปแบบหนึ่งของการเขียนโปรแกรมทั่วไป แต่ก็ขาดคุณสมบัติบางประการที่นักพัฒนา Go ต้องการจากประเภททั่วไป ดังที่รายงานในบล็อกโพสต์เดือนกรกฎาคม 2019 ตัวอย่างเช่น ผู้เสนอ Go generics ค้นหาฟังก์ชันเช่น Reverse โดยไม่ต้องกังวลกับประเภทองค์ประกอบของชิ้น

บันทึกย่อ ที่เผยแพร่สำหรับ Go 1.18 ยังเน้นคุณลักษณะหลักอื่นๆ เช่น:

  • การสนับสนุนในตัวสำหรับการเขียนการทดสอบโดยใช้ fuzzing เพื่อระบุอินพุตที่ทำให้โปรแกรมหยุดทำงานหรือส่งคืนคำตอบที่ไม่ถูกต้อง คุณลักษณะนี้เป็นการทดลองใน Go 1.18
  • โหมดพื้นที่ทำงาน Go ช่วยให้นักพัฒนาสามารถทำงานกับโมดูล Go หลายโมดูลได้พร้อมกัน ซึ่งจำเป็นสำหรับโครงการที่กว้างขวางมากขึ้น
  • คำสั่ง go version -m ที่ปรับปรุงแล้วซึ่งบันทึกรายละเอียดบิลด์ เช่น แฟล็กคอมไพเลอร์
  • ตัวแปรสภาพแวดล้อม GOAMD64 ช่วยให้ผู้ใช้สามารถเลือกสถาปัตยกรรม AMD64 ได้สี่เวอร์ชัน
  • การปรับปรุงประสิทธิภาพของ CPU บน Apple M1, ARM64 และ PowerPC64 มากถึง 20% ซึ่งเป็นผลมาจากการขยายตัวของ Go 1.17 register ABI Calling Convention ไปยังสถาปัตยกรรมเหล่านี้
  • พอร์ต Windows/Arm และ Windows/Arm64 รองรับการถอนล่วงหน้าแบบไม่ให้ความร่วมมือ ทำให้ความสามารถนี้พร้อมใช้งานสำหรับพอร์ต Windows ทั้งสี่พอร์ต และอาจแก้ไขบั๊กเล็กน้อยที่พบเมื่อเรียกใช้ฟังก์ชัน Win32 ที่บล็อกเป็นระยะเวลานาน
  • ค่าใช้จ่ายการรวบรวมขยะที่คาดเดาได้มากขึ้นเมื่อแหล่งที่มาที่ไม่ใช่ฮีปของงาน GC มีความสำคัญ เนื่องจากการรวมแหล่งที่มาเหล่านี้เมื่อกำหนดความถี่ของการรวบรวมขยะ

Go 1.17 เปิดตัวในเดือนสิงหาคม Go เป็นที่รู้จักกันดีที่สุดสำหรับการใช้ในการพัฒนาระบบคอนเทนเนอร์ Docker และได้รับการออกแบบให้เป็นภาษาโปรแกรมที่เรียบง่ายและเรียนรู้ได้ง่ายพร้อมการสนับสนุนที่แข็งแกร่งสำหรับการทำงานพร้อมกัน สำหรับนักพัฒนาที่ต้องการสำรวจโซลูชัน no-code เช่น แพลตฟอร์มของ AppMaster เพื่อสร้างแอปพลิเคชันบนเว็บ อุปกรณ์พกพา และแบ็คเอนด์ วิธีนี้สามารถช่วยเร่งความเร็วการพัฒนาแอปพลิเคชันและลดค่าใช้จ่ายในขณะที่ขจัดปัญหาทางเทคนิค

กระทู้ที่เกี่ยวข้อง

AppMaster ที่ BubbleCon 2024: สำรวจเทรนด์ No-Code
AppMaster ที่ BubbleCon 2024: สำรวจเทรนด์ No-Code
AppMaster เข้าร่วมงาน BubbleCon 2024 ในนิวยอร์กซิตี้ เพื่อรับข้อมูลเชิงลึก ขยายเครือข่าย และสำรวจโอกาสในการขับเคลื่อนการสร้างสรรค์นวัตกรรมในพื้นที่การพัฒนาแบบไร้โค้ด
สรุป FFDC 2024: ข้อมูลเชิงลึกที่สำคัญจากการประชุมนักพัฒนา FlutterFlow ในนิวยอร์ก
สรุป FFDC 2024: ข้อมูลเชิงลึกที่สำคัญจากการประชุมนักพัฒนา FlutterFlow ในนิวยอร์ก
FFDC 2024 จุดประกายให้เมืองนิวยอร์กซิตี้ด้วยการนำเสนอข้อมูลเชิงลึกที่ล้ำสมัยเกี่ยวกับการพัฒนาแอพด้วย FlutterFlow ให้กับนักพัฒนา ด้วยเซสชันที่นำโดยผู้เชี่ยวชาญ การอัปเดตพิเศษ และการสร้างเครือข่ายที่ไม่มีใครเทียบได้ นับเป็นงานที่ไม่ควรพลาด!
การเลิกจ้างพนักงานด้านเทคโนโลยีในปี 2024: คลื่นลูกใหม่ที่ส่งผลกระทบต่อนวัตกรรม
การเลิกจ้างพนักงานด้านเทคโนโลยีในปี 2024: คลื่นลูกใหม่ที่ส่งผลกระทบต่อนวัตกรรม
จากการเลิกจ้างพนักงาน 60,000 คนใน 254 บริษัท รวมถึงบริษัทยักษ์ใหญ่เช่น Tesla และ Amazon ทำให้ปี 2024 จะเห็นการเลิกจ้างพนักงานในสายเทคโนโลยีอย่างต่อเนื่อง ซึ่งส่งผลต่อภูมิทัศน์ของนวัตกรรม
เริ่มต้นฟรี
แรงบันดาลใจที่จะลองสิ่งนี้ด้วยตัวเอง?

วิธีที่ดีที่สุดที่จะเข้าใจถึงพลังของ AppMaster คือการได้เห็นมันด้วยตัวคุณเอง สร้างแอปพลิเคชันของคุณเองในไม่กี่นาทีด้วยการสมัครสมาชิกฟรี

นำความคิดของคุณมาสู่ชีวิต