CodeGym /จาวาบล็อก /สุ่ม /ซอฟต์แวร์โอเพ่นซอร์ส มันคืออะไรและคุ้มค่าที่จะลอง?
John Squirrels
ระดับ
San Francisco

ซอฟต์แวร์โอเพ่นซอร์ส มันคืออะไรและคุ้มค่าที่จะลอง?

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

เมื่อทุกอย่างเริ่มต้นขึ้น?

หากคุณคิดว่าโอเพ่นซอร์สเป็นการเคลื่อนไหวที่ค่อนข้างใหม่ คุณจะต้องแปลกใจ ต้นกำเนิดย้อนกลับไปในทศวรรษ 1950 และ 1960 เมื่อนักวิจัยเริ่มพัฒนาโปรโตคอลเครือข่ายอินเทอร์เน็ตและโทรคมนาคม เทคโนโลยีเหล่านี้มีพื้นฐานมาจากการวิจัยแบบเปิดและการทำงานร่วมกัน และหลักการนี้ได้กลายเป็นรากฐานสำหรับอินเทอร์เน็ตในเวลาต่อมา สำหรับซอฟต์แวร์โอเพ่นซอร์สที่เรารู้จักในปัจจุบันนั้น มีต้นกำเนิดในปี 1983 เมื่อ Richard Stallman โปรแกรมเมอร์ที่ MIT สร้างซอร์สโค้ดให้ใช้งานได้อย่างเสรี เขาเชื่อว่าโปรแกรมเมอร์ทั่วโลกควรสามารถเข้าถึงได้ เพื่อให้พวกเขาสามารถแก้ไขและพัฒนาได้ตามต้องการ แนวทางของเขายึดถือและค่อยๆ นำไปสู่การก่อตั้ง Open Source Initiative ในปี 1998

ซอฟต์แวร์โอเพ่นซอร์สเทียบกับซอฟต์แวร์ประเภทอื่น

ด้านล่างนี้ เรากำลังเปรียบเทียบลักษณะสำคัญบางประการของซอฟต์แวร์โอเพ่นซอร์สและซอฟต์แวร์ประเภทอื่นๆ:

ควบคุม

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

ค่าใช้จ่าย

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

ความปลอดภัย

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

ออกแบบ

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

การรับประกัน

พื้นที่อื่นที่ซอฟต์แวร์ "แหล่งปิด" เป็นผู้ชนะก็คือเงื่อนไขการรับประกัน ไม่น่าแปลกใจเลยที่ OSS ไม่มีการรับประกันเลย ในทางตรงกันข้าม ซอฟต์แวร์ที่เป็นกรรมสิทธิ์จะมีการรับประกันเสมอ ซึ่งเป็นข้อได้เปรียบที่ชัดเจนสำหรับบริษัทที่มีนโยบายด้านความปลอดภัย อย่างไรก็ตาม โซลูชันโอเพ่นซอร์สบางตัวได้รับความนิยมอย่างมากและยังเป็นผู้นำตลาดในทุกวันนี้ด้วยซ้ำ (เช่น Linux, Apache)

OSS ยอดนิยม

  • มอซซิลา ไฟร์ฟอกซ์
  • เว็บเซิร์ฟเวอร์อาปาเช่
  • กนู/ลินุกซ์
  • เครื่องเล่นสื่อ VLC
  • SugarCRM
  • วีเอ็นซี
  • คนพิการ
  • LibreOffice
  • jQuery

OSS ทำงานอย่างไร?

จริงๆ แล้ว ทุกครั้งที่คุณดูหน้าเว็บ เช็คอีเมล สตรีมเพลง ดูวิดีโอ เล่นวิดีโอเกม หรือสนทนากับเพื่อน พีซี คอนโซลเกม หรืออุปกรณ์มือถือของคุณเชื่อมต่อกับเครือข่ายทั่วโลกโดยใช้ซอฟต์แวร์โอเพ่นซอร์สในการส่งข้อมูล ข้อมูลไปยังอุปกรณ์ "ท้องถิ่น" ใครทำงานทั้งหมดนี้? คอมพิวเตอร์ "ระยะไกล" ที่โดยทั่วไปตั้งอยู่ในสถานที่ห่างไกล (ผู้ใช้จะมองไม่เห็นและไม่สามารถเข้าถึงเครื่องได้) กล่าวคือ ผู้คนพึ่งพาคอมพิวเตอร์ระยะไกลเมื่อทำงานประจำวัน บางคนเรียกกระบวนการนี้ว่า "การประมวลผลแบบคลาวด์" เนื่องจากเกี่ยวข้องกับกิจกรรมต่างๆ (การจัดเก็บไฟล์ การแชร์รูปภาพ การฟังแทร็กเสียง หรือการดูวิดีโอ) ที่รวมคอมพิวเตอร์ในระบบและเครือข่ายคอมพิวเตอร์ระยะไกลทั่วโลก แอปคลาวด์บางแอป เช่น Google Cloud เป็นกรรมสิทธิ์ ในขณะที่โปรแกรมอื่นๆ เช่นOpenStack หรือNextcloud นั้นเป็นโอเพ่นซอร์ส

