คอมพิวเตอร์รับคำสั่งการทำงานเป็นสัญญาณไฟฟ้า เรียกว่า ภาษาเครื่อง (Machine Language) ซึ่งมนุษย์ทำความเข้าใจยาก เนื่องจากเป็นรหัสตัวเลขแบบต่าง ๆ ไม่สะดวกต่อการสั่งให้คอมพิวเตอร์ทำงาน จึงได้มีการพัฒนาภาษาที่ใช้กับคอมพิวเตอร์ขึ้นมาหลายภาษา แบ่งได้เป็น 2 ระดับ คือ ภาษาระดับต่ำ (Low-level Language) และภาษาระดับสูง (High-level Language)
ภาษาคอมพิวเตอร์ ได้ถูกพัฒนามาหลายยุคหลายสมัย ตั้งแต่ยุคแรก การใช้ภาษายังมีความใกล้เคียงกับภาษาเครื่องคอมพิวเตอร์มาก เรียกว่า ภาษาระดับต่ำ (Low-level Language) แต่มีโครงสร้างและรูปแบบที่ยากต่อความเข้าใจของมนุษย์ ต่อมาได้พัฒนารูปแบบภาษาที่มีความใกล้เคียงกับภาษามนุษย์ เรียกว่า ภาษาระดับสูง (High-level Language) สามารถจำแนกยุคของภาษาคอมพิวเตอร์ได้ 5 ยุค ดังนี้
ตัวแปลภาษามี 2 ประเภท คือ คอมไพเลอร์ (Compiler) และอินเทอร์พรีเตอร์ (Interpreter)
ตัวแปลโปรแกรมภาษาต่าง ๆ มีจะมีชื่อเรียกตามภาษานั้น เช่น
การพัฒนาโปรแกรมมี 6 ขั้นตอน ดังนี้
ตัวอย่าง การวิเคราะห์ปัญหาและความต้องการของผู้ใช้
การเขียนโปรแกรมคำนวณหาพื้นที่สามเหลี่ยม
การวิเคราะห์
ตัวอย่าง การกำหนดรายละเอียดของโปรแกรมคำนวณหาพื้นที่สามเหลี่ยม
รายละเอียดของโปรแกรม
- ข้อมูลเข้า ความยาวฐาน ความสูง
- การประมวลผล คำนวณพื้นที่สามเหลี่ยม
- การแสดงผล แสดงผลพื้นที่สามเหลี่ยม
ขีดจำกัดของโปรแกรม คำนวณพื้นที่สามเหลี่ยมได้ครั้งละรูปเท่านั้น หากต้องการคำนวณอีก ต้องเปิดโปรแกรมใหม่
3. การออกแบบโปรแกรม (Program Design) เป็นการกำหนดลำดับขั้นตอนการทำงานของโปรแกรม หรือวิธีการที่จะใช้ในการแก้ปัญหา (Algorithm) เครื่องมือที่ใช้ในการออกแบบโปรแกรม เช่น รหัสเทียม (Psuedo-code) และผังงาน (Flowchart) มีรายละเอียดดังนี้
ในการเขียนลำดับขั้นตอนการทำงานของโปรแกรมหรือการทำงานของแต่ละฟังก์ชัน โดยไม่ใช้ภาษาคอมพิวเตอร์โดยตรง แต่เป็นภาษาที่มนุษย์ใช้ อาจเป็นภาษาอังกฤษ หรือภาษาไทย ก็ได้
สัญลักษณ์ที่ใช้ในการเขียนผังงานทั่วไป
สัญลักษณ์ที่ใช้เขียนผังงานที่เกี่ยวกับข้อมูลเข้า/ออก
ตัวอย่างผังงาน โปรแกรมคำนวณพื้นที่สามเหลี่ยม
ตัวอย่างโปรแกรมภาษาซี โปรแกรมคำนวณพื้นที่สามเหลี่ยม ( trian.c )
#include <stdio.h> int main(){ float area , base , height; scanf("%f %f" , &base , &height); area = 0.5 * base * height; printf("Area of Triangle = %.2f" ,area); return 0; }
5. การทดสอบโปรแกรม (Testing) และการแก้ไขข้อผิดพลาด (Debugging)
การตรวจสอบโปรแกรมสามารถทำได้ด้วยสายตา ว่าโปรแกรมที่พิมพ์ตรงกับที่เขียนไว้หรือไม่ แล้วให้ตัวแปลภาษาทำการแปลโปรแกรม เรียกว่า คอมไพล์ (Compile) เพื่อหาว่ามีข้อผิดพลาดอะไรบ้าง เช่น ผิดรูปแบบคำสั่ง (Syntax Error) หรือผิดอื่น ๆ เมื่อพบที่ผิดก็ต้องแก้ไข แล้วแปลโปรแกรมใหม่ จนกว่าจะคอมไพล์ผ่านได้เป็นแฟ้มจุดหมาย (Object File) ซึ่งมีนามสกุลเป็น .obj
ตัวอยางผลการคอมไพล์โปรแกรม คำนวณพื้นที่สามเหลี่ยม (trian.c -> trian.obj)
เมื่อไม่มีข้อผิดพลาดจากการคอมไพล์แล้ว จึงทำการสร้างแฟ้มโปรแกรมใช้งานที่เป็นภาษาเครื่อง ซึ่งมีนามสกุล .exe
เมื่อได้แฟ้มที่เป็นภาษาเครื่อง .exe แล้ว ก็สามารถทดสอบการทำงานของโปรแกรม เพื่อหาข้อผิดพลาดขณะทำงาน (Run-time Error) โดยใช้ข้อมูลทดสอบ (Test Data) และหาว่าตรรกะของโปรแกรมผิดหรือไม่ (Program Logic Error) โดยตรวจสอบและแก้ไขจนแน่ใจว่าโปรแกรมทำงานได้ถูกต้อง
ตัวอยางผลการทดสอบโปรแกรม คำนวณพื้นที่สามเหลี่ยม (trian.c -> trian.exe)
6. การจัดทำเอกสารประกอบโปรแกรม (Documentation)
การจัดทำคู่มือการใช้โปรแกรมและเอกสารประกอบโปรแกรม เพื่อให้ผู้ใช้งาน สามารถใช้โปรแกรมได้สะดวก โดยคู่มือการใช้โปรแกรมควรอธิบายขั้นตอนต่าง ๆ ที่จำเป็นในการใช้งาน ความสามารถและขีดจำกัดของโปรแกรม ตัวอย่างการใช้งานต่าง ๆ เช่น การนำข้อมูล การแสดงผลหรือรายงาน ที่ได้จากการทำงานของโปรแกรม เป็นต้น