ทำไมลินุกซ์ถึงเป็นสถานที่ที่ดีที่สุดในการเรียนเขียนโค้ด
สรุป
- ลินุกซ์มีเครื่องมือการเขียนโปรแกรมฟรีมากมาย เช่น GCC, GDB, Vim และ Emacs ซึ่งติดตั้งมาแล้วและมีประโยชน์
- คุณสามารถเขียนโค้ดบน Linux โดยไม่ต้องเปลี่ยนระบบปฏิบัติการทั้งหมดโดยใช้เครื่องมือต่างๆ เช่น WSL ทำให้ผู้ใช้ Windows, Mac และ Chromebook สามารถเข้าถึงได้
- การเรียนรู้การเขียนโค้ดบนลินุกซ์ให้สภาพแวดล้อมแบบมืออาชีพ การเข้าถึงโค้ดโอเพนซอร์ส เอกสารประกอบมากมาย และการสนับสนุนจากชุมชน
ถ้าคุณเคยฝันอยากเรียนรู้การเขียนโปรแกรม คุณอาจสงสัยว่าจะเริ่มจากตรงไหน Linux อาจเป็นระบบปฏิบัติการที่ดีที่สุดในการเริ่มต้นการเดินทางในด้านการเขียนโปรแกรมของคุณ คุณจะอยู่ในกลุ่มที่ดีในการเรียนรู้วิธีการโปรแกรมเหมือนมืออาชีพ นี่คือหลายเหตุผลว่าทำไมสิ่งที่ดีสำหรับพวกเขาถึงดีสำหรับคุณในฐานะโปรแกรมเมอร์ใหม่
เครื่องมือโปรแกรมจำนวนมาก
ลินุกซ์ได้รับมรดกมาจากยูนิกซ์ซึ่งมีเครื่องมือการเขียนโปรแกรมให้เลือกมากมาย มีคอมไพเลอร์เช่น GCC และ Clang, เครื่องมือดีบักเช่น GDB และเครื่องมือแก้ไขเช่น Vim และ GNU Emacs เครื่องมือทั้งหมดนี้ฟรี ไม่เหมือนกับระบบอื่น ๆ ที่คุณต้องจ่ายเงินเพื่อให้สามารถเขียนโปรแกรมได้ คุณสามารถเปลี่ยนแปลงได้ถ้าต้องการ แต่การมีค่าเริ่มต้นบางอย่างจะช่วยให้คุณเริ่มต้นได้ง่ายขึ้น
ยิ่งกว่านั้น หลาย ๆ โปรแกรมมาพร้อมการติดตั้งล่วงหน้าในหลายดิสโทรของลินุกซ์ รวมถึงภาษาต่าง ๆ เช่น ไพธอน
คุณสามารถใช้ Linux ได้โดยไม่ต้องละทิ้ง Windows หรือ macOS
การใช้ระบบปฏิบัติการใหม่อาจดูน่ากลัวหากสิ่งที่คุณต้องการทำคือทดลองเขียนโค้ด คุณไม่จำเป็นต้องออกจากสภาพแวดล้อมที่คุ้นเคยเพื่อเริ่มต้นการเขียนโปรแกรมบน Linux คุณสามารถติดตั้งสภาพแวดล้อมการพัฒนา Linux บนระบบปฏิบัติการที่มีอยู่ของคุณได้
Windows Subsystem for Linux (WSL) เป็นตัวเลือกที่ดีในการเริ่มต้นหากคุณใช้ Windows 10 หรือ 11 หากคุณใช้ Chromebook คุณสามารถติดตั้งสภาพแวดล้อมการพัฒนา Linux ที่คล้ายกันได้
ถ้าคุณเป็นผู้ใช้ Mac คุณจะมีแอป Terminal ในตัวที่สามารถรันเครื่องมือโปรแกรมมิงโอเพ่นซอร์สยอดนิยมหลายตัว มันสร้างขึ้นบน BSD แทนที่จะเป็น Linux แต่มีความคล้ายคลึงกันเพียงพอที่คุณสามารถทำตามบทเรียนโปรแกรมมิงหลายๆ บทเรียนได้ เช่นเดียวกับบทเรียนที่นี่บน HTG
หากคุณพบว่าคุณชอบการเขียนโค้ดแบบบรรทัดคำสั่ง คุณสามารถลองประสบการณ์ Linux แบบเต็มรูปแบบโดยการติดตั้งคู่หรือใช้เครื่องเสมือน
โปรแกรมเมอร์มืออาชีพใช้ลินุกซ์
เมื่อคุณเรียนรู้การเขียนโค้ดบน Linux คุณจะใช้เครื่องมือที่นักโปรแกรมมืออาชีพใช้ในการสร้างแอปและเว็บไซต์ที่คุณใช้ทุกวัน คุณไม่ได้เรียนรู้ภาษาเล่นๆ ที่คุณจะเลิกใช้เมื่อทำงานโปรแกรมจริงๆ
ลินุกซ์สร้างขึ้นบนมรดกอันมั่งคั่งของยูนิกซ์พร้อมกับเครื่องมือพัฒนาของมัน ลินุกซ์เป็นสถานที่ที่ดีที่สุดในการเรียนรู้การเขียนโปรแกรมเพราะมันได้รับการทดสอบในสนามจริงโดยนักพัฒนาจริง ๆ
หลายคนเรียนรู้ที่จะสร้างโครงการโปรแกรมขนาดใหญ่ในแผนกวิทยาการคอมพิวเตอร์ของมหาวิทยาลัย มหาวิทยาลัยเช่น Johns Hopkins เตรียมห้องทดลองที่ใช้ระบบ Linux และระบบระยะไกลสำหรับการพัฒนาโปรแกรมให้กับนักศึกษา สิ่งนี้เป็นเรื่องทางประวัติศาสตร์เป็นหลัก เนื่องจาก AT&T ให้สิทธิ์ใช้งาน Unix ทางวิชาการราคาถูกที่รวมรหัสต้นฉบับให้กับนักศึกษาเพื่อศึกษา
แม้ว่า Linux จะไม่มีซอร์สโค้ดของ Unix แต่ก็ได้รับความนิยมในหมู่คณะที่สอนวิทยาการคอมพิวเตอร์ของมหาวิทยาลัยเพราะมันฟรี ทำงานได้บนฮาร์ดแวร์หลากหลายประเภท และอาจารย์คุ้นเคยกับ Linux อยู่แล้ว
หลังจากนักเรียนเหล่านี้สำเร็จการศึกษาและก้าวออกสู่โลกแห่งความเป็นจริง พวกเขาจะนำประสบการณ์ Linux ของตนไปด้วย ตามข้อมูลของ W3Techs ระบบที่คล้าย Unix ครองตลาดเว็บเซิร์ฟเวอร์ และในทางปฏิบัติ นั่นมักจะเป็นเวอร์ชันบางอย่างของ Linux
คุณสามารถอ่านซอร์สโค้ดได้
วิธีที่ดีที่สุดในการเรียนรู้การเขียนคือการอ่านให้มาก นี่ใช้ได้ทั้งกับซอร์สโค้ดและหนังสือ ซอร์สโค้ดของ Linux เป็นซอร์สเปิด ดังนั้นคุณสามารถตรวจสอบโค้ดเพื่อหาวิธีการทำงานของมันได้
ย้อนกลับไปในยุคดอตคอมแรก ๆ เมื่อฉันต้องการรู้ว่าเว็บไซต์บางแห่งทำงานอย่างไร ฉันจะคลิกที่ "ดูซอร์ส" ในเบราว์เซอร์ของฉัน นี่เป็นวิธีที่ฉันเรียนรู้พื้นฐานของ HTML และ CSS แม้ว่าซอร์สโค้ดจำนวนมาก โดยเฉพาะเคอร์เนลของ Linux อาจดูรกเล็กน้อย แต่คุณจะได้รับความเข้าใจในลักษณะเดียวกันเกี่ยวกับวิธีใช้มันอย่างมาก
แน่นอน ซอฟต์แวร์โอเพ่นซอร์สมีให้ใช้งานบนวินโดวส์ แต่ชุมชนลินุกซ์คือผู้สนับสนุนแนวคิดนี้อย่างแท้จริง ชุมชนลินุกซ์ยืนกรานสนับสนุนซอฟต์แวร์โอเพ่นซอร์สมาช้านาน ซอฟต์แวร์โอเพ่นซอร์สบางส่วนบนวินโดวส์ถูกเขียนบนลินุกซ์และถูกพอร์ตมาบนวินโดวส์
มีเอกสารจำนวนมากให้ใช้งาน
จากประสบการณ์ของฉัน ดูเหมือนว่าจะมีเอกสารเกี่ยวกับ Linux และภาษาการเขียนโปรแกรมแบบโอเพนซอร์สมากขึ้น ทั้งทางออนไลน์และในรูปแบบสิ่งพิมพ์ เมื่อเทียบกับภาษาหรือระบบที่เป็นกรรมสิทธิ์ อาจเป็นเพราะความเปิดกว้างของ Linux ซึ่งทำให้นักเขียนทางเทคนิคสามารถเห็นวิธีการทำงานของมันได้ หลายบทเรียนสมมติว่าคุณอยู่ในสภาพแวดล้อมที่คล้าย Unix
ภาษาและเครื่องมือการเขียนโปรแกรมส่วนใหญ่มีเอกสารออนไลน์ เช่น วิกิ คุณยังสามารถหาหนังสือพิมพ์ถ้าคุณชอบ เมื่อฉันเข้าเรียนที่ CSU East Bay ในทศวรรษ 2000 ฉันพบหนังสือเกี่ยวกับ Unix จำนวนมากในห้องสมุด แม้ว่าหลายเล่มจะมาจากยุค 90 หรือก่อนหน้านั้น แต่ก็ยังมีประโยชน์อยู่ เพราะรูปแบบการทำงานแบบ Unix ยังคงมีอิทธิพลต่อโปรแกรมเมอร์มืออาชีพอยู่ ฉันยังไม่ได้เป็นนักศึกษาวิทยาการคอมพิวเตอร์ด้วยซ้ำ ฉันก็ยังไม่รู้ว่าฉันทำอย่างไรถึงได้รอดพ้นจากเรื่องนั้น
คุณสามารถขอความช่วยเหลือจากชุมชนได้
หากคุณติดปัญหาใด ๆ คุณสามารถขอความช่วยเหลือจากมนุษย์คนอื่นได้ หลายภาษาการเขียนโปรแกรมและโครงการโอเพนซอร์สอื่น ๆ มีฟอรัมออนไลน์ ช่อง IRC เซิร์ฟเวอร์ Discord และวิธีอื่น ๆ ที่โปรแกรมเมอร์มาพบปะและสามารถให้ความช่วยเหลือ หากคุณต้องการพบปะผู้คนแบบตัวต่อตัว คุณก็สามารถเข้าร่วมกลุ่มผู้ใช้แบบพบกันตัวจริงได้เช่นกัน
จิตวิญญาณของชุมชนดูเหมือนจะเป็นสิ่งที่ Linux สืบทอดมาจาก Unix เนื่องจาก Dennis Ritchie ผู้ร่วมสร้าง Unix ต้องการระบบที่สามารถสร้างชุมชนขึ้นมาได้
คุณอาจจะสามารถขอความช่วยเหลือเกี่ยวกับระบบอื่น ๆ ได้ แต่สิ่งที่ทำให้ Linux และซอฟต์แวร์โอเพนซอร์สแตกต่างจากซอฟต์แวร์ที่เป็นกรรมสิทธิ์คือ คุณอาจเจอคนที่สร้างมันขึ้นมาตอบคำถามของคุณได้ แม้แต่ผมเองก็เคยประหลาดใจหลายครั้งเมื่อตระหนักว่าผมกำลังสนทนาแบบสบาย ๆ กับคนที่มีส่วนร่วมในโครงการโอเพนซอร์สขนาดใหญ่ คุณจะไม่มีระดับการเข้าถึงนักพัฒนา Windows แบบนี้ เว้นแต่ว่าคุณทำงานให้กับ Microsoft





