ฝึกเขียนโปรแกรมพื้นฐานด้วย Visual C# | วิชาการ.คอม


ฝึกเขียนโปรแกรมพื้นฐานด้วย Visual C#

สารบัญ

           
หน้าที่ 1 เกริ่นนำการเขียนโปรแกรม....ทำความรู้จัีกกับภาษา C#
หน้าที่ 2 แนะนำโปรแกรม Compiler Visual Studio 2008
หน้าที่ 3 ส่วนประกอบในโค้ดของภาษา C#
หน้าที่ 4 ตัวแปรและการตั้งชื่อตัวแปรในภาษา C#
หน้าที่ 5 Object Foundation (พื้นฐานความรู้ด้านอ๊อบเจ็ค)
หน้าที่ 6 Data & Data type (ข้อมูลและชนิดของข้อมูล)
หน้าที่ 7 Operator (สัญลักษณ์การดำเนินการ)
หน้าที่ 8 Data Type Conversion (การแปลงชนิดของข้อมูล)
หน้าที่ 9 output & input (การแสดงผลและการรับข้อมูล)
หน้าที่ 10 Control-Flow Volume1 (การควบคุมการทำงานของโปรแกรม)
หน้าที่ 11 Control-Flow Volume2 (การควบคุมการทำงานของโปรแกรม)
หน้าที่ 12 Data Structure Foundation (โครงสร้างข้อมูลพื้นฐาน)

ส่วนประกอบในโค้ดของภาษา C#

 

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

// คำอธิบาย (ในกรณีที่คำอธิบายมีบรรทัดเดียว)เช่น  // ส่วนคำอธิบาย โปรแกรมจะไม่อ่านในส่วนนี้      // โค้ดส่วนนี้ยังไม่เสร็จสมบูรณ์ ควรแก้ไข /*คำอธิบายคำอธิบาย (ในกรณีที่คำอธิบายมีหลายบรรทัด)คำอธิบาย*/เช่น /* โค้ดการทำงานของ if คือการตรวจสอบเงื่อนไข          ซึ่งถ้าเงื่อนไขเป็นจริงให้เข้ามาทำใน { } ของ if แต่          ถ้าเงื่อนไขเป็นเท็จจะไม่ทำคำสั่งใดๆ */

คำสั่งหลักคือ คำสั่งที่มีหน้าที่เฉพาะเจาะจง ในที่นี้หมายถึง คำสั่งจำพวก การตัดสินใจ เช่น if-else, switch คำสั่งการวนซ้ำ เช่น for , while, do….while ซึ่งคำสั่งหลักจะมีขอบเขตการทำงานที่แน่นอน โดยจะพูดถึงขอบเขตการทำงานในข้อถัดไป ยกตัวอย่างคำสั่งหลัก if เช่นif(....){    .....}** จุดสังเกต คำสั่งหลักจะมีเครื่องหมายบอกขอบเขตหรือไม่มีก็ได้ และจะเป็นที่รวบรวมคำสั่งย่อยเอาไว้คำสั่งย่อยคือ คำสั่งที่เกิดจากเรียก method มาใช้งาน หรือเขียนนิพจน์ทางคณิตศาสตร์เพื่อเพิ่มค่าให้กับตัวแปรยกตัวอย่างคำสั่งย่อย เช่นConsole.WriteLine( "Hello How're you" );int a = int.Parse( Console.ReadLine( ) );a+1;Block (ขอบเขตคำสั่ง)คือ สัญลักษณ์ที่จะบอกขอบเขตการทำงานของแต่ละ function หรือ procedure "และเป็นส่วนที่บรรจุคำสั่งต่างๆ (ตั้งแต่ 1 บรรทัดขึ้นไป) หรืออาจจะบรรจุบล๊อคย่อยๆได้อีกหลายบล๊อคเช่นกัน

{    คำสั่ง    } // ตัวอย่างของบล๊อคที่บรรจุคำสั่งเพียงบรรทัดเดียว(ในกรณีที่มีคำสั่งเพียง 1 บรรทัด ไม่จำเป็นต้องมี { } ก็ได้) {     คำสั่ง 1 ;     คำสั่ง 2 ; // ตัวอย่างบล๊อคที่บรรจุคำสั่งหลายบรรทัด     คำสั่ง 3 ;} {    {          คำสั่ง 1 ; // ตัวอย่างบล๊อคที่บรรจุบล๊อคย่อย          คำสั่ง 2 ;    }}

Semi Colon เครื่องหมายสิ้นสุดคำสั่ง (;)คือ สัญลักษณํแทนการสิ้นสุดคำสั่งแต่ละคำสั่ง (แต่ละคำสั่งจะต้องปิดท้ายด้วย ; ซึ่งหมายถึงจบคำสั่งนั้นๆ) จะไม่ใช้ในการปิดบล๊อค (ขอบเขตของคำสั่ง)

คำสั่ง 1;คำสั่ง 2;คำสั่ง 3; คำสั่ง 1; คำสั่ง 2; คำสั่ง 3;

