ตอน 11 : ภาษา C# ระดับพื้นฐาน

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

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

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

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

 

 

นักเขียนโค้ดภาษา C# ไม่มีวันตาย พวกเขาเพียงแค่ cast ไปเป็น void

นักเขียนโค้ดนิรนาม

 

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

 

ในบทนี้และอีกสองบทถัดไปท่านจะได้เรียนเรื่องพื้นฐานที่จำเป็นต้องรู้เกี่ยวกับภาษา C# สิ่งที่ผู้เขียนจะสอนไม่ใช่คำสั่งต่างๆ ในภาษา C# อย่างคำสั่ง if หรือคำสั่งวนรอบ เช่น คำสั่ง for คืออะไร เขียนอย่างไร มีไวยากรณ์อย่างไร เพราะนี่ไม่ใช่หนังสือรวบรวมคำสั่งภาษา C# คำสั่งเหล่านี้ท่านสามารถดูได้จากเอกสาร MSDN ในเว็บไซต์ หรือจะ download มาติดตั้งไว้ในเครื่องของท่านก็ได้

สิ่งที่ผู้เขียนกำลังจะสอนท่านในหนังสือเล่มนี้คือแนวความคิด ซึ่งเป็นวิธีคิดที่ท่านจำเป็นต้องมีเพื่อจะเขียนภาษา C# ได้อย่างมีประสิทธิภาพ อาทิ เรื่อง namespace และเรื่อง type เป็นต้น หัวข้อสำคัญต่างๆ ที่ท่านจะได้เรียนในบทนี้คือ

 

  • โครงสร้างของโปรแกรมในภาษา C#
  • namespace
  • Type ในภาษา C#
  • Value type
  • Reference type
  • การทำ Boxing และ Unboxing
  • การสร้างคลาส
  • stuct
  • หลักการตั้งชื่อในภาษา C#
  • นิพจน์ในภาษา C# (Expression)
  • การประกาศ (Declaration)

ภาพ 301: Microsoft Visual C# .net

ชื่อภาษา C#

ภาษา C# จะเขียนว่า C Sharp ก็ได้ (อ่านว่าซีชาร์พ) เครื่องหมาย # ในทางดนตรีหมายถึงครึ่งเสียง ส่วนคำว่า Sharp หมายถึงเฉียบคม มีไหวพริบ บริษัทไมโครซอฟท์ตั้งชื่อภาษานี้ว่า C# เพื่อจะสื่อให้เห็นว่านี่คือภาษาในตระกูลภาษา C เช่นเดียวกับภาษา C++ คือเป็นภาษาที่มีต้นกำเนิดจากภาษา C หากท่านสังเกตให้ดีจะเห็นว่าสัญลักษณ์ # จะมองให้เป็นเครื่องหมาย + สี่อันนำมาซ้อนกันก็ได้ แสดงเป็นนัยว่าภาษานี้ก้าวหน้ากว่าภาษา C++ ไปอีกระดับหนึ่ง (คือเป็นภาษา C++++) สัญลักษณ์ # นี้มีปรากฏในภาษาอื่นๆ ของ .NET ด้วย เช่นภาษา J#(เดิมคือภาษา J++) และภาษา A# (เหมือนภาษา Ada) อาจเป็นเพื่อเหตุผลการการค้า

ภาษา C# คืออะไร

ภาษา C# เป็นภาษาที่ใหม่มากๆ ปรากฏตัวเป็นครั้งแรกในปี 2000 และถูกอัพเดตเวอร์ชันอยู่เสมอ มันเป็นภาษาที่ได้รับอธิพลจากภาษาก่อนหน้าเช่นภาษา Delphi ภาษา C++ ภาษา Java และภาษา Eiffel ในตอนต้นภาษานี้ถูกออกแบบ และกำหนดลักษณะโดยบริษัทไมโครซอฟท์ ต่อมาได้ถูกรับรองจากหน่วยงาน ECMA (หน่วยงานกำหนดมาตรฐานสากลด้านสารสนเทศ) และ ISO แต่ปัจจุบันไมโครซอฟท์ยังพัฒนาภาษานี้อย่างต่อเนื่อง (ปัจจุบันเป็นเวอร์ชัน 3.0)

