📌 함수(method)
메서드는 말 그대로 기능이다.
어떤 특정한 기능을 하는 함수를 생성하여 해당 기능이
필요할때마다 메서드를 호출하여 작업을 할 수 있다.
📖 함수의 필요성
중복코드를 방지하고, 유지 보수에 편하다!
함수를 왜 써야하는가?
사실 메서드는 따로 생성하지 않아도 그 기능을 할 수 있다,
무슨 말이냐면, 메인 함수에 작업을 수행할때 어떠한 기능이 필요하다면
메인 함수 내에서 해당 기능을 구현하여 작업하면 되기 때문이다.
하지만 프로그래밍을 하다보면 반복적으로 사용해야 하는 과정이 있는데
이걸 처리하기 위한 방법 중 하나가 바로 함수 이다.
📖 함수의 구조
(리턴 타입)(함수 이름)((매개변수))
{
함수 본문
return (리턴값)
}
처음보면 복잡해 보일 수 있는 구조이다.
함수는 쉽게 인풋이 들어가면 내부에서 처리 후 아웃풋을 주는 구조이다.
- 리턴 타입: 아웃풋을 어떠한 자료형으로 받을지 지정해준다.
- 함수 이름: 변수명이 있듯이 식별자와 같다.
- 매개 변수: 내부에서 기능을 하기에 앞서 전달해야 할 데이터가 있다면 매개 변수를 통하여 함수로 해당 값을 전달한다.
- 함수 본문 : 함수의 기능을 구현하는 부분이다.
- 리턴 값 : 함수의 기능을 통하여 생성된 아웃풋을 호출이 들어왔던 함수로 전달한다.
함수가 어떤 기능을 하는지에 따라 리턴 타입, 매개 변수는 정의되지 않기도 한다.
(마찬가지로 리턴 타입이 없다면 리턴값 또한 없을 수도 있다.)
이는 후에 예제를 통하여 배운다.
📖 함수 예제
// 1. 리턴x, 파라미터x
static void PrintHello()
{
Console.WriteLine("Hello World!");
}
// 2. 리턴o, 파라미터x
static int ran_Num()
{
Random ran = new Random();
int ranNum = ran.Next(0,10);
return ranNum;
}
// 3. 리턴x, 파라미터o
static void Sum( int x )
{
if( x > 5 )
{
Console.WriteLine("합격입니다.");
}
}
// 4. 리턴o, 파라미터o
static int Sum(int x, int y)
{
int res = x + y;
return res;
}
4개의 함수를 정의하였다.
관례적으로 함수의 이름은 대문자로 시작한다.
파라미터는 매개 변수를 뜻한다.
파라미터와 매개 변수가 있고 없는 4개의 경우의 수를 모두 정의하였다.
// 1.
PrintHello();
// 2.
int ranNum = ran_Num();
Console.WriteLine($"점수 : {ranNum}");
// 3.
PassorNot(ranNum);
// 4.
int result = Sum(ranNum, ranNum);
Console.WriteLine($"숫자 : {result}");
[출력]
Hello World!
점수 : 1
불합격입니다.
숫자 : 2
4가지 경우 중 어떤 상황에 어떤 형태의 함수를 만들어야 하는지에 대한 정확한 개념은 없다.
코딩을 많이 하다보면 특정 상황에 적절한 함수를 생성하는 방법을 몸소 배울 수 있을 것이다.
'C#' 카테고리의 다른 글
Day25_함수 / 매개 변수 (0) | 2023.03.21 |
---|---|
Day23_구조체(struct) (0) | 2023.03.16 |
Day22_문자열(String) (0) | 2023.03.16 |
Day21_배열(Array) (0) | 2023.03.16 |
Day20_for문 (0) | 2023.03.14 |