Astral ผู้พัฒนาเครื่องมือพัฒนาซอฟต์แวร์ภาษาไพธอน โดยเฉพาะตัวติดตั้งแพ็กเกจ uv ปล่อยโครงการ ty ตัวตรวจชนิดตัวแปรภาษาไพธอนความเร็วสูงในสถานะเบต้า เขียนด้วยภาษา Rust เช่นเดียวกับ uv
จุดเด่นของ ty คือเน้นความเร็วอย่างมาก เร็วกว่าโครงการเก่าแก่อย่าง mypy ถึง 10-60 เท่าตัว หรือโครงการใหม่ๆ อย่าง Pyrefly ของเฟซบุ๊กก็ยังเร็วกว่าเท่าตัว อีกจุดเด่นนอกจากความเร็วคือการแสดงความผิดพลาดที่เข้าใจง่าย และหลายครั้งก็แนะนำวิธีการแก้ไขให้เลย
การใช้งานง่ายที่สุดคือติดตั้งส่วนขยาย ty ใน VS Code ซึ่งจะทำให้ได้ฟีเจอร์ของภาษาจำนวนมาก เช่น autocomplete, auto-import, symbol rename นอกจากนี้ Astral ยังคาดหวังให้ ty กลายเป็นเครื่องมือสำคัญของการตรวจสอบโค้ดลึกๆ เช่น การตรวจโค้ดที่ไม่ได้ใช้งาน, การดึง dependency ที่ไม่ได้ใช้, การวิเคราะห์ช่องโหว่ต่างๆ
โครงการ ty เพิ่งเริ่มปล่อยแพ็กเกจเมื่อกลางปีที่ผ่านมาโดยใช้เลขเวอร์ชั่น 0.0.0 หลังจากเข้าสู่สถานะเบต้าก็ได้เป็นเวอร์ชั่น 0.0.2 และตอนนี้ก็ออกเวอร์ชั่นใหม่เรื่อยๆ จนเป็น 0.0.4
ที่มา - Astral
on
บริษัทนี้…
btoy Fri, 19/12/2025 - 13:38
บริษัทนี้ เค้าจริงจังกับการพัฒนา ecosystem ของ Python มากๆ
สงสัยอย่างเดียวว่าจะทำเงินยั…
lew Fri, 19/12/2025 - 15:02
In reply to บริษัทนี้… by btoy
สงสัยอย่างเดียวว่าจะทำเงินยังไง
จริงครับ
btoy Sat, 20/12/2025 - 11:28
In reply to สงสัยอย่างเดียวว่าจะทำเงินยั… by lew
จริงครับ
ขอบพระคุณทำ tool ดีๆ มาให้
tg-thaigamer Fri, 19/12/2025 - 13:40
ขอบพระคุณทำ tool ดีๆ มาให้
ใช้ Go ก็ได้ไหมนะกรณีนี้…
big50000 Fri, 19/12/2025 - 17:43
ใช้ Go ก็ได้ไหมนะกรณีนี้ หรือทาง Astral ถูกจริตกับ Rust อยู่แล้ว
น่าจะเร็วพอ แต่ถ้าชินกับ…
lew Fri, 19/12/2025 - 18:57
In reply to ใช้ Go ก็ได้ไหมนะกรณีนี้… by big50000
น่าจะเร็วพอ แต่ถ้าชินกับ Rust มาตลอดก็ไม่ค่อยมีเหตุผลที่จะใช้นะครับ
มีประโยชน์อย่างไร ในเมื่อ…
aruno Fri, 19/12/2025 - 19:44
มีประโยชน์อย่างไร ในเมื่อ python เป็น dynamic type?
มีประโยชน์ทันทีถ้าเข้าใจว่าท…
big50000 Sat, 20/12/2025 - 17:15
In reply to มีประโยชน์อย่างไร ในเมื่อ… by aruno
มีประโยชน์ทันทีถ้าเข้าใจว่าทำไม Dynamic Type ก็มีข้อเสียในตัวมันเอง คนเลยอยากให้ภาษา Dynamic สามารถใช้งานแบบ Static ได้
Dynamic Type มักก่อปัญหาโดยไม่ตั้งใจโดยเฉพาะอย่างยิ่งเมื่อเราไม่สามารถทราบได้ว่า Type ของข้อมูลที่เข้ามาเป็นแบบไหนจนกว่าจะเอาไปรัน และบางปัญหาสามารถอยู่ได้ลึกมากจนกว่าจะถึง Procedure ที่มีปัญหา โค้ดก็น่าจะเข้า Production ไปแล้ว อย่างเบาถ้าเป็น Type Error และสามารถสั่ง Throw/Handle ได้ก็โอเคอยู่ แต่ถ้าเกิดกับปัญหาที่เป็น Type ข้อมูลที่ Infer (เปลี่ยนข้ามไปอีกตัวแปรที่มีความสัมพันธ์กัน เช่น Floating Point ไป Integer) ไปแล้วอาจจะไปเปลี่ยนแปลงความแม่นยำ หรืออย่างร้ายคือทำให้ค่าออกมาเพี้ยนจนเอามาใช้ไม่ได้ ปัญหานี้ Debug ยากมาก ปัจจุบันผมเจอปัญหานี้กับแอปฯ ที่ใช้กับที่ทำงานผมที่ขนาดเขียนด้วย TS ยังมีค่าออกมาอ๊อง ๆ บ่อยมาก
IDE ที่เข้าใจถึงความสำคัญเรื่อง Type Infer ของ Dynamic Type จะแจ้งเตือนเสมอถ้ามีการ Infer Type ที่ก่อความผิดพลาดได้ แต่หลาย ๆ ครั้งมันก็ไม่ได้แม่นขนาดนั้นและก็มีเคสหลุดออกมาบ่อย ๆ