Whatsapp

30 หนังสือที่ทรงอิทธิพลที่สุดเกี่ยวกับการเขียนโปรแกรม

Anonim

หลังจากวิเคราะห์คำตอบต่างๆ ในเว็บไซต์ Stack Overflow และลิงก์ที่เกี่ยวข้องกับ amazon ผลลัพธ์ที่ได้ก็รวมเป็น5720 หนังสือเกี่ยวกับการเขียนโปรแกรม

จากทั้งหมด 30 เล่มได้รับเลือกให้เป็นหนังสือเขียนโปรแกรมที่ทรงอิทธิพลที่สุด ซึ่งเราจะเน้นแต่ละเล่มในบทความนี้

1. รูปแบบการออกแบบ

หนังสือเล่มนี้เขียนโดย Ralph Johnson, Erich Gamma , John Vlissides และ Richard Helm ในหนังสือของพวกเขา พวกเขาพยายามแก้ไขปัญหาการออกแบบที่พบบ่อยที่สุดและจัดหาวิธีแก้ปัญหาตามนั้น

สมุดลายออกแบบ

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

ในหนังสือเล่มนี้ คุณจะได้ความรู้เกี่ยวกับความสำคัญของ Pattern และความเหมาะสมของ Pattern ในกระบวนการพัฒนา Software เป็นต้น นอกจากนี้ Pattern ทั้งหมดยังรวบรวมมาจากระบบจริงและอิงจากตัวอย่างจริง

ซื้อจากอเมซอน

2. ทำงานอย่างมีประสิทธิภาพด้วย Legacy Code

นี่คือหนังสือของ Michael C. Feathers ซึ่งมีวิธีการย้ายรหัสไปสู่การทดสอบ เมื่อรหัสผ่านการโยกย้ายนี้ พวกเขาจะได้สัมผัสกับประโยชน์ของการทดสอบหน่วย ซึ่งจะทำให้การทดสอบใหม่เขียนได้ง่ายขึ้น ดังนั้นจึงทำให้ลักษณะของรหัสฐานเดิมเปลี่ยนแปลงได้ง่าย

ทำงานอย่างมีประสิทธิภาพด้วย Legacy Code

ยังมีวิธีการระวังภัยต่างๆ ไม่มีการบอกว่าหนังสือเล่มนี้จำเป็นแค่ไหนในอุตสาหกรรมการเขียนโปรแกรม

ซื้อจากอเมซอน

3. การทำงานพร้อมกันของ Java ในทางปฏิบัติ

นี่คือหนังสือของ Brian Goetz และ Tim Peierls ที่เน้นการใช้งานพร้อมกันที่ใช้โดย Java หนังสือเล่มนี้ให้ข้อมูลเกี่ยวกับการสร้างแอปพลิเคชันที่ทำงานพร้อมกันเหล่านี้

Java Concurrency In Practice

ซื้อจากอเมซอน

4. ล้างรหัส

Robert C. Martin เป็นผู้เขียนหนังสือเล่มนี้ ในหนังสือของเขา เขาพยายามนำเสนอวิธีปฏิบัติในการเขียนโค้ดที่ดีขึ้นตั้งแต่เริ่มต้น ซึ่งจะทำให้เกิดแอปพลิเคชันที่มีประสิทธิภาพมากขึ้น

Clean Code โดย Robert Cecil Martin

ซื้อจากอเมซอน

5. JavaScript: ส่วนที่ดี

Douglas Crockford ในหนังสือของเขาได้ให้คำอธิบายคุณลักษณะที่เชื่อถือได้ของจาวาสคริปต์โดยครอบคลุมหัวข้อต่างๆ เช่น ไวยากรณ์ อ็อบเจกต์ ฟังก์ชัน นิพจน์ทั่วไป , อาร์เรย์, การสืบทอดและเมธอด

JavaScript: ส่วนที่ดี

ซื้อจากอเมซอน

6. การออกแบบที่ขับเคลื่อนด้วยโดเมน

นี่คือหนังสือเกี่ยวกับวิธีรวมการสร้างแบบจำลองโดเมนเข้ากับการพัฒนาซอฟต์แวร์ และเขียนโดย Eric Evans.

การออกแบบที่ขับเคลื่อนด้วยโดเมน

ซื้อจากอเมซอน

7. กรอกรหัส

