Part1 -> Section1 -> Basic -> 011. Functions

     ฟังก์ชัน (Function) หรือใน .NET เรียกว่า เมธอด (Method) อธิบายแบบเข้าใจง่ายๆเลยก็คือ การยกโค้ดบางส่วนไปไว้ที่อื่น (เน้นที่มีการใช้งานโค้ดส่วนนี้ซ้ำๆหลายครั้ง) ซึ่งเราสามารถเรียกใช้โค้ดส่วนนั้นจากที่ไหนก็ได้ และเรียกกี่ครั้งก็ได้ ซึ่งเรียกการทำงานแบบนี้ว่าเป็นการ ใช้โค้ดซ้ำ (reuse) เชิญดูรูปแบบการสร้าง Method ด้านล่าง

<accessibility> <return type> <method name>([parameters])
{
    <code>
}


อาจดูงงๆ แต่อันที่จริงไม่ยาก ลองดูจากตัวอย่างเลยครัช

public void DoStuff()
{
    Console.WriteLine("Now, you call method \"DoStuff\"");
} 

อธิบายจากโค้ดแยกเป็นส่วนๆ
1. accessibility คือการกำหนดความสามารถในการที่ใครๆจะสามารถเรียกใช้ Method เช่น สามารถเรียกใช้ได้เฉพาะใน Class เดียวกันเท่านั้น, สามารถเรียกใช้ได้เฉพาะใน Namespace เดียวกันเท่านั้น เป็นต้น ซึ่งตรงนี้เป็น optional คือไม่ต้องใส่ก็ได้ .NET จะใส่ค่า default ให้ ดูรายละเอียดได้จากลิงค์
2. return type คือชนิดของข้อมูลที่ Method จะคืนค่ากลับมาให้ ซึ่งปกติเราก็จะใช้ data type ทั่วไป เช่น int, string, array หรือจะใช้ Class ก็ยังได้ ซึ่งหากเราระบุ return type เป็นชนิดใดแล้ว เวลาที่เราจะ return ค่าจาก Method นั้นชนิดข้อมูลจะต้องตรงกับที่เราระบุไว้ด้วย มิเช่นนั้นก็จะ Build Error, ในตัวอย่างนี้ return type ใช้เป็น void ซึ่งตัวนี้เป็นตัวพิเศษที่บอกเราว่า Method นี้ไม่มีการส่งค่าอะไรกลับคืน
3. Method name ชื่อเรียกนั้นใช้เป็นอะไรก็ได้ของแค่ไม่ไปตรงกับ reserved word แต่โดยปกติเราจะใช้เป็น proper case คือตัวอักษรตัวแรกจะเป็นตัวพิมพ์ใหญ่ต่อไปเป็นตัวพิมพ์เล็ก หากมีหลายคำก็ให้ตัวอักษรตัวแรกของแต่ละคำเป็นตัวพิมพ์ใหญ่ เช่น Do + Stuff = DoStuff
4. Parameters ตรงนี้จะเป็นการส่งค่าเข้าไปใน Method เพื่อให้ทำงานอะไรสักอย่างหนึ่ง ตัวนี้เป็น optional จะมีหรือไม่มีก็ได้ ดูตัวอย่างต่อไปประกอบเพื่อความเข้าใจครัช

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int num1 = 10, num2 = 5;
            int sum = AddNumbers(num1, num2);
            Console.WriteLine(num1 + " + " + num2 + " = " + sum);

            Console.ReadLine();
        }

        public static int AddNumbers(int number1, int number2)
        {
            int result = number1 + number2;
            return result;
        }
    }
}

จากตัวอย่างเป็นการสร้าง Method เพื่อทำการบวกตัวเลขสองตัว แล้วส่งค่าผลบวกนั้นกลับให้คนเรียก โดยการเรียกใช้ Method นั้นก็ง่ายๆคือเรียก Method name ตรงๆเลย ตามตัวอย่าง AddNumbers(num1, num2)

มีข้อสังเกตนิดนึง Method เรามีตัวเพิ่มมาคือ static ตรงนี้ยังไม่ต้องสนใจมาก แค่ดูคร่าวๆก่อนว่า Method Main เป็น static เขาจะมองเห็น Method ที่เป็น static ด้วยกันเท่านั้น
     Function หรือ Method นั้นมีประโยชน์มาก ที่เห็นๆเลยคือ การใช้โค้ดซ้ำ (reuse) ทำให้โค้ดไม่ยาวและลดการเขียนโค้ดซ้ำๆ โค้ดอ่านง่ายและเป็นระเบียบมากขึ้น อีกอย่างหนึ่งคือ หากมีการเปลี่ยนแปลงการทำงานใน Method เราก็จะแกไขแค่เพียงจุดเดียวเท่านั้น ส่งผลกับทั้งโปรแกรมเลย เรียกว่าทำให้ชีวิตเราง่ายขึ้นเยอะเลย

สอบถามหรือติดตามได้ที่ https://www.facebook.com/learnaspnetmvcjquery

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

Part2 -> Section1 The Basic -> 003. MVC Folder Structure

Part2 -> Section1 The Basic -> 001. Introduction

Part2 -> Section1 The Basic -> 005. Controller