Method (ความสามารถของโปรแกรม)คือ ส่วนของโปรแกรมที่อยู่ภายนอกโปรแกรมหลัก โดยจะนิยมเรียกกันว่าโปรแกรมย่อย (sub program) แนวคิดของ Method ก็คือการรวมคำสั่งที่ถูกใช้บ่อย และเราไม่จำเป็นต้องสนใจการทำงานภายในของ MethodMethod สามารถแบ่งได้เป็น 2 ประเภท คือ

Function (ฟังก์ชั่น)เป็น Method ที่จะมีการส่งค่ากลับ เช่นเมื่อเราเรียกใช้งาน เราจะต้องนำตัวแปรมารับค่าที่ถูกส่งมาจาก Function(จะขอกล่าวโดยละเอียดในบทถัดไป) Procedure (โพรซีเจอร์)เป็น Method ที่ไม่มีการส่งค่ากลับคืน เมื่อเราเรียกใช้จะไม่มีตัวแปรใดๆมารับค่า

Namespace > Class > Method > Propertyเราสามารถกล่าวได้ว่า namespace คืออ๊อบเจ็ค(object)ในทางโปรแกรมมิ่ง(รายละเอียดมีในส่วนของหัวข้อ Object) และส่วนที่บรรจุ class ต่างๆเอาไว้ ซึ่ง class เป็นเสมือนตัวบอกชนิดของ object อีกทีนึง จากนั้นภายใน class จะประกอบไปด้วย Method(ความสามารถ) , Method โปรแกรมหลัก และ Property(คุณสมบัติ) สามารถเขียนโค้ดออกมาคร่าวๆได้ดังนี้เพื่อแสดงในส่วนของ Namespace > Class > Method > Propertyusing System;// ในส่วนหัวของโปรแกรมจะมีการเรียกใช้ namespace ต่างๆ ซึ่งแต่ละ namespace ก็มีหน้าที่แตกต่างกัน// รูปแบบ using [ชื่อ namespace] ;namespace Test{    class MyFirstProgram    {          static void Main(string[]arg)          {                คำสั่ง ;                ....                ....        // ในส่วนของการเขียนโปรแกรมพื้นฐาน นี่จะเป็นส่วนสำคัญ เพราะโปรแกรมจะทำงาน                คำสั่ง ;   // อ่านโค้ดในส่วนนี้ {} ของ static void Main(string[]arg)          }    }}Identifier (ไอเด็นติฟายเออร์)คือ ชื่อที่ใช้สำหรับกำหนดให้กับส่วนประกอบต่างๆของโปรแกรม ไม่ว่าจะเป็น ตัวแปร ฟังก์ชั่น โพรซีเจอร์(เป็นชื่อที่เราจะสามารถตั้งให้กับตัวแปรเก็บค่าต่างๆหรือชื่อฟังก์ชั่นได้ โดยมีเงื่อนไขตามแต่ละภาษากำหนด)ประเภทของ Identifier มีดังนี้ คือ

Reserved Word (คำสงวน)คือ คำที่มีความหมายและเงื่อนไขการใช้ที่แน่นอน และไม่สามารถนำไปตั้งเป็นชื่อของตัวแปรได้auto , string , int, double, goto, case, do, while, if, else, breakfloat, for, foreach, continue, default, long, void, enum, structstack, const, return, switch, in, class, checked, override, eventnull, lock, random, private, public, protected, char, ref** คำสงวนไม่จำเป็นต้องท่องนะครับ เมื่อได้ใช้บ่อยๆก็จะคุ้นเคยโดยอัตโนมัติ** คำสงวนภายในโปรแกรม Visual Studio จะแสดงเป็นสีน้ำเงิน User-Define Identifierคือ ชื่อที่ผู้เขียนโปรแกรมจะต้องตั้งให้กับตัวแปร ฟังก์ชั่น และ เม็ดตอด ต่างๆ เพื่อเป็นการระบุหน้าที่การใช้งานที่แตกต่างกันของแต่ละตัวแปร (หลักการตั้งชื่อตัวแปรจะขอกล่าวในบทถัดไป)

หมายเหตุ งานเขียนชิ้นนี้ ได้รับการคุ้มครองสิทธิตามพระราชบัญญัติคุ้มครองสิทธิทางปัญญา โดยลิขสิทธิเป็นของผู้เขียน ที่ให้เกียรตินำเผยแพร่ผ่าน วิชาการ.คอม เรามีความยินดีและอนุญาตให้ทำซ้ำหรือเผยแพร่ต่อเพื่อประโยชน์ทางการศึกษาเท่านั้น กรุณาให้เกียรติผู้เขียน โดยอ้างชื่อผู้เขียนและ วิชาการ.คอม (www.vcharkarn.com) ทุกครั้งที่ทำการเผยแพร่ต่อ ห้ามนำส่วนหนึ่งส่วนใดไปเผยแพร่ต่อในสื่อที่เอื้อประโยชน์ทางธุรกิจก่อนได้รับอนุญาต ขอขอบคุณที่ร่วมกันช่วยสร้างให้สังคมไทยเป็นสังคมแห่งปัญญา