กรุณาปิด โปรแกรมบล๊อกโฆษณา เพราะเราอยู่ได้ด้วยโฆษณาที่ท่านเห็น
Please close the adblock program. Because we can live with the ads you see


News

ข่าว ทีมงานภาษา Go ยอมแพ้ เลิกหาทางแก้ Syntax ส่วนการตรวจความผิดพลาดหลังเรียก API ระบุไม่มีทางไหนได้รับการยอมรับ

  • ผู้เริ่มหัวข้อ ผู้เริ่มหัวข้อ News 
  • วันที่เริ่มต้น วันที่เริ่มต้น

News 

Moderator

สมาชิกทีมงาน
Moderator
Verify member
เข้าร่วม
1 มิถุนายน 2011
ข้อความ
15,229
คะแนนปฏิกิริยา
0
คะแนน
36
ทีมงานภาษา Go ยอมแพ้ เลิกหาทางแก้ Syntax ส่วนการตรวจความผิดพลาดหลังเรียก API ระบุไม่มีทางไหนได้รับการยอมรับ
Body

Robert Griesemer วิศวกรกูเกิลในทีมงานภาษา Go เขียนบล็อกสรุปถึงความพยายามที่จะสร้าง syntax ใหม่เพื่อจัดการความผิดพลาดหลังเรียก API ภายนอก เนื่องจากภาษา Go นั้นไม่รองรับ exception และความผิดพลาดต่างๆ จากการเรียกฟังก์ชั่นจะถูกรายงานออกมาออกในรูปแบบของการคืนค่าซึ่งโปรแกรมเมอร์ Go ก็มักใช้ตัวแปรชื่อ err มารับค่านี้ไว้ และตรวจสอบว่าเกิดความผิดพลาดหรือไม่

แต่รูปแบบการตรวจสอบความผิดพลาดนี้ทำให้โค้ดไม่สวยในหลายกรณี โดยเฉพาะเมื่อมีการเรียกฟังก์ชั่นจำนวนมากๆ ก็จะเกิด if ที่ใช้ตรวจความผิดพลาดเต็มไปหมด

Griesemer ระบุว่าทีมงานรับฟังความเห็นนี้ และหลายปีที่ผ่านมาก็พยายามหาทางแก้ปัญหาเริ่มตั้งแต่ปี 2018 เป็นต้นมา และข้อเสนอหลายอันก็สร้างข้อถกเถียงอย่างกว้างขวาง เช่น ข้อเสนอ try เมื่อปี 2019 มีคอมเมนต์เถียงกันกว่า 900 คอมเมนต์ หรือข้อเสนอ ? เมื่อปี 2024 ที่ยืม syntax มาจากภาษา Rust

หลังจากถกเถียงกันมาหลายปี Griesemer ระบุว่า syntax การจัดการความผิดพลาดของ Go ใช้งานได้ดี แม้จะทำให้โค้ดยาวไปบ้าง และการนำอิมพลีเมนต์ฟีเจอร์จัดการความผิดพลาดใหม่ก็สร้างความขัดแย้งในกลุ่มผู้ใช้ และฟีเจอร์การจัดการความผิดพลาดนี้ต่างจากฟีเจอร์อื่น เพราะถ้าใส่เข้ามาและมีคนเริ่มใช้ โปรแกรมเมอร์อื่นๆ ก็จะถูกบังคับให้ใช้งานไปพร้อมกัน ขณะที่ฟีเจอร์อื่น เช่น Generics คนที่ไม่สนใจใช้งานก็ยังทำงานได้ต่อไปโดยไม่ต้องใช้ฟีเจอร์นี้ นอกจากนี้ไลบรารีใหม่ๆ ก็ช่วยลดความยืดเยื้อของโค้ดลงได้บ้าง เช่น cmp.Or ก็ใช้จัดการความผิดพลาดได้ทีหลังหลายๆ API call

จากข้อสรุปทั้งหมด Griesemer ประกาศว่าทีมงาน Go ยังไม่รับข้อเสนอการจัดการความผิดพลาดอีกแล้ว และทีมงานจะปิดข้อเสนอทั้งหมด

ที่มา - Go Blog

lew Wed, 04/06/2025 - 22:44

Continue reading...
 

กรุณาปิด โปรแกรมบล๊อกโฆษณา เพราะเราอยู่ได้ด้วยโฆษณาที่ท่านเห็น
Please close the adblock program. Because we can live with the ads you see
กลับ
ยอดนิยม