สรุป
ประเภทของซอฟต์แวร์
ซอฟต์แวร์หรือโปรแกรมคอมพิวเตอร์ที่มีผู้พัฒนาขึ้นเพื่อใช้งานกับ คอมพิวเตอร์มีมากมาย
ซอฟต์แวร์เหล่านี้อาจได้รับการพัฒนาโดยผู้ใช้งานเอง หรือผู้พัฒนาระบบ
หรือผู้ผลิตจำหน่าย หากแบ่งแยกชนิดของซอฟต์แวร์ตามสภาพการทำงาน พอแบ่งแยกซอฟต์แวร์ได้เป็นสองประเภท
คือ ซอฟต์แวร์ระบบ (system software) และซอฟต์แวร์ประยุกต์ (application
software)
- ซอฟต์แวร์ระบบ คือซอฟต์แวร์ที่บริษัทผู้ผลิตสร้างขึ้นมาเพื่อใช้จัดการกับระบบ หน้าที่การทำงานของซอฟต์แวร์ระบบคือดำเนินงานพื้นฐานต่าง ๆ ของระบบคอมพิวเตอร์ เช่น รับข้อมูลจากแผงแป้นอักขระแล้วแปลความหมายให้คอมพิวเตอร์เข้าใจ นำข้อมูลไปแสดงผลบนจอภาพหรือนำออกไปยังเครื่องพิมพ์ จัดการข้อมูลในระบบแฟ้มข้อมูลบนหน่วยความจำรอง
เมื่อเราเปิดเครื่องคอมพิวเตอร์
ทันทีที่มีการจ่ายกระแสไฟฟ้าให้กับคอมพิวเตอร์ คอมพิวเตอร์จะทำงานตามโปรแกรมทันที โปรแกรมแรกที่สั่งคอมพิวเตอร์ทำงานนี้เป็นซอฟต์แวร์ระบบ
ซอฟต์แวร์ระบบอาจเก็บไว้ในรอม หรือในแผ่นจานแม่เหล็ก หากไม่มีซอฟต์แวร์ระบบ คอมพิวเตอร์จะทำงานไม่ได้
ซอฟต์แวร์ระบบยังใช้เป็นเครื่องมือในการพัฒนาซอฟต์แวร์อื่น
ๆ และยังรวมไปถึงซอฟต์แวร์ที่ใช้ในการแปลภาษาต่าง ๆ
- ซอฟต์แวร์ประยุกต์ เป็นซอฟต์แวร์ที่ใช้กับงานด้านต่าง ๆ ตามความต้องการของผู้ใช้ ที่สามารถนำมาใช้ประโยชน์ได้โดยตรง ปัจจุบันมีผู้พัฒนาซอฟต์แวร์ใช้งานทางด้านต่าง ๆ ออกจำหน่ายมาก การประยุกต์งานคอมพิวเตอร์จึงกว้างขวางและแพร่หลาย เราอาจแบ่งซอฟต์แวร์ประยุกต์ออกเป็นสองกลุ่มคือ ซอฟต์แวร์สำเร็จ และซอฟต์แวร์ที่พัฒนาขึ้นใช้งานเฉพาะ ซอฟต์แวร์สำเร็จในปัจจุบันมีมากมาย เช่น ซอฟต์แวร์ประมวลคำ ซอฟต์แวร์ตารางทำงาน ฯลฯ
ความจำเป็นของการใช้ซอฟต์แวร์
ซอฟต์แวร์ (software) หมายถึงชุดคำสั่งหรือโปรแกรมที่ใช้สั่งงานให้คอมพิวเตอร์ทำงาน ซอฟต์แวร์จึงหมายถึงลำดับขั้นตอนการทำงานที่เขียนขึ้นด้วยคำสั่งของคอมพิวเตอร์ คำสั่งเหล่านี้เรียงกันเป็นโปรแกรมคอมพิวเตอร์ จากที่ทราบมาแล้วว่าคอมพิวเตอร์ทำงานตามคำสั่ง การทำงานพื้นฐานเป็นเพียงการกระทำกับข้อมูลที่เป็นตัวเลขฐานสอง ซึ่งใช้แทนข้อมูลที่เป็นตัวเลข ตัวอักษร รูปภาพ หรือแม้แต่เป็นเสียงพูดก็ได้
โปรแกรมคอมพิวเตอร์ที่ใช้สั่งงานคอมพิวเตอร์จึงเป็นซอฟต์แวร์ เพราะเป็นลำดับขั้นตอนการทำงานของคอมพิวเตอร์ คอมพิวเตอร์เครื่องหนึ่งทำงานแตกต่างกันได้มากมายด้วยซอฟต์แวร์ที่แตกต่างกัน ซอฟต์แวร์จึงหมายรวมถึงโปรแกรมคอมพิวเตอร์ทุกประเภทที่ทำให้คอมพิวเตอร์ทำงานได้
การที่เราเห็นคอมพิวเตอร์ทำงานให้กับเราได้มากมาย เพราะว่ามีผู้พัฒนาโปรแกรมคอมพิวเตอร์มาให้เราสั่งงานคอมพิวเตอร์ ร้านค้าอาจใช้คอมพิวเตอร์ทำบัญชีที่ยุ่งยากซับซ้อน บริษัทขายตั๋วใช้คอมพิวเตอร์ช่วยในระบบการจองตั๋ว คอมพิวเตอร์ช่วยในเรื่องกิจการงานธนาคารที่มีข้อมูลต่าง ๆ มากมาย คอมพิวเตอร์ช่วยงานพิมพ์เอกสารให้สวยงาม เป็นต้น การที่คอมพิวเตอร์ดำเนินการให้ประโยชน์ได้มากมายมหาศาลจะอยู่ที่ซอฟต์แวร์ ซอฟต์แวร์จึงเป็นส่วนสำคัญของระบบคอมพิวเตอร์ หากขาดซอฟต์แวร์คอมพิวเตอร์ก็ไม่สามารถทำงานได้ ซอฟต์แวร์จึงเป็นสิ่งที่จำเป็น และมีความสำคัญมาก และเป็นส่วนประกอบหนึ่งที่ทำให้ระบบสารสนเทศเป็นไปได้ตามที่ต้องการ
ซอฟต์แวร์และภาษาคอมพิวเตอร์ซอฟต์แวร์ (Software) คือ การลำดับขั้นตอนการทำงานของชุดคำสั่ง เพื่อบอกคอมพิวเตอร์ว่า
ผู้ใช้ต้องการทำอะไร โดยเราสามารถเห็นหรือสัมผัสหีบห่อที่บรรจุซอฟต์แวร์นั้นได้ เช่น แผ่นบันทึก หรือ แผ่นซีดี
ซอฟต์แวร์สำหรับเครื่องคอมพิวเตอร์พีซี
มีความแตกต่างกับซอฟต์แวร์สำหรับเครื่องคอมพิวเตอร์แบบมินิและเมนเฟรม เนื่องจากลักษณะการใช้งานและออกแบบแตกต่างกัน ซึ่งสามารถแบ่งซอฟต์แวร์ออกได้ 2 ประเภท คือ
1. ซอฟต์แวร์ระบบ (System Software)
2. ซอฟต์แวร์ประยุกต์ (Application Software)
ซอฟต์แวร์ระบบ (System Software)
เป็นตัวกลางระหว่างฮาร์ดแวร์และโปรแกรม เพื่อใช้ในการควบคุมการทำงานทั้งหมดของระบบคอมพิวเตอร์
ซอฟต์แวร์ระบบปฏิบัติการ (Operating Software หรือ OS) ทำหน้าที่ควบคุมกิจกรรม
ทั้งหมดของคอมพิวเตอร์ เพื่อให้มั่นใจว่าอุปกรณ์ที่เป็นฮาร์ดแวร์ทุกส่วนของระบบคอมพิวเตอร์ทำงาน
ร่วม กันได้อย่างราบรื่นและมีประสิทธิภาพ เช่น การบริหารจัดการข้อมูลและแฟ้มข้อมูลในเครื่องฯ เช่น การสำเนาข้อมูล (Copy) การเรียงลำดับ (Sort) การลบ (Delete) และอื่นๆ
ระบบปฏิบัติการที่นิยมใช้ ได้แก่ ระบบปฏิบัติการดอส (Dos) ระบบปฏิบัติการวินโดวส์ (Windows) ระบบปฏิบัติการยูนิกส์ (UNIX) และ ระบบปฏิบัติการแมค (MAC OS)
ซอฟต์แวร์ประยุกต์ (Application Software)
เป็นโปรแกรมที่ออกแบบมาเพื่อให้เราสามารถใช้งานเฉพาะเรื่องตามที่เราต้องการ เช่น งานพิมพ์เอกสาร งานพิมพ์รายงาน วาดภาพ เล่นเกม หรือโปรแกรมระบบบัญชีซึ่งจะนำมาใช้ในบริษัทเพื่อทำงานทางด้านบัญชี รายรับรายจ่าย และเงินเดือนโปรแกรมอินเทอร์เน็ตเอกซ์พลอเรอร์ ใช้เพื่อการสืบค้นข้อมูลและเชื่อมโยงกับระบบอินเทอร์เน็ตก็ได้ เน้นการใช้งานที่สะดวก
ภาษาคอมพิวเตอร์
เป็นภาษาที่ถูกสร้างขึ้นเพื่อใช้สื่อสารแทนผู้ใช้โปรแกรมกับเครื่อง คอมพิวเตอร์ โดยภาษาคอมพิวเตอร์จะทำหน้าที่แปลความต้องการของผู้ใช้กับอุปกรณ์ฮาร์ดแวร์ และซอฟต์แวร์ ซึ่งมีรูปแบบ
แตกต่างกันออกไป
หลักการสร้างซอฟต์แวร์มีหลักการสร้างเหมือนหลักการทางอิเล็กทรอนิกส์ คือการเปิดและปิดกระแสไฟฟ้า โดยสามารถเรียกหลักการเบื้องต้นนี้ว่า “ระบบดิจิทัล” ซึ่งมีการทำงานโดยเมื่อเปิดกระแสไฟฟ้าจะแทนด้วยตัวเลข 1 และเมื่อปิดกระแสไฟฟ้าจะแทนด้วย 0 โดยระบบดิจิทัลนี้เป็นพื้นฐานของภาษาคอมพิวเตอร์ที่ใช้สำหรับสื่อสารหรือ สั่งงานเครื่องคอมพิวเตอร์ซึ่งเรียกว่า ภาษาเครื่อง (Machine Language)
ภาษาเครื่องที่เกิดจากการปิดและเปิดกระแสไฟฟ้าเพื่อสั่งงานหรือสื่อสารสิ่ง ใดสิ่งหนึ่ง เรียกว่า ชุดคำสั่ง และ ชุดคำสั่งหลายๆ ชุดประกอบกัน เรียกว่า ซอฟต์แวร์ โดยซอฟต์แวร์เหล่านั้นจะถูกบันทึกไว้ที่อุปกรณ์บันทึกข้อมูลเพื่อนำไปใช้งาน ต่อไป
แต่เนื่องจากการใช้ภาษาเครื่องเพื่อจัดทำชุดคำสั่งนั้น จะต้องประกอบไปด้วยเลข 0 และเลข 1 เป็นจำนวนมาก ทำให้เข้าใจและใช้งานยาก จึงมีการกำหนดภาษาต่างๆ ให้ผู้ใช้งานสามารถเข้าใจภาษาเครื่องเหล่านั้นได้สะดวกและง่ายยิ่งขึ้น
ภาษาคอมพิวเตอร์ : ภาษาระดับต่ำ (Low Level Language)
คือ ภาษาที่สร้างขึ้นเพื่อควบคุมอุปกรณ์คอมพิวเตอร์หรือฮาร์ดแวร์แต่ละส่วนเฉพาะ เครื่องคอมพิวเตอร์นั้นๆ ไม่สามารถใช้กับเครื่องคอมพิวเตอร์ประเภทอื่นได้ ภาษาระดับต่ำสามารถแบ่งได้ 2 ประเภท ได้แก่
1. ภาษาเครื่อง (Machine Language) คือ ภาษาที่พัฒนามาพร้อมกับการสร้างเครื่องคอมพิวเตอร์ โดยเครื่องคอมพิวเตอร์สามารถเข้าใจได้โดยไม่ต้องใช้ตัวแปลภาษาต่างๆ ซึ่งประกอบไปด้วยตัวเลข 0 กับตัวเลข 1 หรือเลขฐานสองเท่านั้น เช่น 10100111 หมายถึง ตัวอักษร “ง” เป็นต้น
ผู้สร้างหรือผู้เขียนภาษาเครื่องประเภทนี้ จำเป็นต้องมีความรู้ด้านระบบการทำงานของเครื่องคอมพิวเตอร์เป็นอย่างดี จึงจะสามารถสร้างหรือเขียนภาษาเครื่องได้ เพราะภาษาเครื่องเป็นภาษาที่มนุษย์เข้าใจได้ยาก มีความสลับซับซ้อนมาก จึงทำให้ใช้เวลาในการสร้างมากที่สุดเมื่อเปรียบเทียบกับภาษาคอมพิวเตอร์ ประเภทอื่นๆ
2. ภาษาสัญลักษณ์ (Symbolic Language) หรือ ภาษาแอสเซมบลี (Assembly) คือ ภาษาที่ใช้รหัส สัญลักษณ์ ตัวแปลทางคณิตศาสตร์ หรือคำย่อแทนคำสั่งการทำงาน ซึ่งพัฒนามาจากภาษาเครื่องในปี พ.ศ. 2495 ประกอบไปด้วยเลขฐานสอง เลขฐานแปด เลขฐานสิบหก และเลขฐานสิบ
ภาษาสัญลักษณ์สามารถสื่อความหมายกับมนุษย์ได้มากขึ้น แต่คงคุณสมบัติในการควบคุมอุปกรณ์คอมพิวเตอร์ได้เหมือนภาษาเครื่อง ทำให้เป็นภาษาที่ใช้เฉพาะหรือรู้จักกันในผู้สร้างหรือผู้ศึกษาเฉพาะด้านนี้ เท่านั้น การเขียนหรือการสร้างภาษานี้ยังต้องมีขั้นตอนการทำงานอย่างละเอียด ต้องอาศัยผู้รู้และเข้าใจระบบการทำงานภายในเครื่องคอมพิวเตอร์หรืออุปกรณ์ ชิ้นนั้นๆ เป็นอย่างดี
ภาษาคอมพิวเตอร์ : ภาษาระดับสูง (High Level Language)
คือ ภาษาที่ได้รับการพัฒนาให้มีลักษณะคล้ายกับภาษาที่มนุษย์ใช้ในชีวิตประจำวัน โดยผู้สร้างหรือผู้เขียนภาษาระดับสูงไม่จำเป็นต้องรู้ถึงระบบการทำงานภายใน เครื่องคอมพิวเตอร์ จึงมีความง่ายและใช้เวลาในการสร้างหรือเขียนน้อยกว่าภาษาระดับต่ำ
ภาษาระดับสูงยังสามารถใช้ได้กับเครื่องคอมพิวเตอร์ทุกเครื่อง ไม่เฉพาะเจาะจงว่าจะเป็นเครื่องคอมพิวเตอร์แบบใดหรือเครื่องใด ซึ่งอาจมีการปรับปรุงหรือเปลี่ยนแปลงภาษาเพียงเล็กน้อยเท่านั้น
ตัวอย่างภาษาระดับสูง ได้แก่ ภาษาเบสิก (BASIC Language) ภาษาปาสคาล (Pascal Language) และ ภาษาโคบอล (COBOL Language) เป็นต้น
ภาษาคอมพิวเตอร์ : ภาษาระดับสูงมาก
เป็นภาษาที่ได้รับการพัฒนาให้มีความง่ายในการเขียนและการทำความเข้าใจต่อ มนุษย์มากที่สุด ซึ่งสามารถเขียนหรือสั่งงานเครื่องคอมพิวเตอร์ด้วยภาษาที่สั้นกะทันรัด โดยผู้เขียนไม่จำเป็นต้องเรียนรู้หรือสนใจกระบวนการทำงานของเครื่อง คอมพิวเตอร์นั้น เมื่อต้องการให้เครื่องคอมพิวเตอร์ทำงานอะไรก็สามารถสร้างหรือเขียนคำสั่ง นั้นลงไปได้เลย
การสร้างหรือการเขียนภาษาระดับสูง มักสร้างหรือเขียนด้วยโปรแกรมที่มีลักษณะเป็นคำสั่ง
สำเร็จรูปต่างๆ ภายในโปรแกรมสำหรับสร้างภาษาอีกทีหนึ่ง
ตัวอย่างภาษาระดับสูง ได้แก่ ภาษาเอสคิวแอล (SQL = Structured Query Language)
ภาษาคิวบีอี (QBE = Query By Example)
นอกจากภาษาระดับสูงมากข้างต้นแล้ว ยังมีการพัฒนาและสร้างภาษาที่เป็นภาษาธรรมชาติ (Nature Language) ใช้กับเครื่องคอมพิวเตอร์ โดยสามารถพิมพ์คำสั่งที่ต้องการให้เครื่องคอมพิวเตอร์ทำงานได้ในโปรแกรม สร้างหรือเขียนภาษา จากนั้นโปรแกรมนั้นจะแปลเป็นภาษาเครื่องให้คอมพิวเตอร์
เข้า ใจได้โดยตรง หากเครื่องคอมพิวเตอร์ไม่เข้าใจคำสั่งนั้นก็จะถามกลับมา ภาษาธรรมชาตินี้จะใช้ระบบฐานความรู้ (Knowledge Base System) ช่วยในการแปลความหมายของคำสั่งต่างๆ
Knowledge Base System
ตัวแปลภาษา
เนื่องจากเราสามารถสื่อสารกับเครื่องคอมพิวเตอร์ให้เข้าใจได้เพียงภาษา เดียวเท่านั้น คือ “ภาษาเครื่อง” ซึ่งเป็นภาษาที่มีความสลับซับซ้อนและเข้าใจยาก มนุษย์จึงสร้างหรือเขียนโปรแกรมสำหรับแปลภาษาขึ้น เรียกว่า ตัวแปลภาษา (Language Translator) โดยทำหน้าที่แปลภาษาต่างๆ ให้เป็นภาษาเครื่อง เพื่อให้เครื่องคอมพิวเตอร์สามารถทำงานตามคำสั่งของภาษาที่ถูกป้อนเข้าไปได้
ตัวแปลภาษาของภาษาสัญลักษณ์หรือภาษาแอสเซมบลี (Assembly) ซึ่งเป็นภาษาในระดับต่ำของภาษาคอมพิวเตอร์
คือ ตัวแปลภาษาสำหรับภาษาระดับสูงและระดับสูงมาก มีหลักการทำงานโดยการแปลคำสั่งให้เครื่องคอมพิวเตอร์ทำงานทีละคำสั่งจนจบโปรแกรม
คือ ตัวแปลภาษาในระดับสูงและระดับสูงมาก มีหลักการทำงานโดยการแปลคำสั่งทั้งหมดเก็บไว้ในแฟ้มก่อน แล้วจึงสั่งให้เครื่องทำงานทีเดียวจนจบโปรแกรม ตัวแปลภาษาคอมไพเลอร์จึงมีการทำงานเร็วกว่าอินเทอร์พรีเตอร์ตัวแปลภาษาจะ เปลี่ยนไปตามภาษาต่างๆ ที่ใช้ตามระดับของภาษาคอมพิวเตอร์ สามารถแบ่งได้เป็น 3 ประเภท คือ 1. แอสเซมเบลอร์ (Assembler) 2. อินเทอร์พรีเตอร์ (Interpreter) และ 3. คอมไพเลอร์ (Compiler)