[ETC] 함수와 관련 용어 정리

2021. 9. 13. 15:46·ETC/ETC
728x90

인자 ? 인수 ? 반환값 ?

parameter ? argument ? return ?

 

함수와 관련된 공부를 하다보면 다양한 용어가 존재한다.

용어를 혼용하여 잘못 이해한다면 해당 내용을 공부하며 잘못된 학습을 진행 할 수도 있다. 

이번 포스팅을 통해 함수에서 사용되는 용어에 대해 알아보겠다.


함수(Function)는 왜 사용하는 것일까 ?

함수는 프로그램을 작성하는 과정에서 생기는 반복되는 코드를 '재사용' 하기 위함 목적을 가지고 있다.

반복되는 코드를 재사용 함으로서 작성된 코드의 분량(Code line)을 줄이고 함수 내부의 기능을 수정하여 유지보수에 용이하다.

 

아래의 코드는 Python 언어를 이용하여 함수를 구현하였다. 

# 두 수의 합을 구하는 sum 함수 정의
def sum(a, b):
	sum = a + b
    return sum

# 1과 2의 합을 반환하는 sum 함수 호출
sum(1,2)

 

각 키워드를 살펴보며 함수의 구조에 대해 알아보겠다.

 

- def : Python에서 함수를 정의하기 위한 식별자이다.

- sum : 해당 함수를 식별하여 호출하기 위한 함수의 이름이다. (callee) 

- (a, b) : 사용자로부터 전달받을 매개변수(parameter, 인자) a, b를 의미한다.

- sum = a + b : 사용자로부터 전달받은 매개변수(parameter, 인자) A, B에 대해 sum 변수에 저장한다.  

- return sum : sum 함수의 값을 반환(Return)한다.

- sum(1,2) : 정의된 함수 sum을 호출하며, 사용자가 함수에게 실행인자(argument, 인수)를 전달한다.  (caller) 

 

 

용어와 관련하여 정리하자면 아래와 같다.

 

- Parameter(매개변수, 인자) : 정의된 함수(Callee) 내부에서 일련의 작업을 수행하기 위해 전달 받는 데이터(변수)

- Argument(실행인자, 인수) : 함수를 호출하는 호출자(Caller)가 함수 내부에서 일련의 작업을 수행하기 위해 전달하는 데이터(변수)

- Return(반환값) : 함수 소멸과 동시에 일정 데이터를 반환하여 호출자(Caller)에게 전달하는 것.

- Caller(호출자) : Callee(함수)를 호출하는 대상

- Callee(함수) : Caller(호출자)로 부터 호출받는 함수


즉, 파라미터는 함수가 전달 받는 것을 의미하고, 어그먼트는 호출자가 전달하는 것을 의미한다. 

 

함수와 관련된 용어정리 끝.

 

 * Copyright 2021. Jay Park All rights reserved.

728x90
저작자표시 비영리 변경금지 (새창열림)

'ETC > ETC' 카테고리의 다른 글

[E-Mail] 메일 보안 필터링 이론 정리  (0) 2022.04.06
[E-Mail] 이메일 시스템 구조 및 용어 정리  (0) 2022.03.01
[E-Mail] Telnet과 OpenSSL을 이용한 SMTP 메일 발송  (0) 2022.02.03
[Math] 진법변환 (2진수, 8진수, 10진수, 16진수)  (0) 2021.09.27
[Web] 웹 데이터 수집 및 가공 관련 용어정리  (0) 2021.09.13
'ETC/ETC' 카테고리의 다른 글
  • [E-Mail] 이메일 시스템 구조 및 용어 정리
  • [E-Mail] Telnet과 OpenSSL을 이용한 SMTP 메일 발송
  • [Math] 진법변환 (2진수, 8진수, 10진수, 16진수)
  • [Web] 웹 데이터 수집 및 가공 관련 용어정리
dev.parkjh
dev.parkjh
Jay Blog. Github: https://github.com/GreatPark96
  • dev.parkjh
    0과 1을 공부하다.
    dev.parkjh
  • 전체
    오늘
    어제
    • 분류 전체보기 (114)
      • Profile (2)
      • Paper (6)
      • Column (3)
      • Project (8)
        • Smart Home (3)
        • 3D Printing (5)
      • Front-End (0)
        • Web (3)
      • Back-End (8)
        • API (1)
        • DB (1)
        • Laravel (4)
      • Language (16)
        • Kotlin (11)
        • C, C++ (3)
        • JAVA (0)
        • python (2)
      • System (28)
        • Server (15)
        • Security (1)
        • Network (1)
        • Linux (8)
        • Cloud (3)
      • ETC (34)
        • Book Recommend (Computer) (3)
        • IoT (7)
        • BlockChain (7)
        • ETC (17)
      • My YOLO (1)
      • Note (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    네이버클라우드
    kubernetes
    ci/cd
    C언어
    docker container
    코틀린개발환경
    3D프린터
    data serialization formats
    github
    3D
    work hour
    docker private register
    coderabbit
    Kotlin
    Jenkins
    ai code review
    docker
    3D모델링
    gitlab
    Database
    git
    3d프린터 초보
    nas
    Notification
    데이터 직렬화 포맷
    linux job
    NAS HDD교체
    3D프린터 입문
    리눅스 파일동기화
    ncp container registry
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
dev.parkjh
[ETC] 함수와 관련 용어 정리
상단으로

티스토리툴바