Steve McConnell เป็นผู้เขียนหนังสือเล่มนี้ เขาอธิบายแนวทางปฏิบัติที่ดีที่สุดในศาสตร์และศิลป์ของการสร้างซอฟต์แวร์ โดยอภิปรายหัวข้อต่างๆ เช่น การออกแบบ การวางแผน การจัดการกิจกรรมการก่อสร้าง เทคนิคในการสร้าง การขจัดข้อผิดพลาด และยังเกี่ยวข้องกับคุณลักษณะส่วนบุคคลกับซอฟต์แวร์ที่เหนือกว่า

โค้ดครบ

ซื้อจากอเมซอน

8. รูปแบบของ Enterprise Application Architecture

Martin Fowler ผู้เขียนหนังสือเล่มนี้ในรูปแบบของคู่มือฉบับเล่มสำหรับผู้พัฒนาระบบองค์กร เขาแนะนำพวกเขาเกี่ยวกับเทคนิคและบทเรียนที่ได้รับในการพัฒนาแอปพลิเคชันสำหรับองค์กร

รูปแบบของสถาปัตยกรรมแอปพลิเคชันองค์กร

นอกจากนี้เขายังให้บริการโซลูชั่นที่ได้รับการพิสูจน์แล้วสำหรับปัญหาทั่วไปที่พบโดยผู้พัฒนาระบบสารสนเทศ

ซื้อจากอเมซอน

9. รูปแบบการออกแบบของ Head First

ในหนังสือเล่มนี้ อีริค ฟรีแมน, เอลิซาเบธ ฟรีแมน, Kathy Sierra และ Bert Bates ให้รูปแบบการออกแบบโดยมีจุดประสงค์เพื่อช่วยในการพัฒนาซอฟต์แวร์โดยใช้ Java การเขียนโปรแกรม

รูปแบบการออกแบบ Head First

ซื้อจากอเมซอน

10. การปรับโครงสร้าง

Martin Fowler และ Kent Beck ในหนังสือเล่มนี้อธิบายถึง ผู้ใช้จะปรับปรุงการออกแบบ ประสิทธิภาพ และความสามารถในการจัดการของโค้ดเชิงวัตถุได้อย่างไรโดยไม่ต้องเปลี่ยนอินเทอร์เฟซหรือลักษณะการทำงาน

การปรับโครงสร้างใหม่: การปรับปรุงการออกแบบโค้ดที่มีอยู่

ซื้อจากอเมซอน

11. ภาษาโปรแกรม C

Brian W. Kennighan และ Dennis M. Ritchie ใน หนังสือของพวกเขาแนะนำให้เรารู้จักกับคุณสมบัติของโปรแกรมภาษาซี พวกเขาเดินหน้าเพื่อหารือเกี่ยวกับชนิดข้อมูล ตัวแปร ตัวดำเนินการ โฟลว์ควบคุม ฟังก์ชัน พอยน์เตอร์ อาร์เรย์ และโครงสร้าง หนังสือเล่มนี้ยังครอบคลุมอินเทอร์เฟซระบบ UNIX อีกด้วย

ภาษาโปรแกรม C

ซื้อจากอเมซอน

12. การทดสอบการพัฒนา (TDD)

Kent Beck ผู้เขียนหนังสือเล่มนี้แสดงให้เราเห็นถึงวิธีการเขียน Clean Code ที่ทำงานร่วมกับวิธีการซอฟต์แวร์ที่ก้าวล้ำของเขา ด้วยการใช้ตัวอย่าง เขาแนะนำให้ผู้อ่านใช้ TDD เพื่อต่อยอดโครงการของพวกเขา

ทดสอบการพัฒนา

ซื้อจากอเมซอน

13. C++ ที่มีประสิทธิภาพ

นี่คือหนังสือของ Scott Meyers ที่กล่าวถึง 55 วิธีเฉพาะในการปรับปรุงโปรแกรมและการออกแบบของคุณ

C++ที่มีประสิทธิภาพ

ซื้อจากอเมซอน

14. อัลกอริทึมเบื้องต้น ฉบับที่ 3

Thomas H. Cormen ในหนังสือของเขาทำลายบรรทัดฐานของหนังสืออัลกอริทึมโดยเบี่ยงเบนจากวัสดุขนาดใหญ่ที่มักจะครอบคลุมไปถึง นักอ่าน