ภาษา C# ถูกพัฒนาขึ้นโดยเป็นส่วนหนึ่งในการพัฒนาโครงสร้างพื้นฐานของ .NET Framework เป็นการการนำข้อดีของภาษาต่างๆ (เช่นภาษา Delphi ภาษา C++) มาปรับปรุงเพื่อให้มีความเป็น OOP อย่างถึงที่สุด ขณะเดียวกันก็ลดความซับซ้อนในโครงสร้างของภาษาลง (เรียบง่ายกว่าภาษา C++) และมีเครื่องแต่งตัวน้อยลง (เมื่อเทียบกับ Java)

ภาพ 302: Delphi คือภาษา Pascal แบบ OOP ของบริษัท Borland

ผู้สร้างภาษา C#

ผู้สร้างภาษา C# คือบริษัทไมโครซอฟท์ แต่บิดาของภาษา C# คือ Anders Hejlsberg (แอนเดรส ฮาเยสเบิร์ก) ไมโครซอฟท์ต้องการให้ภาษา C# เป็น “อะไรที่จะอยู่ไปอีกนาน” เหมือนบริษัทรถยนต์โฟลค์ที่จ้าง Ferdinand Porsche (เฟอร์ดินันด์ พอร์ช) นักออกแบบรถยนต์มือดีมาออกแบบรถโฟลคเต่า (เป็นเหตุการณ์ที่เกิดขึ้นก่อนสงครามโลกครั้งที่สอง) ทำให้มันกลายเป็นรถยนต์คลาสสิกมาจนถึงปัจจุบัน ในทำนองเดียวกันเมื่อต้องการภาษาที่ต้องการให้กลายเป็นภาษา “คลาสสิก” บริษัทไมโครซอฟท์ตัดสินใจมอบหมายให้ Hejlsberg บรมครูนักออกแบบภาษา ผู้เคยสร้างภาษาที่กลายเป็นตำนานมาแล้วเช่น Turbo Pascal และผู้นำในทีมสร้างภาษา Delphi

ใครๆ ก็สร้างภาษาใหม่ได้ไม่ยาก แต่ภาษาที่ดีจริงๆ นั้นเป็นอีกเรื่องหนึ่ง สำหรับภาษา C# Hejlsberg ไม่เพียงสร้างภาษาที่ใช้งานได้ดีเท่านั้น เขายังเน้น “ความมีรสนิยม” และ “ความสง่างาม” เพราะต้องการให้โปรแกรมเมอร์เขียนโปรแกรมภาษา C# ได้อย่างมีความสุข

ภาพ 301 Anders Hejlsberg บิดาของภาษา C#

 

ตอนต่อไป: เปรียบเทียบภาษา C# กับภาษาอื่นๆ

Post a comment or leave a trackback: Trackback URL.

ความเห็น

  • นุชฏา  On กุมภาพันธ์ 12, 2007 at 2:44 pm

    ปอนอยากรู้เรื่องC# ให้มากกว่านี้ค่ะจะทำรายงานส่งอาจารย์ พี่นิรนามพอจะมีข้อมูลอะไรใหม่ๆดีๆเกี่ยวกับC#หรือป่าวค่ะ ช่วยหน่อยนะค่ะพี่นิรนาม แต่ว่าพี่พอจะส่งข้อมูลเขาเมลล์ได้ไหมค่ะ ถ้าได้ก๊ขอความกรุณานะค่ะคุณพี่นิรนาม ขอบคุณค่ะ  ♥♪♪
     

  • ทิศากร  On พฤษภาคม 13, 2007 at 2:53 pm

    คือนู๋จะำทำโปรเจคเกี่ยวกับตารางสอนและจะใช้C#เขียนแล้วนู๋ไม่รู้ว่าว่าจะเริ่มยังไงและเขียนยังไงคะแล้วใช้SQL SEVER 2005เป็นฐานข้อมูลค่ะ ช่วยหน่อยนะคะ

  • เบญจพล  On ธันวาคม 20, 2008 at 2:51 pm

    แล้วเอาไปใช้ยังไง โง่อีกแระผม

ใส่ความเห็น

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: