ผมได้พบกับคำถามในเว็บบอร์ด pantip.com ที่มีคำตอบที่น่าสนใจครับ
ซอฟต์แวร์และโปรแกรม…สองคำนี้มีความหมายต่างหรือเหมือนกัน ???
ถ้าเหมือน เหมือนอย่างไร และถ้าต่าง ต่างอย่างไร
เรามีคำตอบครับ ………..
ตอบ : ซอฟต์แวร์เป็นคำทั่วไปที่ใช้กล่าวถึงโปรแกรมหลายชนิดที่ใช้ในการสั่งงานคอมพิวเตอร์และ อาจเกี่ยวข้องกับอุปกรณ์(คำว่าฮาร์ดแวร์ใช้อธิบายถึงคอมพิวเตอร์ในด้านกายภาพและอุปกรณ์ที่เกี่ยวข้อง)
เราอาจจะนึกถึงซอฟต์แวร์ในแง่ของคอมพิวเตอร์ในส่วนที่สามารถเปลี่ยนแปลงได้(updatable) และฮาร์ดแวร์ในแง่ของคอมพิวเตอร์ในส่วนที่เปลี่ยนแปลงไม่ได้ ซอฟต์แวร์, บ่อยครั้งมีการแบ่งเป็น แอปพลิเคชั่นซอฟต์แวร์(โปรแกรมซึ่งปฏิสัมพันธ์กับผู้ใช้โดยตรง) และ ซอฟต์แวร์ระบบ(ประกอบไปด้วย ระบบปฏิบัติการและโปรแกรมอะไรก็ตามแต่ที่สนับสนุนการทำงานของแอปพลิเคชั่นซอฟต์แวร์) สำหรับคำว่า middleware บางครั้งใช้ในการอธิบายถึงโปรแกรมที่ทำหน้าที่เชื่อมต่อระหว่างแอปพลิเคชั่นและซอฟต์แวร์ระบบ หรือ ระหว่างแอปพลิเคชั่นต่างชนิดกัน (ยกตัวอย่าง การร้องขอการทำงานระยะไกลจากแอปพลิเคชั่นซึ่งอยู่บนระบบปฏิการชนิดหนึ่งไปสู่แอปพลิเคชั่นซึ่งรันอยู่บนระบบปฏิบัติการอีกชนิดหนึ่ง)
สำหรับกลุ่มของซอฟต์แวร์ไม่สามารถจะจัดเข้ากลุ่มใดๆได้นั้นเรียกว่า ซอฟต์แวร์อรรถประโยชน์(utility) ซึ่งเป็นโปรแกรมขนาดเล็กที่มีประโยชน์ ยูทิลิตี้บางตัวมาพร้อมกับระบบปฏิบัติการ เช่นเดียวกับแอปพลิเคชั่น ยูทิลิตี้สามารถจะติดตั้งได้อย่างอิสระและไม่ได้เป็นส่วนหนึ่งของระบบปฏิบัติการ
ซอฟต์แวร์ยังแบ่งได้อีกหลายชนิดเช่น shareware (ส่วนมากจะต้องซื้อเมื่อครบกำหนดระยะเวลาทดลองใช้), liteware(แชร์แวร์ซึ่งมีการตัดความสามารถบางอย่างออกไป), freeware(ซอฟต์แวร์ฟรีแต่มีการจำกัดสิทธิ), public domain software(ฟรีและไม่มีข้อบังคับ) และ open source(ซอฟต์แวร์ที่มีการแจกจ่ายซอร์สโค้ดและใช้งานได้อย่างไม่จำกัดรวมทั้งสามารถปรับปรุงได้)
แอปพลิเคชั่นซอฟต์แวร์ทั่วๆไปมีดังนี้
– ซอฟต์แวร์ผลิตภัณฑ์ เช่น ตัวประมวลผลคำ(word processor), ตารางคำนวณ(spreadsheet) และเครื่องมือที่ใช้กันโดยผู้ใช้ส่วนใหญ่
– ซอฟต์แวร์นำเสนอ(presentation software)
– ซอฟต์แวร์กราฟฟิกส์ สำหรับนักออกแบบกราฟฟิกส์
– ซอฟต์แวร์ช่วยเหลือการออกแบบ CAD/CAM
– แอปพลิเคชั่นทางด้านวิทยาศาสตร์เฉพาะทาง
– ซอฟต์แวร์สำหรับอุตสาหกรรม (ยกตัวอย่างเช่น ธนาคาร, ประกันภัย, ค้าปลีก และอุตสาหกรรมการผลิต)
ในทางคอมพิวเตอร์ โปรแกรมคือชุดของคำสั่งที่ให้คอมพิวเตอร์ปฏิบัติ ในคอมพิวเตอร์ยุคใหม่ที่ จอห์น วอน นิวแมนน์ วางรูปแบบเอาไว้เมื่อปี 1945 โปรแกรมประกอบไปด้วยชุดของของสั่งที่ทำงานหนึ่งคำสั่งในหนึ่งหน่วยเวลา โดยทั่วไปโปรแกรมจะเก็บอยู่ในพื้นที่ของหน่วยเก็บข้อมูลที่สามารถเข้าถึงได้โดยคอมพิวเตอร์ คอมพิวเตอร์จะดึงคำสั่งมาทีละหนึ่งคำสั่งแล้วประมวลผลและดึงคำสั่งถัดไปมาทำงานเช่นนี้เป็นวงรอบ(cycle) หน่วยเก็บข้อมูลหรือหน่วยความจำสามารถเก็บข้อมูลซึ่งก็คือคำสั่งที่ให้คอมพิวเตอร์ปฏิบัติตาม(โปรแกรมคือชุดข้อมูลชนิดพิเศษที่บอกว่าจะปฏิบัติอย่างไรกับ แอปพลิเคชั่นหรือข้อมูลของผู้ใช้)
โปรแกรมสามารถแบ่งออกเป็นแบบปฏิสัมพันธ์(interactive) หรือชุดคำสั่ง(batch) ในเชิงของการโต้ตอบระหว่างคอมพิวเตอร์กับผู้ใช้และความต่อเนื่องในการประมวลผล โปรแกรมแบบปฏิสัมพันธ์จะรับข้อมูลจากผู้ใช้(หรือจากโปรแกรมอื่นที่ทำหน้าที่เสมือนผู้ใช้) โปรแกรมชุดคำสั่ง(batch) จะรันโปรแกรมและทำงานจนกระทั่งชุดของคำสั่งหมดจึงหยุดทำงาน โปรแกรมแบบชุดคำสั่งจะเริ่มทำงานโดยผู้ใช้สั่งให้โปรแกรมรัน ตัวแปลคำสั่ง(command interpreter) หรือเว็บบราวเซอร์เป็นตัวอย่างอย่างของระบบปฏิสัมพันธ์ และโปรแกรมคอมพิวเตอร์ที่ใช้พิมพ์ข้อมูลเงินเดือนของพนักงานในบริษัทเป็นตัวอย่างหนึ่งของโปรแกรมชุดคำสั่ง(batch program) งานพิมพ์ก็เป็นส่วนหนึ่งของโปรแกรมชุดคำสั่ง
เมื่อคุณต้องการสร้างโปรแกรม คุณจะต้องเขียนมันโดยใช้ภาษาคอมพิวเตอร์ ข้อความในแต่ละประโยคเรียกว่า "source program" จากนั้นคุณจะต้องคอมไพล์ ซอร์สโปรแกรม(ด้วยโปรแกรมพิเศษที่เรียกว่าคอมไพล์เลอร์) และผลลัพธ์ที่ได้จะเรียกว่า object program (อย่าสับสนกับคำว่า object-orieted-programming) มีอีกสองคำที่ใช้เรียก object program ประกอบด้วย object module และ compiled program ภายใน object program จะประกอบไปด้วยชุดข้อความที่เป็นเลข 0 และ 1 เรียกว่า machine language ซึ่งเป็นภาษาที่โปรเซสเซอร์เข้าใจและสามารถสั่งให้โปรเซสเซอร์ประมวลผล
ภาษาเครื่องจักร(machine language) ของคอมพิวเตอร์จะสร้างขึ้นโดยคอมไพล์เลอร์ซึ่งเข้าใจการทำงานของคอมพิวเตอร์, สถาปัตยกรรมคอมพิวเตอร์, รวมไปถึงชุดคำสั่งที่เป็นไปได้และความยาวของคำสั่ง(ในหน่วยบิต) ในแต่ละคำสั่งของโปรเซสเซอร์(machine instruction)
ข้อมูลจาก whatis.com
จากข้อมูลข้างต้นอาจจะยากในการทำความเข้าใจ ถ้าจะอธิบายง่ายๆก็คือ program คือชุดคำสั่งซึ่งถูกเขียนขึ้นเพื่อสั่งให้คอมพิวเตอร์ทำงานอะไรสักอย่าง แต่เมื่อโปรแกรมถูกคอมไพล์แล้วจะกลายเป็น software ทันที ซึ่งซอฟต์แวร์ก็แบ่งเป็น system software และ application software ซึ่งซอฟต์แวร์พวกนี้จะอยู่ในหน่วยความจำหรือหน่วยเก็บข้อมูล ในขณะที่โปรแกรมอยู่ในไฟล์
ทิ้งท้าย …….
คำแปลตามลักษณะของหนังสือคำศัพท์โดยตรงครับ ไว้อ้างอิงครับ
Software = The programs, routines, and symbolic languages that control the functioning of the hardware and direct its operation.
source : The American Heritage® Dictionary of the English Language, Fourth Edition
Copyright © 2000 by Houghton Mifflin Company.
Published by Houghton Mifflin Company. All rights reserved.
Program = A set of coded instructions that enables a machine, especially a computer, to perform a desired sequence of operations.
source : The American Heritage® Dictionary of the English Language, Fourth Edition
Copyright © 2000 by Houghton Mifflin Company.
Published by Houghton Mifflin Company. All rights reserved.
from: dictionary.com