แต่เขาพูดถึงอัลกอริทึมที่หลากหลายโดยละเอียดในขณะที่ทำให้ผู้อ่านทุกระดับสามารถเข้าถึงการออกแบบและการวิเคราะห์ได้ อัลกอริทึมได้รับการอธิบายในลักษณะที่ทุกคนสามารถอ่านได้โดยไม่คำนึงถึงประสบการณ์ในการเขียนโปรแกรม

ความรู้เบื้องต้นเกี่ยวกับอัลกอริทึม

สั้นๆ เขาอธิบายด้วยภาษาพื้นฐานโดยยังคงความลึกและหลักคณิตศาสตร์

ซื้อจากอเมซอน

15. CLR ผ่าน C

Jeffery Ritchter เป็นผู้เขียนหนังสือเล่มนี้ ในหนังสือของเขา เขาพยายามให้คำแนะนำในการพัฒนาแอปพลิเคชันโดยใช้รันไทม์ภาษาทั่วไป (CLR) และ Microsoft.NET Framework4.0 ในขณะที่ยังรวมถึง Microsoft Visual C2010

CLR ผ่าน C (รุ่นที่ 4)

ซื้อจากอเมซอน

16. การเขียนโปรแกรม Cocoa สำหรับ Mac OS X

หนังสือเล่มนี้เขียนโดย Aaron Hillegass โดยพื้นฐานแล้วเป็นการแก้ไขของ Introduction to Cocoa Programming ที่มีชื่อเสียงซึ่งได้รับการอัปเดตสำหรับ Mac OS X Leopard

การเขียนโปรแกรม Cocoa สำหรับ OS X

ซื้อจากอเมซอน

17. STL ที่มีประสิทธิภาพ

หนังสือเล่มนี้เขียนโดย Scott Meyers ผู้เขียน Effective C++ . หนังสือเล่มนี้เป็นเล่มที่ 3 ของ C++ ที่มีประสิทธิภาพ ได้รับการแนะนำให้เป็นหนังสือที่โปรแกรมเมอร์ C++ ทุกคนต้องมี

ในหนังสือเล่มนี้ Scott Meyers แสดงกฎที่สำคัญที่ผู้เชี่ยวชาญใช้เพื่อให้ได้ผลลัพธ์ที่ดีที่สุด หนังสือเล่มนี้ยังมีตัวอย่างในตำนานของ Meyers ที่ช่วยผู้อ่านจำนวนมากนับตั้งแต่ตีพิมพ์ครั้งแรก

STLที่มีประสิทธิภาพ

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

ซื้อจากอเมซอน

18. การออกแบบซอฟต์แวร์ C++ ขนาดใหญ่

John Lakos ในหนังสือเล่มนี้พยายามที่จะรวมแนวคิดการออกแบบระดับสูงเข้ากับข้อตกลงการเขียนโปรแกรม C++ เฉพาะเพื่อเปิดเผยวิธีการปฏิบัติในการวางแผนและการใช้งาน ระบบ C++ คุณภาพสูง

การออกแบบซอฟต์แวร์ C++ ขนาดใหญ่

เขาอธิบายถึงความสำคัญของการออกแบบทางกายภาพในระบบขนาดใหญ่ และวิธีการจัดโครงสร้างซอฟต์แวร์ของคุณเป็นลำดับชั้นขององค์ประกอบแบบวงจรด้วยเทคนิคอื่นๆ อีกมากมาย

ซื้อจากอเมซอน

19. การออกแบบ C++ ที่ทันสมัย

Andrei Alexandrescu ในหนังสือของเขาอธิบายถึงเทคนิค C++ ต่างๆ ที่ใช้ในการเขียนโปรแกรมทั่วไป นอกจากนี้เขายังใช้องค์ประกอบความแข็งแกร่งทางอุตสาหกรรมจำนวนมาก หนังสือรวบรวมเทคนิคการเขียนโปรแกรมต่างๆ

Modern C++ Design

ซื้อจากอเมซอน

20. ภายใน Microsoft Build Engine

หนังสือเล่มนี้เขียนโดย Sayed Ibrahim Hashimi และ William Bartholomew . โดยพื้นฐานแล้วจะเป็นคำแนะนำสำหรับกระบวนการสร้างและปรับใช้ซอฟต์แวร์โดยใช้ MSBuild

ภายใน Microsoft Build Engine

ซื้อจากอเมซอน

21. การเขียนโปรแกรม Microsoft ASP.NET 2.0 Core Reference

