3 คะแนน โดย GN⁺ 2023-10-26 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ผู้เขียน Jarrod Overson แบ่งปันประสบการณ์จากการใช้ Rust เป็นเวลา 3 ปี โดยส่วนใหญ่เพื่อ WebAssembly
  • เขาใช้ Rust สร้าง Wick ซึ่งเป็นทั้งแอปพลิเคชันเฟรมเวิร์กและรันไทม์ที่ใช้ WebAssembly เป็นระบบโมดูลหลัก
  • แนวทางการพัฒนาที่ขับเคลื่อนด้วยการทดสอบของ Rust ช่วยให้ดูแลรักษาได้มากขึ้นโดยใช้ความพยายามน้อยลง และลดความจำเป็นของการทดสอบจำนวนมาก
  • ผู้เขียนพบว่า การเขียนโปรแกรมด้วย Rust ช่วยพัฒนาทักษะการเขียนโค้ดในภาษาอื่นด้วย
  • Clippy ซึ่งเป็น linter ของ Rust สนับสนุนกฎจำนวนมากที่ช่วยปรับปรุงประสิทธิภาพ ความอ่านง่าย และลดความอ้อมค้อมที่ไม่จำเป็น
  • อย่างไรก็ตาม ผู้เขียนชี้ให้เห็นว่าไลบรารีและเครื่องมือของ Rust มักไม่ครอบคลุมกรณีการใช้งานบางอย่างโดยเฉพาะ
  • เขาวิจารณ์ความยากลำบากในการเผยแพร่แพ็กเกจไปยัง crates.io ซึ่งเป็น package registry ของ Rust เนื่องจากข้อจำกัดบางประการ
  • ผู้เขียนยังวิจารณ์ความเป็น async ของ Rust โดยอธิบายว่าเหมือนเป็นสิ่งที่มาทีหลัง และมักนำไปสู่ข้อผิดพลาดที่แก้ไขได้ยาก
  • ระบบ type ที่หลากหลายของ Rust อาจทำให้การรีแฟกเตอร์ทำได้ยาก
  • แม้จะมีข้อเสีย ผู้เขียนก็ยังชื่นชมความหลากหลายและความแข็งแกร่งของ Rust
  • เขาสรุปว่า Rust อาจไม่เหมาะกับโปรเจ็กต์ที่ต้องการการทำซ้ำอย่างรวดเร็ว แต่ก็น่าพิจารณาสำหรับโปรเจ็กต์ที่มีขอบเขตชัดเจน หรือโปรเจ็กต์ที่สามารถรับต้นทุนล่วงหน้าได้มากกว่า

1 ความคิดเห็น

 
GN⁺ 2023-10-26
ความเห็นจาก Hacker News
  • ผู้ใช้บางคนรู้สึกว่า Rust ทำให้ทำงานได้ไม่ค่อยมีประสิทธิภาพและมีข้อจำกัด จึงชอบภาษาอื่นอย่าง Zig มากกว่าเพราะช่วยให้โฟกัสกับการเขียนโค้ดได้มากขึ้น
  • การขาด namespace บน crates.io เป็นประเด็นที่ถูกวิจารณ์ เพราะทำให้ใครก็ได้อ้างสิทธิ์ชื่อแพ็กเกจแบบ global ซึ่งอาจก่อให้เกิดปัญหาได้
  • ผู้ใช้บางคนชื่นชมไลบรารีจำนวนมากของ Rust และระบบเอกสารที่ยอดเยี่ยม
  • มีความกังวลเกี่ยวกับการไม่มีการตั้งค่า lint แบบ global สำหรับโปรเจกต์ แต่ก็มีการเสนอวิธีแก้โดยใช้ไฟล์ .cargo/config.toml
  • ผู้ใช้บางคนแสดงความไม่พอใจที่ครेटระดับล่างซึ่งสำคัญหลายตัวค้างอยู่ที่เวอร์ชัน 0.x
  • มีการเน้นถึงปัญหาระดับภาษาของ back reference และมีความต้องการโซลูชันสำหรับ static analysis
  • ผู้ใช้บางคนใช้งานคอมไพเลอร์ Rust ได้อย่างมีประโยชน์ และชื่นชมข้อความ error ของมัน
  • มีการถกเถียงกันถึงความจำเป็นของการทดสอบใน Rust โดยบางคนมองว่าถ้าคอมไพล์ผ่านก็น่าจะถูกต้องแล้ว ขณะที่อีกบางคนยืนยันว่าตรรกะทางธุรกิจยังคงต้องได้รับการทดสอบ
  • ผู้ใช้บางคนรู้สึกว่า Rust ใช้งานได้ไม่สะดวก แต่ก็ยังเรียนรู้ Rust ด้วยเหตุผลทางอาชีพ
  • ผู้ใช้บางคนชื่นชม Rust ที่ทำลายความเชื่อว่าตัวโปรแกรมเมอร์ต้องควบคุมและรับรู้ทุกอย่างที่คอมไพเลอร์ทำได้อย่างสมบูรณ์
  • มีการถกเถียงกันเรื่องการใช้ async ใน Rust โดยบางคนมองว่านี่เป็นต้นตอของความไม่พอใจ ขณะที่อีกบางคนเชื่อว่าควรใช้มันกับทุกอย่าง