ข้อดีหลักของการใช้ OSS

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

เหตุใดแม้แต่บริษัทขนาดใหญ่ก็มักใช้โซลูชั่นซอฟต์แวร์โอเพ่นซอร์ส

ไม่เพียงแต่ผู้ใช้หรือโปรแกรมเมอร์ทั่วไปเท่านั้นที่ยึดติดกับโซลูชัน OSS แม้แต่บริษัทขนาดใหญ่ก็มักจะใช้ประโยชน์จาก OSS จับอะไร? ความสามารถในการจ่ายได้ บริษัทหลายแห่งหันมาใช้ซอฟต์แวร์โอเพ่นซอร์สเพราะพวกเขาไม่เห็นเหตุผลใดที่จะทุ่มมหาศาลกับซอฟต์แวร์ที่เป็นกรรมสิทธิ์ นอกจากนี้ จะไม่มีค่าใช้จ่ายเพิ่มเติมสำหรับการบำรุงรักษาและอัพเดตซอฟต์แวร์ เนื่องจากผู้มีส่วนร่วมจะให้บริการฟรี ความสามารถในการปรับแต่งสูง เนื่องจากซอฟต์แวร์โอเพ่นซอร์สแบ่งปันซอร์สโค้ด องค์กรต่างๆ จึงสามารถจ้างโปรแกรมเมอร์ที่มีทักษะมาปรับให้เข้ากับความต้องการเฉพาะได้เสมอ ไม่ต้องติดต่อผู้ขาย ไม่จำเป็นต้องเสียเวลาเพิ่มเติมในการรอคุณสมบัติเพิ่มเติม (ซึ่งบางครั้งอาจใช้เวลานาน) การปรับตัว ซอฟต์แวร์ OSS มีขอบเขตการใช้งานเพิ่มเติมซึ่งไม่จำกัดเฉพาะสถาปัตยกรรมใดๆ ด้วยเหตุนี้จึงมีโอกาสมากขึ้นที่จะทำงานได้ดีในสถานการณ์ต่างๆ แม้จะซับซ้อนที่สุดก็ตาม นอกจากปัจจัยเหล่านี้แล้ว บริษัทต่างๆ ยังให้ความสำคัญกับการรักษาความปลอดภัยที่มั่นคงและการสนับสนุนที่ดีกว่าอีกด้วย อย่างไรก็ตาม พวกเขาควรจำไว้ว่าหากพวกเขาได้รับซอฟต์แวร์ภายใต้ใบอนุญาต Open Source พวกเขาสามารถใช้ซอฟต์แวร์นั้นเพื่อวัตถุประสงค์ทางการค้าได้อย่างอิสระ แต่นั่นไม่ได้หมายความว่าองค์กรต่างๆ จะสามารถกำหนดข้อจำกัดเพิ่มเติมเกี่ยวกับบุคคลที่จะใช้ซอฟต์แวร์ในภายหลังได้เสมอไป เมื่อบริษัทจำหน่ายซอฟต์แวร์ บริษัทจะต้องปฏิบัติตามข้อกำหนดใบอนุญาตเดียวกันกับที่ได้รับ

วิธีเป็นส่วนหนึ่งของซอฟต์แวร์โอเพ่นซอร์ส

ต้องการเป็นส่วนหนึ่งของเรื่องราวที่น่าสนใจนี้หรือไม่? จากนั้นคุณก็สามารถเข้าร่วมโครงการโอเพ่นซอร์สได้อย่างง่ายดาย ยินดีต้อนรับทุกทักษะ ในการดำเนินการดังกล่าว คุณสามารถสมัครรับรายชื่ออีเมลบนเว็บไซต์อย่างเป็นทางการหรือหน้า GitHub (คุณสามารถเข้าถึงโครงการที่ร้อนแรงที่สุดได้โดยไปที่ลิงก์ "ที่กำลังมาแรง") สิ่งที่น่าสนใจ มือใหม่ที่สมบูรณ์หรือแม้แต่ผู้ที่ไม่ใช่โปรแกรมเมอร์ก็มีประโยชน์มากสำหรับโครงการ OSS เช่นกัน ด้วยการเขียน อัปเดต แปลเอกสาร หรือเพียงแค่ตอบคำถามและชี้แนะผู้มาใหม่ คุณก็มีส่วนสนับสนุนที่ดีอยู่แล้ว สำหรับผู้เริ่มต้น Java พวกเขาสามารถแยกโปรเจ็กต์ ทำการเปลี่ยนแปลงโค้ด และส่งคำขอดึงเมื่อจำเป็น เรายินดีให้ความช่วยเหลือและรับประกันคุณภาพเสมอ!

บทสรุป

อย่างที่คุณเห็น โครงการซอฟต์แวร์โอเพ่นซอร์สอาจก่อให้เกิดประโยชน์มากมายแก่ทั้งผู้เข้าร่วมและผู้ใช้ ประสบการณ์ OSS ไม่เพียงแต่จะดีสำหรับ CV ของคุณ แต่คุณยังสามารถฝึกฝนทักษะด้วยการร่วมมือกับคนที่มีความคิดเหมือนกัน วิน-วินจริง!
ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION