On this page
ผู้เขียนกล่าวถึงความท้าทายในการรักษาสมาธิขณะจัดการกับปัญหาที่ซับซ้อนและการถูกรบกวนบ่อยครั้งในสภาพแวดล้อมการทำงาน
พวกเขาแนะนำให้ใช้บันทึกงานเพื่อบันทึกงาน ความคิด และความก้าวหน้า ซึ่งช่วยให้กลับมามีสมาธิได้อย่างรวดเร็วหลังจากถูกรบกวนและทำให้ความคิดชัดเจนขึ้น
การจดบันทึกสิ่งที่คุณกำลังทำและทบทวนบันทึกล่าสุดเมื่อกลับมาทำงานอีกครั้งถูกนำเสนอว่าเป็นเครื่องมือเพิ่มประสิทธิภาพที่เรียบง่ายแต่มีประสิทธิภาพ
การใช้บันทึกการทำงานสามารถเพิ่มประสิทธิภาพโดยการทำให้แบบจำลองทางจิตกลายเป็นความเป็นไปได้ที่ชัดเจน
การเขียนบันทึกช่วยระบุช่องว่าง สร้างความมั่นใจ และรับรองความละเอียดถี่ถ้วน โดยเฉพาะในระบบที่ซับซ้อน
มีวิธีและเครื่องมือต่างๆ เช่น สมุดบันทึกแบบกระดาษ แอปพลิเคชันดิจิทัล และ GitHub Issues ที่สามารถใช้สำหรับการจดบันทึกได้; ความสม่ำเสมอเป็นสิ่งสำคัญ
CPython แบบเธรดอิสระ ซึ่งเป็นการเปลี่ยนแปลงครั้งใหญ่ใน CPython 3.13 อนุญาตให้เธรดหลายตัวทำงานพร้อมกันภายในตัวแปลเดียวกัน ทำให้ Global Interpreter Lock (GIL) เป็นทางเลือก (PEP 703)
ฟีเจอร์ทดลองนี้มีเป้าหมายเพื่อปรับปรุงประสิทธิภาพการทำงานแบบหลายเธรดโดยการใช้ประโยชน์จากแกน CPU หลายตัวอย่างมีประสิทธิภาพ แม้ว่าจะมีความท้าทายเช่นความปลอดภัยของเธรดและความไม่เข้ากันของ ABI
ชุมชนกำลังทำงานเกี่ยวกับความเข้ากันได้ โดยเริ่มจาก PyData stack และมีเป้าหมายที่จะให้บริการ cp313t wheels บน PyPI สำหรับ Python 3.13 พร้อมกับความพยายามอย่างต่อเนื่องในการแก้ไขปัญหาความปลอดภัยของเธรด ในแพ็กเกจเช่น numpy และ pywavelets
CPython แบบไม่มีการล็อกเธรด (Free-threaded CPython) พร้อมให้ทดลองใช้งานแล้ว โดยสัญญาว่าจะมีการปรับปรุงประสิทธิภาพอย่างมากด้วยความพยายามเพียงเล็กน้อยเมื่อไลบรารีหลักรองรับการทำงานแบบไม่มี GIL (Global Interpreter Lock)
การพัฒนานี้อาจช่วยให้โครงการใหม่ๆ สามารถครองส่วนแบ่งตลาดได้มากขึ้น หากไลบรารีเก่าไม่สามารถปรับตัวได้อย่างรวดเร็ว โดยทำให้การใช้คอร์ทั้งหมดในเครื่องง่ายขึ้นโดยไม่ต้องมีภาระของการประมวลผลหลายกระบวนการ
Python 3.14 จะเปลี่ยนวิธีการ multiprocessing เริ่มต้นจาก fork เป็น spawn หรือ forkserver เพื่อแก้ไขปัญหาบางประการ แต่การเปลี่ยนไปใช้ free-threading อาจยังคงมีความท้าทาย เช่น การทำให้โค้ดปลอดภัยจากการใช้ fork และการจัดการกับบั๊กที่เกี่ยวข้องกับการทำงานพร้อมกัน
"Crafting Interpreters" เป็นหนังสือที่ครอบคลุมสำหรับผู้ที่สนใจในการสร้างภาษาโปรแกรมของตนเอง โดยครอบคลุมหัวข้อตั้งแต่การแยกวิเคราะห์ไปจนถึงการจัดการขยะ
ผู้อ่านจะได้เรียนรู้การสร้างภาษาที่มีคุณสมบัติเช่น การพิมพ์แบบไดนามิก, ขอบเขตตามตัวอักษร, ฟังก์ชันชั้นหนึ่ง, การปิด, คลาส และการสืบทอด
เขียนโดย Robert Nystrom วิศวกรของ Google ที่ทำงานเกี่ยวกับภาษา Dart หนังสือเล่มนี้มีให้ในรูปแบบพิมพ์, eBook และเว็บ
หนังสือ 'Crafting Interpreters' ได้รับการยกย่องในเรื่องการสร้างสมดุลระหว่างการนำไปปฏิบัติทางเทคนิคกับการให้ความเข้าใจเชิงแนวคิด ทำให้เป็นแหล่งข้อมูลที่ยอดเยี่ยมสำหรับวิศวกรที่ต้องการพัฒนา
ผู้ใช้ชื่นชมความชัดเจนและแนวทางปฏิบัติของหนังสือ โดยบางคนแนะนำให้อ่านตั้งแต่ต้นจนจบพร้อมกับการเขียนโค้ดไปด้วย
แม้ว่าบางคนจะต้องการให้ใช้ภาษาอื่นนอกจาก Java หนังสือเล่มนี้ยังคงถือว่ามีคุณค่าสำหรับการเรียนรู้พื้นฐานของการสร้างภาษาโปรแกรมและตั้งมาตรฐานสูงสำหรับการเขียนเชิงเทคนิค