Software (ซอฟต์แวร์) เป็นองค์ประกอบของคอมพิวเตอร์ที่เราไม่สามารถสัมผัสจับต้องได้โดยตรงเป็นชุดคำสั่งหรือโปรแกรม (Program) ที่เขียนขึ้นเพื่อให้คอมพิวเตอร์ทำงาน ซอฟต์แวร์จึงเป็นเสมือนตัวเชื่อมระหว่างผู้ใช้งานกับคอมพิวเตอร์ให้สามารถเข้าใจกันได้
ซอฟต์แวร์แบ่งออกเป็น 2 ประเภท คือ
1.ซอฟต์แวร์ระบบ (System Software หรือ Operating Software : OS)
หมายถึงโปรแกรมที่ทำหน้าที่ประสานการทำงาน ติดต่อการทำงาน ระหว่างฮาร์ดแวร์กับซอฟต์แวร์ประยุกต์เพื่อให้ผู้ใช้สามารถใช้ซอฟต์แวร์ได้อย่างมีประสิทธิภาพและทำหน้าที่ในการจัดการระบบ ดูแลรักษาเครื่อง การแปลภาษาระดับต่ำหรือระดับสูงให้เป็นภาษาเครื่องเพื่อให้เครื่องอ่านได้เข้าใจ
ซอฟต์แวร์ระบบ แบ่งได้ 4 ชนิด ดังนี้
1.1 ระบบปฏิบัติการ (Operating System) หมายถึง หมายถึง ชุดโปรแกรมที่อยู่ระหว่างฮาร์ดแวร์และซอฟต์แวร์ประยุกต์มีหน้าที่ควบคุมการปฏิบัติงานของฮาร์ดแวร์และสนับสนุนคำสั่งสำหรับควบคุมการทำงานของฮาร์ดแวร์ให้กับซอฟต์แวร์ประยุกต์ เช่น Windows XP, DOS, Linux, Mac OS X
1.2 ยูทิลิตี้ (Utility Program) เป็นโปรแกรมที่ทำหน้าที่เพิ่มประสิทธิภาพของเครื่องคอมพิวเตอร์ ทำให้เครื่องทำงานง่ายขึ้นเร็วขึ้น และการป้องกันการรบกวนโดยโปรแกรมที่ไม่พึงประสงค์ เช่น โปรแกรมป้องกันไวรัส โปรแกรม Defrag เพื่อจัดเรียงข้อมูลบนฮาร์ดดิสก์ใหม่ ทำให้การอ่านข้อมูลเร็วขึ้น โปรแกรมยกเลิกการติดตั้งโปรแกรม Uninstall Program โปรแกรมบีบอัดไฟล์ (WinZip-WinRAR) เพื่อทำให้ไฟล์มีขนาดเล็กลง โปรแกรมการสำรองข้อมูล (Backup Data)
1.3 ดีไวซ์ไดเวอร์ (Device Driver หรือ Driver) เป็นโปรแกรมที่ทำหน้าที่ติดต่อกับคอมพิวเตอร์ในส่วนการรับเข้าและการส่งออก ของแต่ละอุปกรณ์ เช่น เมื่อเราซื้อกล้องวีดีโอมาใหม่และต้องการนำเอาวีดีโอที่ถ่ายเสร็จ นำไปตัดต่อที่คอมพิวเตอร์ ก็ต้องติดตั้งไดรฟ์เวอร์หรือโปรแกรมที่ติดมากับกล้อง ทำการติดตั้งที่เครื่องคอมพิวเตอร์เพื่อให้เครื่องคอมพิวเตอร์รู้จักและสามารถรับข้อมูลเข้าและส่งข้อมูลออกได้ลออกได้
โดยปกติโปรแกรม Windows ที่เรามีอยู่ในเครื่องคอมพิวเตอร์จะมีไดรฟ์เวอร์ติดตั้งมาให้แล้วโดยเราไม่ต้องทำการติดตั้งไดรฟ์เวอร์เอง เช่น ไดรฟ์เวอร์สำหรับเมาส์ ไดรฟ์เวอร์คีย์บอร์ด, ไดรฟ์เวอร์สำหรับการใช้ USB Post ไดรฟ์เวอร์เครื่องพิมพ์ แต่ถ้าอุปกรณ์ใดไม่สามารถใช้งานร่วมกับเครื่องคอมพิวเตอร์ได้ก็ต้องหาไดรฟ์เวอร์มาติดตั้งเพื่อให้สามารถใช้งานได้ ซึ่งต้องเป็นไดรฟ์เวอร์ที่พัฒนามาของแต่ละบริษัทผู้ผลิตอุปกรณ์
1.4 ตัวแปลภาษา (Language Translator) คือโปรแกรมที่ทำหน้าที่แปลภาษาระดับต่ำหรือระดับสูงเพื่อให้เครื่องคอมพิวเตอร์เข้าใจว่าต้องการให้ทำอะไร เช่น เมื่อโปรแกรมเมอร์ได้เขียนโปรแกรมเสร็จโดยเขียนในลักษณะภาษาระดับต่ำ (Assembly) หรือภาษาระดับสูง (โปรแกรมภาษา C) เสร็จก็ต้องมีตัวแปลภาษาเพื่อให้เครื่องคอมพิวเตอร์อ่านเข้าใจ เพราะเครื่องคอมพิวเตอร์จะเข้าใจเฉพาะตัวเลข 0 กับ ตัวเลข 1 เท่านั้น
ตัวแปลภาษาแบ่งได้ 3 ตัวแปล ดังนี้
1. แอสเซมเบลอร์ (Assembler) เป็นตัวแปลภาษาระดับต่ำให้เป็นภาษาเครื่อง เช่นแปลจากภาษา Assembly เป็นภาษาเครื่อง
2. อินเตอร์พรีเตอร์ (Interpreter) เป็นตัวแปลภาษาระดับสูงให้เป็นภาษาเครื่องโดยแปลทีละบรรทัดคำสั่ง เช่น โปรแกรมเมอร์ใช้โปรแกรมภาษา Basic ในการพัฒนาโปรแกรมแล้วแปลเป็นภาษาเครื่องทีละบรรทัดคำสั่ง
3. คอมไพเลอร์ (Compiler) เป็นตัวแปลภาษาระดับสูงให้เป็นภาษาเครื่องโดยแปลทั้งโปรแกรมทีเดียว เช่น โปรแกรมเมอร์ใช้โปรแกรมภาษา C ในการพัฒนาโปรแกรมแล้วแปลเป็นภาษา เครื่องโดยแปลทั้งโปรแกรมทีเดียว ซึ่งจะเป็นที่นิยมมากกว่า ข้อ 2
2.ซอฟต์แวร์ประยุกต์
ซอฟต์แวร์ประยุกต์เป็นโปรแกรมที่ใช้สำหรับทำงานต่างๆ ตามที่ต้องการ เช่น การทำงานเอกสาร งานกราฟิก งานนำเสนอหรือเป็น ซอฟต์แวร์สำหรับงานเฉพาะด้าน เช่น โปรแกรมงานทะเบียน โปรแกรมการให้บริการเว็บ โปรแกรมงานด้านธนาคาร
ซอฟต์แวร์ประยุกต์แบ่งเป็น 2 ประเภท ดังนี้
1. ซอฟต์แวร์สำหรับงานเฉพาะด้าน เป็น ซอฟต์แวร์ที่ใช้สำหรับงานเฉพาะด้าน เช่น ซอฟต์แวร์สำหรับงานธนาคารการฝากถอนเงิน ซอฟต์แวร์สำหรับงานทะเบียนนักเรียน ซอฟต์แวร์คิดภาษี ซอฟต์แวร์การให้บริการร้านสะดวกซื้อ ฯลฯ
2. ซอฟต์แวร์สำหรับงานทั่วไป เป็นซอฟต์แวร์ที่ใช้สำหรับงานทั่วไป โดยในซอฟต์แวร์ 1 ตัวมีความสามารถในการทำงานได้หลายอย่าง เช่น ซอฟต์แวร์งานด้านเอกสาร (Microsoft Word) มีความสามารถในการสร้างงานเอกสารต่าง ๆ จัดทำเอกสารรายงาน จัดทำแผ่นพับ จัดทำหนังสือเวียน จัดทำสื่อสิ่งพิมพ์
I have an id of "popup" on my page container and only look like a dialog because the link to me had a data-rel="dialog"
attribute which gives me this inset look and a data-transition="pop"
attribute to change the transition to pop. Without this, I'd be styled as a normal page.