Dino Esposito ในหนังสือเล่มนี้จะอธิบายวิธีสร้างความเชี่ยวชาญของคุณเมื่อคุณจบการศึกษาจากพื้นฐานและเข้าสู่หัวข้อหลักของการเขียนโปรแกรม ด้วยรูปแบบการสอนนี้ หนังสือเล่มนี้จึงมีประโยชน์ต่อทั้งนักพัฒนาที่มีประสบการณ์และนักพัฒนาที่ไม่มีประสบการณ์

การเขียนโปรแกรม Microsoft ASP.NET

หนังสือเล่มนี้ยังมีคำแนะนำจากผู้เชี่ยวชาญ คำแนะนำในการเขียนโปรแกรม และตัวอย่างการปฏิบัติที่จะขยายขอบเขตของคุณในการพัฒนาแอปพลิเคชันสำหรับเว็บ

ซื้อจากอเมซอน

22. รูปแบบการทดสอบ XUnit

Gerard Meszaros ในหนังสือเล่มนี้เขียนเกี่ยวกับการปรับปรุงผลตอบแทนจากการลงทุนซอฟต์แวร์ เขาให้ความรู้แก่ผู้อ่านเกี่ยวกับการปรับโครงสร้างรหัสทดสอบและลดการบำรุงรักษาการทดสอบที่ทำให้หมดอำนาจ

รูปแบบการทดสอบ xUnit

ซื้อจากอเมซอน

23. การเขียนโปรแกรมพร้อมกันบน Windows

Joe Duffy ในหนังสือเล่มนี้จะกล่าวถึงวิธีการปฏิบัติรวมถึงบทช่วยสอนของ windows และ .NET API ทั้งชุดที่จำเป็น เขียนโปรแกรมพร้อมกัน

การเขียนโปรแกรมพร้อมกันบน Windows

ซื้อจากอเมซอน

24. ผู้ปฏิบัติตาม

หนังสือเล่มนี้รู้จักกันแพร่หลายในชื่อ “หนังสือมังกร” หนังสือโดย Alfred V. Aho มีวางจำหน่ายแล้วในฉบับใหม่ หนังสือเล่มนี้ได้รับการแก้ไขเพื่อให้สอดคล้องกับการพัฒนาด้านวิศวกรรมซอฟต์แวร์ ภาษาโปรแกรม และสถาปัตยกรรมคอมพิวเตอร์ที่เกิดขึ้นตั้งแต่ปี 1986

ผู้เรียบเรียง: หลักการ เทคนิค และเครื่องมือ

นอกจากนี้ยังได้รับการแก้ไขเพื่อมุ่งเน้นไปที่ชุดปัญหาที่กว้างขึ้นในการออกแบบซอฟต์แวร์และการพัฒนาซอฟต์แวร์

ซื้อจากอเมซอน

25. มาตรฐานการเข้ารหัส C++

นี่คือหนังสือโดย Herb Sutter และ Andrei Alexandrescu ที่ครอบคลุมแทบทุกซอกทุกมุมของการเขียนโปรแกรม C++ หนังสือเล่มนี้จะช่วยให้ผู้อ่านเขียนโค้ดที่สะอาดขึ้นด้วยความเร็วในขณะที่หลีกเลี่ยงความยุ่งยากที่อาจเกิดขึ้นในตอนแรก

มาตรฐานการเข้ารหัส C++

ซื้อจากอเมซอน

26. การเขียนโปรแกรมเครือข่าย UNIX

หนังสือเล่มนี้เขียนโดยนักเขียน 3 คน ได้แก่ : W.Richard Stevens, Bill Fenner และ แอนดรูว์ เอ็ม. รูดอฟฟ์ ทั้งฉบับก่อนหน้าและล่าสุดมียอดขายมากมาย

UNIX Network Programming

ประกอบด้วยข้อมูลอัปเดตของมาตรฐานการเขียนโปรแกรม เทคนิคการดีบัก และระบบปฏิบัติการ

ซื้อจากอเมซอน

27. โครงสร้างข้อมูลตามหน้าที่อย่างแท้จริง

นี่คือหนังสือโดย Chris Osaki ที่มีคำอธิบายของแหล่งข้อมูลและเทคนิคการออกแบบโครงสร้างข้อมูลสำหรับภาษาที่ใช้งานได้

Purely Functional Data Structures

ซื้อจากอเมซอน

28. ศิลปะแห่งการทดสอบหน่วย

