ตอน 10: วิธีเขียนโค้ดเรียกใช้งาน FCL


ไปหน้าแรก | สารบัญ | Laploy.comระเบียนบทความ | บทความจากลาภลอย


 

เว็บไซต์นี้เป็นตัวอย่างเนื้อหาบางตอนในหนังสือ "เรียนรู้ด้วยตนเอง OOP C# ASP.NET" ครอบคลุม บทที่ 1 ถึงบทที่ 6 (ในหนังสือมี 21 บท) เนื้อหาใน Blog อาจอาจแตกต่างจากในหนังสือเพราะเป็นเนื้อหาที่ยังไม่ได้ตรวจแก้ขัดเกลา (edit)

กดที่นี่เพื่อดูรายละเอียดเนื้อหาในแต่ละบท

กดที่นี่เพื่อไปยังเว็บบอร์ด ถาม-ตอบ 

 

ตอน 10: วิธีเขียนโค้ดเรียกใช้งาน FCL

 

การเรียกใช้ type ที่อยู่ภายใน FCL ทำได้สองแบบ แบบแรกเรียกว่า fully-qualified class name (ต่อไปจะเรียกย่อว่า FQCN) และ non-qualified class name (ต่อไปจะเรียกย่อว่า NQCN) การเรียกใช้สองแบบแตกต่างกันดังนี้

FQCN เป็นการเรียกใช้คลาสโดยระบุ namespace อย่างเต็มยศ โปรดพิจารณาตัวอย่างโค้ดดังต่อไปนี้

 

using System;
using System.Collections.Generic;
using System.Text;

namespace test
{
     class Program
     {
          static void Main(string[] args)
               {
                   System.IO.Ports.SerialPort myPort = new System.IO.Ports.SerialPort();
               }
     }
}

 

โปรแกรมนี้เรียกใช้คลาส SerailPort ซึ่งเป็นคลาสหนึ่งใน namespace Ports ซึ่งเป็น namespace ที่มี base namespace เป็น IO และ System ตามลำดับ

โปรดสังเกตว่าโปรแกรมนี้ก็มี namespace ของมันเองด้วย (ชื่อ test) เราสามารถนำ namespace หลายๆ namespace มาผนวกเข้าด้วยกันได้โดยใช้คำสั่ง using (เหมือนคำสั่ง import ในภาษา Java) เมื่อผนวกแล้วจะสามารถอ้างถึงคลาสใน namespace นั้นได้โดยตรงแบบ NQCN โปรดพิจารณาตัวอย่างโค้ดดังต่อไปนี้

 

using System;
using System.Collections.Generic;
using System.Text;
using System.IO.Ports;

namespace ConsoleApplication3
{
     class Program
     {
          static void Main(string[] args)
          {
               SerialPort myPort = new SerialPort();
          }
     }
}

 

ท่านคงจะเห็นด้วยกับผู้เขียนว่าการอ้างชื่อคลาสแบบ NQCN ดีกว่า FQCN เพราะอ่านโปรแกรมเข้าใจได้ง่ายกว่าเนื่องจากโค้ดไม่รกไปด้วย namespace ยาวๆ

 

ภาพ 204: เอกสารใน MSDN เป็นข้อมูลจากผู้ผลิต FCL โดยตรงจึงมีความเชื่อถือได้และได้รับการปรับปรุงให้ทันสมัยอยู่เสมอ

 

เอกสารอ้างอิงที่ให้ข้อมูลเกี่ยวกับ FCL คือ MSDN หรือ Microsoft Development Network ซึ่งมีทั้งแบบ off-line (ในซีดีรอม) และแบบ on-line (ในอินเตอร์เน็ต msdn2.microsoft.com) เอกสารใน MSDN เป็นข้อมูลจากผู้ผลิต FCL โดยตรงจึงมีความเชื่อถือได้ และได้รับการปรับปรุงให้ทันสมัยอยู่เสมอ

 

สรุปท้ายบท

เทคโนโลยี Microsoft .NET Framework ทำให้การสร้างโปรแกรมประยุกต์ทำได้ง่ายและรวดเร็วขึ้น เราสามารถใช้เครื่องมือ .NET สร้างโปรแกรมประยุกต์ได้หลายรูปแบบ เช่นโปรแกรมประยุกต์สำหรับเครื่องคอมพิวเตอร์แบบตั้งโต๊ะ เครื่องคอมพิวเตอร์แบบพกพา เครื่องเล่นเกม (X-Box) โทรศัพท์มือถือ และโปรแกรมประยุกต์ที่ทำงานในอินเตอร์เน็ต

ในบทนี้ผู้เขียนได้ให้ข้อมูลโดยสังเขป เพียงเท่าที่จำเป็นต้องรู้เกี่ยวกับ Microsoft .NET Framework เพื่อให้ท่านสามารถศึกษาเนื้อหาในบทต่อๆ ไปได้ ในบทต่อไปท่านจะได้เรียนเรื่องพื้นฐานของภาษา C# ซึ่งเป็นภาษาที่เราจะใช้เป็นเครื่องมือเพื่อศึกษาหลักการ OOP และวิธีสร้างเว็บไซต์

 

คำถามท้ายบท

  1. CLR ย่อมาจากอะไร มีหน้าที่อะไร
  2. compiler ของภาษา C# ทำหน้าที่แปล source code ให้เป็นภาษาอะไร
  3. รูปแบบโปรแกรมประยุกต์ที่  .NET Framework สนับสนุนมีอะไรบ้าง
  4. การประมวลผลแบบกระจายคืออะไร
  5. โค้ดภาษาเครื่อง ภาษาเครื่อง (native machine code) คืออะไร
  6. managed code คืออะไร
  7. PE คืออะไร
  8. MSIL คืออะไร
  9. CLR จะแบ่งหน่วยความจำ (RAM) ในเครื่องคอมพิวเตอร์ออกเป็นกี่แบบ
  10. โครงสร้างข้อมูลแบบ stack เป็นอย่างไร
  11. Heap คืออะไร
  12. Finalize ทำหน้าที่อะไร
  13. namespace คืออะไร

เฉลยคำถาม

ตอนต่อไป: บทที่ 3 ภาษา C# ระดับพื้นฐาน

Post a comment or leave a trackback: Trackback URL.

ความเห็น

  • Nitiwit  On ธันวาคม 1, 2006 at 2:36 pm

    สวัสดีครับ…แวะเข้ามาทักทายเล่นๆ อะคับ
    โห…สุดยอดมาเลยนะครับ
    ถ้าผมมีปัญหาเรื่อง programming จะมาถามนะครับ..ช่วยตอบด้วยล่ะกัน
    ปล.คนผ่านมา ^^
     

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

%d bloggers like this: