ทักษะการเรียนรู้อย่างต่อเนื่องเป็นสิ่งที่ทุกคนควรมี ไม่เว้นแม้แต่ Software Developer ที่ต้องอัปเดตความรู้ใหม่ๆ เพื่อเพิ่มมูลค่าในตลาดให้กับตนเองอยู่เสมอ ในบทความนี้จะพาทุกคนไปรู้จักกับ 3 หนังสือดีเกี่ยวกับ Software Engineering ที่เป็นสิ่งจำเป็นสำหรับนักพัฒนาในการสร้างเส้นทางอาชีพจากระดับจูเนียร์สู่ระดับซีเนียร์
1. Introducing Python เขียนโดย Bill Lubanovic
หนังสือเล่มเหมาะสำหรับผู้ที่เริ่มต้นเขียนโปรแกรมและผู้ที่เพิ่งเริ่มใช้ภาษาโปรแกรม Bill Lubanovic ผู้เขียนหนังสือจะพาผู้อ่านไปทำความเข้าใจตั้งแต่ระดับพื้นฐานไปสู่หัวข้ออื่นๆ ที่เกี่ยวข้องและหลากหลายมากขึ้น พร้อมมีการนำแบบฝึกหัดมาช่วยฝึกฝนให้ผู้อ่านมีความเข้าใจในสิ่งที่เรียนมากขึ้น ผู้อ่านจะได้ปูพื้นฐานในเรื่องภาษาโปรแกรมเป็นอย่างดี อีกทั้งยังได้เคล็ดลับการพัฒนาอื่นๆ รวมถึงได้เห็นวิธีการใช้ Python ในการเขียนโปรแกรมเพื่อสนับสนุนธุรกิจ วิทยาศาสตร์ และศิลปะ ผ่านการใช้เครื่องมือ Python ต่างๆ
2. Clean Code: A Handbook of Agile Software Craftsmanship เขียนโดย Robert C. Martin
แม้ว่าโค้ดแย่ๆ จะสามารถทำงานได้ แต่ถ้าโค้ดไม่สะอาดก็อาจทำให้องค์กรพัฒนาถอยหลังลงคลองไปเรื่อยๆ รู้หรือไม่ว่าในทุกๆ ปี หลายองค์กรได้เสียเวลาและทรัพยากรจำนวนมากไปกับการเขียนโค้ดไม่ดี แต่เราไม่จำเป็นต้องจมอยู่กับปัญหาเหล่านี้ภายในหนังสือเล่มนี้ผู้อ่านจะได้พบกับ
- วิธีบอกความแตกต่างระหว่างโค้ดที่ดีกับโค้ดที่ไม่ดี
- วิธีเขียนโค้ดที่ดีและวิธีเปลี่ยนโค้ดที่ไม่ดีให้กลายเป็นโค้ดที่ดี
- วิธีการสร้างชื่อ และฟังก์ชันที่ดี
- วิธีจัดรูปแบบโค้ดให้อ่านง่ายที่สุด และอื่นๆหนังสือเล่มนี้เหมาะสำหรับนักพัฒนา วิศวกรซอฟต์แวร์ ผู้จัดการโครงการ หัวหน้าทีม หรือนักวิเคราะห์ระบบที่มีความสนใจเรื่องการเขียนโค้ด
3. Software Engineering at Google เขียนโดย Titus Winters, Tom Manshreck, Hyrum Wright
ในยุคปัจจุบัน Software Engineer หรือวิศวกรซอฟต์แวร์ มีแค่ความรู้เรื่องการเขียนโปรแกรมอย่างเดียวไม่เพียงพออีกต่อไป แต่ยังต้องรู้วิธีพัฒนาแนวปฏิบัติทางวิศวกรรมที่เหมาะสม เพื่อทำให้ Codebase มีความยั่งยืน หนังสือเล่มนี้ได้เน้นให้ผู้อ่านเห็นถึงความแตกต่างระหว่าง Programming กับ Software Engineering จากผู้เขียนที่มีประสบการณ์เป็นวิศกรซอฟต์แวร์ใน Google บริษัทเทคโนโลยีชื่อดัง นอกจากนี้ผู้อ่านยังจะได้สำรวจหลักการพื้นฐาน 3 ประการที่ Software Organizations ควรให้ความสำคัญเมื่อออกแบบ สร้าง เขียน และรักษาโค้ด
อ้างอิง Medium