วันพุธที่ 24 มิถุนายน พ.ศ. 2558

[ Week 4 ] : ภาษาโปรแกรมคอมพิวเตอร์ (C#)


นสัปดาห์นี้ผมจะกล่าวถึงภาษาโปรแกรมคอมพิวเตอร์ ซึ่งภาษามีมากมายหลากหลายประเภท เช่น C,Java เป็นต้น โดยในบทความนี้ผมได้เลือกทำภาษา C# เพราะเห็นว่าคนน่าจะรู้จักน้อยและไม่ค่อยมีใครทำ จึงยกภาษานี้ขึ้นมาทำ แต่ผมนั้นไม่มีความรู้ในเรื่องนี้มากนักผมจึงขอยกบทความมาแทนแล้วกัน เราไปติตามชมกันเลยครับอิอิ
ภาษาซีชาร์ป (C Programming Language) เป็นภาษาโปรแกรมแบบหลายโมเดล ที่ใช้ระบบชนิดข้อมูลแบบรัดกุม (strong typing) และสนับสนุนการเขียนโปรแกรมเชิงคำสั่ง การเขียนโปรแกรมเชิงประกาศ การเขียนโปรแกรมเชิงฟังก์ชัน การเขียนโปรแกรมเชิงกระบวนการ การเขียนโปรแกรมเชิงวัตถุ (แบบคลาส) และการเขียนโปรแกรมเชิงส่วนประกอบ พัฒนาเริ่มแรกโดยบริษัทไมโครซอฟท์เพื่อทำงานบนดอตเน็ตเฟรมเวิร์ก โดยมีแอนเดอร์ เฮลส์เบิร์ก (Anders Hejlsberg) เป็นหัวหน้าโครงการ และมีรากฐานมาจากภาษาซีพลัสพลัสและภาษาอื่นๆ (โดยเฉพาะภาษาเดลไฟและจาวา) โดยมีจุดมุ่งหมายให้เป็นภาษาสมัยใหม่ที่ไม่ซับซ้อน ใช้งานได้ทั่วไป (general-purpose) และเป็นเชิงวัตถุเป็นหลัก
ปัจจุบันภาษาซีซาร์ปมีการรับรองให้เป็นมาตรฐานโดยเอ็กมาอินเตอร์เนชันแนล (Ecma International) และองค์การระหว่างประเทศว่าด้วยการมาตรฐาน (ISO) และมีรุ่นล่าสุดคือ C♯ 5.0 ที่ออกมาเมื่อวันที่ 15 สิงหาคม พ.ศ. 2555
ตัวอย่างภาษาซีชาร์ปนะครับ
ตัวอย่างต่อไปนี้ คือตัวอย่างโปรแกรม Hello world ใน C#:
public class ExampleClass
{
    public static void Main()
    {
        System.Console.WriteLine("Hello, world!");
    }
}
ผลของการทำงานคือมีการแสดงคำว่า Hello, world! ในหน้าต่างคอนโซล โดยในแต่ละบรรทัดมีความหมายดังนี้:
public class ExampleClass
บรรทัดนี้คือการประกาศ Class, public หมายถึงวัตถุที่สร้างในโครงการ (Project) อื่นๆ สามารถเข้าใช้งาน Class นี้ได้ ไม่จำกัด. ข้อมูลต่างๆ ที่อยู่ผ่านใต้หน่วยของบรรทัดนี้ จะใช้ในการทำงานของ Class นี้
public static void Main()
บรรทัดนี้เป็นจุดที่ใช้ในการเริ่มการทำงานของโปรแกรม เมื่อโปรแกรมทำงาน โดยสามารถเรียกใช้จากโปรแกรมอื่นได้โดยการใช้ไวยากรณ์ ExampleClass.Main() . (public static void เป็นส่วนที่ใช้ในการทำงาน ซึ่งต้องเรียนรู้ในการเขียนขั้นสูง)
System.Console.WriteLine("Hello, world!");
ในบรรทัดนี้ เป็นการทำงาน เพื่อแสดงผลออกมา Console คือโปรแกรมระบบ, ซึ่งก็คือ โปรแกรมระบบแบบสั่งคำสั่งที่ละบรรทัด (เช่น DOS) ที่สามารถรับข้อมูลและแสดงผลเป็นข้อความได้. จากที่เราเขียนโปรแกรมจะทำการเรียก Console โดยใช้คำสั่ง WriteLine, ซึ่งทำให้สามารถส่งค่าข้อความออกมาแสดงผลได้
จะเห็นได้ว่ามันยากมากๆ ถ้าไม่ได้ศึกษาเฉพาะด้านจริงๆก็คงมีปวดหัวมึนตึ๊บสลบเหมือดกันไปเป็นแถวๆครับ
ต่อไปจะเป็นมาตรฐานของภาษา ซีชาร์ปนะครับ
ไมโครซอฟท์ส่งมาตรฐานภาษาซีชาร์ปให้กับ Ecma และได้รับการยอมรับเป็นมาตรฐาน ECMA ในเดือนธันวาคม ค.ศ. 2001 ในชื่อว่า ECMA-334 C# Language Specification ใน ค.ศ. 2003 ภาษาซีชาร์ปได้รับการยอมรับเป็นมาตรฐาน ISO (ISO/IEC 23270).
มาตรฐาน ISO/IEC 23270:2003 ระบุรูปแบบ และกำหนดการแปล (ตีความ) โปรแกรมที่เขียนด้วยภาษาซีชาร์ป. โดยตัวมาตรฐานได้ระบุ:
  • รูปแบบการนำเสนอ (the representation of C# programs)
  • ไวยากรณ์ (the syntax and constraints of the C# language)
  • กฎการตีความสำหรับแปลโปรแกรมภาษาซีชาร์ป (the semantic rules for interpreting C# programs)
  • ข้อห้าม และข้อจำกัด ของเครื่องมือที่สร้างตามข้อกำหนดของซีชาร์ป (the restrictions and limits imposed by a conforming implementation of C#)
ISO/IEC 23270:2003 ไม่ได้ระบุ:
  • กลไกในการแปลงโปรแกรมภาษาซีชาร์ป เพื่อใช้ในระบบประมวลผลข้อมูล (the mechanism by which C# programs are transformed for use by a data-processing system)
  • กลไกในการเรียกให้โปรแกรมภาษาซีชาร์ปทำงาน เพื่อใช้ในระบบประมวลผลข้อมูล (the mechanism by which C# applications are invoked for use by a data-processing system)
  • กลไกในการแปลงข้อมูลเข้า เพื่อใช้กับโปรแกรมภาษาซีชาร์ป (the mechanism by which input data are transformed for use by a C# application)
  • กลไกในการแปลงข้อมูลออก หลังจากถูกประมวลผลโดยโปรแกรมภาษาซีชาร์ป (the mechanism by which output data are transformed after being produced by a C# application)
  • the size or complexity of a program and its data that will exceed the capacity of any specific data-processing system or the capacity of a particular processor;
  • all minimal requirements of a data-processing system that is capable of supporting a conforming implementation.
นอกจากนี้ตัวมาตรฐานไม่ได้กล่าวถึงโครงสร้างข้อมูล และตัวไลบรารีกลางของ .NET Framework ซึ่งเป็นหัวใจสำคัญของการเขียนโปรแกรมด้วยภาษาซีชาร์ปเลย

สำหรับวันนี้ขอพูดเรื่องซีชาร์ปเพียงเท่านี้ ต้องขออภัยด้วยที่วันนี้ผมไม่สามารถอธิบายได้จริงๆเพราะผมไม่ได้เจาะลึกในเรื่องของภาษาโปรแกรมคอมพิวเตอร์ผมสนใจด้าน Hardware มากกว่า
ขอบคุณที่ติดตามชมครับ เจอกันใหม่สัปดาห์หน้าครับ

1 ความคิดเห็น:

  1. ชอบสีพื้นหลังจังค่ะ 555555555 เนื้อหาอ่านง่ายค่ะ เข้าใจได้ง่าย

    ตอบลบ