ซอฟต์แวร์คอมพิวเตอร์เป็นโปรแกรมที่บอกคอมพิวเตอร์ว่าจะทำอย่างไร คำแนะนำเหล่านี้อาจเป็นคำสั่งภายในเช่นการอัพเดตนาฬิการะบบหรือการตอบสนองต่ออินพุตภายนอกที่ได้รับจากแป้นพิมพ์หรือเมาส์ แม้ว่าจะมีซอฟต์แวร์ประเภทต่าง ๆ มากมายที่ทำขึ้นด้วยโอเพนซอร์ซและมาตรฐานที่เป็นกรรมสิทธิ์ แต่การเขียนโปรแกรมส่วนใหญ่จะมีกฎพื้นฐานเพียงไม่กี่ข้อ
ฮาร์ดแวร์กับซอฟต์แวร์
ความแตกต่างพื้นฐานระหว่างฮาร์ดแวร์และซอฟต์แวร์คือสิ่งแรกคือสิ่งที่จับต้องได้ในขณะที่ตัวที่สองไม่ใช่ ฮาร์ดแวร์เป็นเครื่องและทำงานทางกายภาพทั้งหมดในขณะที่ซอฟต์แวร์จะบอกส่วนประกอบฮาร์ดแวร์ต่าง ๆ ว่าจะทำอย่างไรและจะโต้ตอบกันอย่างไร สิ่งนี้ทำให้คอมพิวเตอร์สามารถปรับตัวเข้ากับงานใหม่หรือติดตั้งฮาร์ดแวร์ใหม่ ในขณะที่ฮาร์ดแวร์รวมถึงสิ่งต่าง ๆ เช่นจอภาพหน่วยประมวลผลกลาง (CPU) แป้นพิมพ์และเมาส์ ซอฟต์แวร์รวมถึงสิ่งต่าง ๆ เช่นโปรแกรมประมวลผลคำระบบปฏิบัติการและเกม
ประเภท
ซอฟต์แวร์คอมพิวเตอร์มีสองประเภทหลัก: ระบบและแอปพลิเคชัน ประเภทแรกใช้เพื่อเรียกใช้ฮาร์ดแวร์ในขณะที่ประเภทที่สองใช้เพื่อทำสิ่งอื่น ๆ ซอฟต์แวร์ระบบประเภทหลักคือระบบปฏิบัติการเช่น Windows ™ OS X หรือ Linux และไดรเวอร์ซึ่งเป็นโปรแกรมที่อนุญาตให้คอมพิวเตอร์โต้ตอบกับอุปกรณ์อื่นเช่นเครื่องพิมพ์และการ์ดวิดีโอ มีแอพพลิเคชั่นซอฟต์แวร์หลายประเภทรวมถึงเกมเครื่องเล่นมีเดียตัวประมวลผลคำโปรแกรมต่อต้านไวรัสและแอปพลิเคชันสำหรับสร้างโปรแกรมใหม่
มันทำงานอย่างไร
ฮาร์ดแวร์เข้าใจเฉพาะแนวคิดพื้นฐานสองข้อคือเปิดและปิดซึ่งจะแสดงเป็น 1s และ 0s ในภาษาไบนารี ซอฟต์แวร์ทำหน้าที่เป็นผู้แปลระหว่างภาษามนุษย์และไบนารีซึ่งทำให้ฮาร์ดแวร์สามารถเข้าใจคำแนะนำที่ป้อนเข้ามา โปรแกรมเมอร์เขียนคำสั่งที่เรียกว่าซอร์สโค้ดในภาษาการเขียนโปรแกรมที่คล้ายกับสิ่งที่บางคนอาจใช้ในการพูดทุกวัน โปรแกรมอื่นที่เรียกว่าคอมไพเลอร์จะถูกใช้เพื่อแปลงคำสั่งซอร์สโค้ดเป็นไบนารี ผลที่ได้คือโปรแกรมคอมพิวเตอร์ที่ปฏิบัติการได้
โอเพ่นซอร์สกับกรรมสิทธิ์
โปรแกรมเมอร์สร้างซอฟต์แวร์โอเพนซอร์ซหรือเป็นกรรมสิทธิ์ ประเภทแรกสามารถแก้ไขและดัดแปลงโดยผู้ใช้ในขณะที่ประเภทที่สองได้รับการคุ้มครองและไม่ได้มีเจตนาที่จะแก้ไขโดยบุคคลภายนอก บริษัท ที่จำหน่าย ในขณะที่โปรแกรมโอเพนซอร์ซมักจะให้บริการฟรี แต่โปรแกรมที่เป็นกรรมสิทธิ์จะได้รับอนุญาตให้ใช้กับผู้จัดจำหน่าย
โดยทั่วไปแล้วทั้งสองประเภทมีคุณภาพของการเขียนโปรแกรมที่คล้ายคลึงกัน แต่การแก้ไขข้อบกพร่องโดยทั่วไปจะเกิดขึ้นเร็วกว่าสำหรับผลิตภัณฑ์โอเพนซอร์ซ นอกจากนี้บางคนชอบที่จะใช้แอพพลิเคชั่นโอเพนซอร์ซเพราะพวกเขารู้สึกถึงความเป็นเจ้าของในโครงการสุดท้ายหรือรู้สึกว่า บริษัท ซอฟต์แวร์คอมพิวเตอร์สร้างการผูกขาดและต้องการทางเลือกอื่น คนอื่นชอบโปรแกรมโอเพ่นซอร์สเพราะบางครั้งพวกเขามีความเสถียรมากกว่าหรือมีความเสี่ยงต่อแฮกเกอร์น้อยกว่ามักเข้ามาในห้องชุดและมาพร้อมกับการบริการลูกค้าจาก บริษัท


