Computer Programming에서 함수란?

JS·2023년 2월 4일
0

Tech Explanation

목록 보기
12/14
post-thumbnail

함수(Function)란?

함수란 일련의 과정에 이름을 붙인 것으로서 코드 중복을 제거해 프로그램의 모듈성(Modularity)을 높일 수 있는 기능이다

함수의 실행이 끝나면 다시 호출했던 지점으로 돌아오며 반환값을 주기도 한다

함수는(Function) == 서브루틴(Subroutine) == 프로시저(Procedure)모두 동의어이다

C#에서 함수의 문법

함수에 () 연산자(Invocation)를 붙이면 함수를 호출할 수 있으며 호출이 되면 함수에 작성된 코드가 전부 실행된다

함수는 헤더(Header)와 바디(Body)로 나뉜다

  • return-type = 반환 데이터의 타입을 의미한다
  • identifier = 함수의 이름을 의미한다
  • parameter-list = 매개변수들을 의미한다
    • 함수의 매개변수는 입력구가 된다
    • 함수를 만들 때 무엇을 매개변수로 만들어야하지? 라는 의문이 생긴다. 그것에 대한 답은 이 매개변수가 입력 데이터가 되는지를 확인하면 된다
    • 매개변수를 초기화 해주어야 하고 초기화해주는 값을 인수(Argument)라고 한다
    • 함수의 반환값이 없을 때는 void라고 붙여주면 된다. void라는 것은 ‘무치형’이라고 하는 자료형으로, 아무것도 없다는 것을 명시해줄 때 사용한다
  • body = 함수의 내용을 의미한다

예시를 들어보자

이때 만들어진 Max함수를 Callee라고 하며, Main함수는 Caller가 된다
이는 호출자와 피호출자라고도 한다

우리는 프로그래밍을 배울 때 입력(Input), 처리(Process), 출력(Output)으로 구분했다
parameter-list 부분을 입력이라 부를 수 있다
body 부분을 처리 영역
return 값을 출력이라 할 수 있다. return은 반환 타입이 void라도 사용할 수 있으며 함수를 끝내는데 활용한다
함수는 반드시 호출되고 있는 구문 전에 정의되어 있을 필요는 없다
상황에 따라 다르지만, 작성하는 함수는 가독성을 위해 가능하면 뒤쪽에 작성한다
함수가 구문 하나일 경우에는 => 연산자로 식 본문 정의(Expression Body Definition)를 할 수 있다

함수는 반드시 출력되고 있는 구문 전에 정의되어 있을 필요는 없다. 상황에 따라 다르지만, 작성하는 함수는 가독성을 위해 가능하면 뒤쪽에 작성한다
함수가 구문 하나일 경우에는 블록을 사용하지 않고도 => 연산자로 식 본문 정의(Expression Body Definition)를 할 수 있다


Reference

profile
게임 프로그래머 지망생

0개의 댓글