นิยาม
ภาษา ในความหมายอย่างกว้าง หมายถึง กริยาอาการที่แสดงออกมาแล้วสามารถทำความเข้าใจกันได้ ไม่ว่าจะเป็นระหว่างมนุษย์กับมนุษย์ มนุษย์กับสัตว์ หรือสัตว์กับสัตว์ ส่วนภาษาในความหมายอย่างแคบนั้น หมายถึง เสียงพูดที่มนุษย์ใช้สื่อสารกันเท่านั้น
พจนานุกรมฉบับราชบัณฑิตยสถานพ.ศ. 2542 ได้ให้คำจำกัดความของคำว่า ภาษา ไว้ว่า "ถ้อยคำที่ใช้พูดหรือเขียนเพื่อสื่อความของชนกลุ่มใดกลุ่มหนึ่ง เช่น ภาษาไทย ภาษาจีน หรือเพื่อสื่อความเฉพาะวงการ เช่น ภาษาราชการ ภาษากฎหมาย ภาษาธรรม; เสียง ตัวหนังสือ หรือกิริยา; อาการที่สื่อความได้ เช่น ภาษาพูด ภาษาเขียน ภาษาท่าทาง ภาษามือ"
ภาษาคอมพิวเตอร์ หมายถึง ภาษาใดๆ ที่ผู้ใช้งานใช้สื่อสารกับคอมพิวเตอร์ หรือคอมพิวเตอร์ด้วยกัน แล้วคอมพิวเตอร์สามารถทำงานตามคำสั่งนั้นได้ คำนี้มักใช้เรียกแทนภาษาโปรแกรม แต่ความเป็นจริงภาษาโปรแกรมคือส่วนหนึ่งของภาษาคอมพิวเตอร์เท่านั้น และมีภาษาอื่นๆ ที่เป็นภาษาคอมพิวเตอร์เช่นกัน ยกตัวอย่างเช่น HTML เป็นทั้งภาษามาร์กอัปและภาษาคอมพิวเตอร์ด้วย แม้ว่ามันจะไม่ใช่ภาษาโปรแกรม หรือภาษาเครื่องนั้นก็นับเป็นภาษาคอมพิวเตอร์ ซึ่งโดยทางเทคนิคสามารถใช้ในการเขียนโปรแกรมได้ แต่ก็ไม่จัดว่าเป็นภาษาโปรแกรม
โปรแกรม หมายถึง ชุดคำสั่งที่เป็นระบบขั้นตอนสั่งงานให้คอมพิวเตอร์ ทํางาน ซึ่งโปรแกรมที่จะใช้สั่งงานคอมพิวเตอร์ได้นั้นจะต้องเขียนด้วยภาษาที่ คอมพิวเตอร์เข้าใจและสามารถปฎิบัติตามได้ เรียกภาษาทึ่ใช้สั่งคอมพิวเตอร์นี้ว่า ภาษาคอมพิวเตอร์โดยผลลัพธ์จะได้ ตามความต้องการ ซึ่งกฎเกณฑ์ต่างๆ ที่ควบคุมการเขียนโปรแกรม คือ ภาษาโปรแกรม (Programming Language)
ภาษาโปรแกรม หมายถึง ภาษาประดิษฐ์ชนิดหนึ่งที่เป็นหนึ่งของภาษาคอมพิวเตอร์ที่ออกแบบขึ้นมาเพื่อสื่อสารชุดคำสั่งแก่เครื่องจักร โดยเฉพาะอย่างยิ่งคอมพิวเตอร์ ภาษาโปรแกรมสามารถใช้สร้างโปรแกรมที่ควบคุมพฤติกรรมของเครื่องจักร และ/หรือ แสดงออกด้วยขั้นตอนวิธี (algorithm) อย่างตรงไปตรงมา โดยภาษานี้เป็นส่วนหนึ่งของ ภาษาคอมพิวเตอร์
โปรแกรมภาษาคอมพิวเตอร์ หมายถึง โปรแกรมที่ใช้ภาษาคอมพิวเตอร์ ในการทำงาน ที่เป็นระบบขั้นตอนในการสร้างโปรแกรมต่างๆ เช่น java โปรแกรมภาษา C เป็นต้น
ระดับภาษาคอมพิวเตอร์
ระดับภาษาคอมพิวเตอร์ มี 3 ระดับ คือ
1. ภาษาระดับต่ำ (Low Level Language) เป็นภาษาที่มนุษย์ทำความเข้าใจได้ยาก ส่วนใหญ่ต้องมีความเข้าใจเกี่ยวกับสถาปัตยกรรมคอมพิวเตอร์ และฮาร์ดแวร์เป็นอย่างดีจึงจะสามารถ
เขียนโปรแกรมสั่งงานได้มีข้อดีในส่วนที่เขียนโปรแกรมควบคุมอาร์ดาแวร์แต่ละส่วนได้โดยตรงจึงทำงานได้เร็ว แต่ไม่เหมาะที่จะใช้ในการพัฒนาโปรแกรม ตัวอย่างของภาษาระดับต่ำได้แก่ ภาษาเครื่อง (Machine Language) และภาษาแอสเซมบลี (Assembly Language) เป็นต้น
2. ภาษาระดับกลาง (Medium Level Language) เป็นภาษาที่ทำความเข้าใจได้ไม่ยากนัก เพราะมีลักษณะ เป็นภาษาแบบโครงสร้าง ทำความเข้าใจได้เหมือนกับภาษาระดับสูงแต่ทำงานได้รวดเร็ว
เหมือนกับภาษาระดับต่ำ สามารถใช้บนเครื่องที่มีความเร็วต่างกันโดยไม่ต้องดัดแปลง ภาษาระดับกลางจึงเป็นที่นิยมใช้กันแพร่หลาย ตัวอย่างของภาษาระดับกลาง ได้แก่ ภาษาซี เป็นต้น
3.ภาษาระดับสูง (High Level Language) เป็นภาษาที่ทำความเข้าใจได้ง่าย มีลักษณะของ
การใช้คำสั่งเป็นภาษาอังกฤษซึ่งใกล้เคียงกับภาษามนุษย์มากการสั่งให้คอมพิวเตอร์ทำงานจะต้องมีการแปลความหมายของคำสั่งโดยใช้ตัวแปลภาษาทีละชุดคำสั่งที่เรียกว่า Interpreter หรือแปลครั้งเดียวทั้งโปรแกรมที่เรียกว่า Compiler
ตัวอย่างข้อมูล โปรแกรมภาษาคอมพิวเตอร์ต่างๆ
ภาษาจาวา
ผู้สร้างและพัฒนา
เจมส์ กอสลิง และวิศวกรคนอื่นๆ ที่ ซัน ไมโครซิสเต็มส์
จุดประสงค์
สร้างเพื่อใช้แทนภาษาซีพลัสพลัส (C++)
รูปแบบ
คล้ายกับภาษาอ็อบเจกต์ทีฟซี (Objective-C)
เหตุการณ์
ภาษาจาวาถูกพัฒนาขึ้นในปี พ.ศ. 2534 (ค.ศ. 1991) โดยเป็นส่วนหนึ่งของ โครงการกรีน (the Green Project)
สำเร็จออกสู่สาธารณะในปี พ.ศ. 2538 (ค.ศ. 1995)
ข้อดี ภาษาจาวามีการตรวจสอบข้อผิดพลาดทั้งตอน compile time และ runtime ทำให้ลดข้อผิดพลาดที่อาจเกิดขึ้นในโปรแกรม และช่วยให้ debug โปรแกรมได้ง่าย
ข้อเสีย tool ที่มีในการใช้พัฒนาโปรแกรมจาวามักไม่ค่อยเก่ง ทำให้หลายอย่างโปรแกรมเมอร์จะต้องเป็นคนทำเอง ทำให้ต้องเสียเวลาทำงานในส่วนที่ tool ทำไม่ได้ ถ้าเราดู tool ของ MS จะใช้งานได้ง่ายกว่า และพัฒนาได้เร็วกว่า
เกร็ดความรู้
แต่เดิมภาษานี้เรียกว่า ภาษาโอ๊ก (Oak) ซึ่งตั้งชื่อตามต้นโอ๊กใกล้ที่ทำงานของ เจมส์ กอสลิง แต่ว่ามีปัญหาทางลิขสิทธิ์ จึงเปลี่ยนไปใช้ชื่อ "จาวา" ซึ่งเป็นชื่อกาแฟแทน
ภาษาซี
ผู้สร้างและพัฒนา เดนนิส ริชชี่ ที่เอทีแอนด์ทีเบลล์แล็บส์
จุดประสงค์
เพื่อใช้เป็นภาษาสำหรับพัฒนา ระบบปฏิบัติการ ยูนิกซ์ แทนภาษาแอสเซมบลี
เหตุการณ์
เริ่มพัฒนาขึ้นระหว่าง พ.ศ. 2512-2516 (ค.ศ. 1969-1973)
รูปแบบ
เครื่องมืออำนวยความสะดวกสำหรับการเขียนโปรแกรมเชิงโครงสร้างและอนุญาตให้มีขอบข่ายตัวแปร (scope) และการเรียกซ้ำ (recursion) ในขณะที่ระบบชนิดตัวแปรอพลวัตก็ช่วยป้องกันการดำเนินการที่ไม่ตั้งใจหลายอย่าง เหมือนกับภาษาโปรแกรมเชิงคำสั่งส่วนใหญ่ในแบบแผนของภาษาอัลกอล การออกแบบของภาษาซีมีคอนสตรักต์ (construct) ที่โยงกับชุดคำสั่งเครื่องทั่วไปได้อย่างพอเพียง จึงทำให้ยังมีการใช้ในโปรแกรมประยุกต์ซึ่งแต่ก่อนลงรหัสเป็นภาษาแอสเซมบลี คือซอฟต์แวร์ระบบอันโดดเด่นอย่างระบบปฏิบัติการคอมพิวเตอร์ ยูนิกซ์
ข้อดี ภาษา C ใช้ได้ในไมโครคอมพิวเตอร์ ตั้งแต่ขนาด 8 บิต 16 บิต 32 บิต มินิคอมพิวเตอร์ หรือ คอมพิวเตอร์ระดับเมนเฟรม มีการพัฒนาการใช้งาน เพื่อให้เป็นมาตรฐาน
ข้อเสีย การเขียนโปรแกรมเพื่อให้ได้ผลลัพธ์แบบเดียวกันอาจทำได้หลายรูปแบบตัวดำเนินการบางตัวอาจทำให้สับสน
เกร็ดความรู้
ภาษาซีเป็นภาษาโปรแกรมหนึ่งที่ใช้กันอย่างแพร่หลายมากที่สุดตลอดกาล และตัวแปลโปรแกรมของภาษาซีมีให้ใช้งานได้สำหรับสถาปัตยกรรมคอมพิวเตอร์และระบบปฏิบัติการต่าง ๆ เป็นส่วนมาก
ภาษาซีพลัสพลัส
ผู้สร้างและพัฒนา
เบียเนอ สเดราสดร็อบจากเบลล์แล็บส์
จุดประสงค์
เพื่อพัฒนาภาษาซีดั้งเดิม
เหตุการณ์
สร้างในปี ค.ศ. 1983
มาตรฐานของภาษาซีพลัสพลัสได้รับการรับรองในปี ค.ศ. 1998 เป็นมาตรฐาน ISO/IEC 14882:1998 เวอร์ชันล่าสุดคือเวอร์ชันในปี ค.ศ. 2003 ซึ่งเป็นมาตรฐาน ISO/IEC 14882:2003
รูปแบบ
เหมือนภาษา C แต่สิ่งเพิ่มขึ้นนั้นเริ่มจากเพิ่มเติมการสร้างคลาสจากนั้นก็เพิ่มคุณสมบัติต่างๆ ตามมา ได้แก่ เวอร์ชวลฟังก์ชัน การโอเวอร์โหลดโอเปอเรเตอร์ การสืบทอดหลายสาย เทมเพลต และการจัดการเอกเซพชัน ในปัจจุบันมาตรฐานของภาษาในเวอร์ชันใหม่ (รู้จักกันในชื่อ C++0x) กำลังอยู่ในขั้นพัฒนา
จึงกล่าวได้ว่าเป็นภาษาโปรแกรมคอมพิวเตอร์อเนกประสงค์ มีโครงสร้างภาษาที่มีการจัดชนิดข้อมูลแบบสแตติก (statically typed) และสนับสนุนรูปแบบการเขียนโปรแกรมที่หลากหลาย (multi-paradigm language) ได้แก่ การโปรแกรมเชิงกระบวนคำสั่ง, การนิยามข้อมูล, การโปรแกรมเชิงวัตถุ, และการโปรแกรมแบบเจเนริก (generic programming)
เกร็ดความรู้
ภาษาซีพลัสพลัสเดิมใช้ชื่อ "C with classes"ภาษาซีพลัสพลัสเป็นภาษาโปรแกรมเชิงพาณิชย์ที่นิยมมากภาษาหนึ่งนับตั้งแต่ช่วงทศวรรษ 1990
ภาษาซีชาร์ป
ผู้สร้างและพัฒนา
พัฒนาเริ่มแรกโดยบริษัทไมโครซอฟท์เพื่อทำงานบนดอตเน็ตเฟรมเวิร์ก โดยมีแอนเดอร์ เฮลส์เบิร์ก (Anders Hejlsberg) เป็นหัวหน้าโครงการ
จุดประสงค์
ภาษาสมัยใหม่ที่ไม่ซับซ้อน ใช้งานได้ทั่วไป (general-purpose) และเป็นเชิงวัตถุเป็นหลัก
เหตุการณ์
ไมโครซอฟท์ส่งมาตรฐานภาษาซีชาร์ปให้กับ Ecma และได้รับการยอมรับเป็นมาตรฐาน ECMA ในเดือนธันวาคม ค.ศ. 2001 ในชื่อว่า ECMA-334 C# Language Specification
ใน ค.ศ. 2003 ภาษาซีชาร์ปได้รับการยอมรับเป็นมาตรฐาน ISO (ISO/IEC 23270).
ปัจจุบันภาษาซีซาร์ปมีการรับรองให้เป็นมาตรฐานโดยเอ็กมาอินเตอร์เนชันแนล (Ecma International) และองค์การระหว่างประเทศว่าด้วยการมาตรฐาน (ISO) และมีรุ่นล่าสุดคือ C♯ 5.0 ที่ออกมาเมื่อวันที่ 15 สิงหาคม พ.ศ. 2555
รูปแบบ
เป็นภาษาโปรแกรมแบบหลายโมเดล ที่ใช้ระบบชนิดข้อมูลแบบรัดกุม (strong typing) และสนับสนุนการเขียนโปรแกรมเชิงคำสั่ง การเขียนโปรแกรมเชิงประกาศ การเขียนโปรแกรมเชิงฟังก์ชัน การเขียนโปรแกรมเชิงกระบวนการ การเขียนโปรแกรมเชิงวัตถุ (แบบคลาส) และการเขียนโปรแกรมเชิงส่วนประกอบ และมีรากฐานมาจากภาษาซีพลัสพลัสและภาษาอื่นๆ (โดยเฉพาะภาษาเดลไฟและจาวา) โดยมีจุดมุ่งหมายให้เป็น
ข้อดี รองรับ XML documentation คล้ายๆ javadoc คือเอาคอมเม้นต์ในโค้ดมาแปลงเป็นเอกสาร
ข้อเสีย ไม่มีการแจ้งเตือน เกี่ยวกับช่องว่าง ที่อยู่ใน Code ไม่ว่าคุณจะใส่ช่องว่าง จำนวนมาก อักขระ Carriage return หรือ Tap เป็นอักขระที่รู้จักกันในชื่อว่า White space นั่นหมายความว่า เรามีอิสระในการ ที่จะจัดรูปแบบ Source Code ของเราได้ ถึงแม้ว่าการทำตามกฏที่แน่นอน