เขียนโดย Roy Osherove ทำหน้าที่เป็นแนวทางสำหรับแนวคิดของการทดสอบหน่วย จะนำผู้อ่านจากขั้นตอนหนึ่งไปยังอีกขั้นตอนหนึ่ง ในหัวข้อที่ครอบคลุมได้แก่: รูปแบบและการจัดระเบียบ ออบเจกต์จำลอง รหัสดั้งเดิม และเฟรมเวิร์กอัตโนมัติ

ศิลปะแห่งการทดสอบหน่วย

ซื้อจากอเมซอน

29. กรอบแนวทางการออกแบบ

หากคุณเป็นนักพัฒนา .Net หนังสือเล่มนี้ควรอยู่ในรายชื่อหนังสือที่คุณอ่าน เขียนโดย Krzysztof Cwalina และ Brad Abrams ในหนังสือของพวกเขา พวกเขาให้สิ่งที่ควรทำและไม่ควรทำทั้งหมดที่เกี่ยวข้องกับการออกแบบไลบรารีคลาสสำหรับ .Net

กรอบแนวทางการออกแบบ

เป็นหนังสือที่ได้รับการแนะนำอย่างมากจากกูรูด้านวิทยาการคอมพิวเตอร์ เช่น Jeffery Ritcher, Bill Wagner, George Bryrkit Peter Winkler เพื่อบอกชื่อไม่กี่คน

ผู้เขียนทั้งสองเป็นสถาปนิกของ Microsoft หนังสือเล่มนี้ให้แนวทางพื้นฐานในการออกแบบโดยอาศัยข้อมูลเชิงลึกที่พัฒนาขึ้นจากประสบการณ์จริงหลายปี โดยมาพร้อมกับ DVD ที่แสดงร่วมกัน ข้อมูลจำเพาะของ API ตัวอย่าง และทรัพยากรที่มีประโยชน์อื่นๆ

ซื้อจากอเมซอน

30. การเรียนรู้ Regular Expression

นี่คือหนังสือโดย Jeffery Friedl ใน Regular Expressions ปัจจุบัน Regular Expression เป็นคุณสมบัติที่ปรับแต่งได้ในหลายภาษาและเครื่องมือยอดนิยม เช่น Perl, Python, Ruby, Java, VB.NET และ C (และภาษาอื่นๆ ที่ใช้ .NET Framework), PHP และ MySQL มีประสิทธิภาพเป็นพิเศษสำหรับการจัดการข้อความและข้อมูล

การเรียนรู้ Regular Expression

นี่คือสามสิ่งที่คุณต้องรู้เกี่ยวกับ Regular Expression

การมีคำสั่งของ Regular Expression เป็นทักษะที่มีประโยชน์ซึ่งเป็นสิ่งที่หนังสือเล่มนี้จะมอบให้คุณ แม้จะเข้าถึงได้กว้างและยืดหยุ่น

นิพจน์ทั่วไปมักจะถูกใช้งานน้อยเกินไป รุ่นนี้ยังได้รับการปรับโครงสร้างใหม่เพื่อแสดงการพัฒนาในภาษาอื่นๆ ตลอดจนการวิเคราะห์โดยละเอียดที่ยาวขึ้นของแพ็คเกจ java.util.regex ของ Sun ซึ่งพัฒนาเป็นการนำ Java regex ไปใช้มาตรฐาน

หัวข้อ ได้แก่:

หนังสือเล่มนี้มีแนวทางแก้ปัญหาเชิงปฏิบัติที่ซับซ้อน นักวิจารณ์ได้ทำการวิจารณ์ฉบับใหม่นี้และฉบับที่สอง:

หากคุณใช้นิพจน์ทั่วไปเป็นส่วนหนึ่งของงานระดับมืออาชีพ (แม้ว่าคุณจะมีหนังสือดีๆ เกี่ยวกับภาษาใดก็ตามที่คุณเขียนโปรแกรมอยู่แล้วก็ตาม) ฉันขอแนะนำหนังสือเล่มนี้ให้คุณอย่างยิ่ง” –ดร. คริส บราวน์, Linux Format.

ซื้อจากอเมซอน

บทสรุป

มีหนังสือเกี่ยวกับการเขียนโปรแกรมที่เชื่อถือได้มากที่สุด 30 เล่ม

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

โปรดแจ้งให้เราทราบความคิดเห็น คำถาม หรือข้อกังวลอื่น ๆ ที่คุณอาจมีเกี่ยวกับบทความนี้ ขอให้มีวันที่ดีจาก Fossmint!