Function [전산]   함수 [전산]

(2020-01-14)
Top > [기술공통]
[기초과학]
[진동/파동]
[방송/멀티미디어/정보이론]
[전기전자공학]
[통신/네트워킹]
[정보기술(IT)]
[공학일반(기계,재료등)]
[표준/계측/품질]
[기술경영]
정보기술(IT) >   1. 정보기술
[전산기초]
[컴퓨터구조]
[프로그래밍]
[데이터베이스]
[소프트웨어 공학]
[운영체제]
[정보보호/보안]
[IT 기타기술]
프로그래밍 >   1. 프로그램, 프로그래밍
[프로그래밍 언어론]
[프로그래밍 방법론]
[객체지향 프로그래밍]
[자료표현코드]
[자료구조]
[알고리즘]
[시스템 소프트웨어]
[프로그래밍언어 종류]
[프로그래밍 기타일반]
프로그래밍 언어론 >   1. 프로그래밍 언어
[구문]
[변수]
[자료형/데이터형]
[연산,연산자,수식]
[부프로그램/함수/프로시저]
[예외,이벤트 처리]
부프로그램/함수/프로시저  1. 부 프로그램
  2. 함수
  3. 함수 선언/정의/호출
  4. 매개변수
  5. 콜백 함수
  6. 블록 구조
  7. 클로저

1. 프로그램에서, 함수 이란?

  ㅇ 특정 기능을 수행하는 코드의 묶음  ☞ 부프로그램 서브루틴 함수 프로시저 비교 참조

  ※ 한편, 수학 함수와는 달리, 
     - 파라미터(입력),반환값(출력)이 없을수도 있음

  ※ 여러 프로그래밍 언어 상의 함수 例) ☞ C 함수, 자바스크립트 함수, PHP 함수 등 참조

  
2. 함수 사용 장점프로그램 재사용으로 인한 절약
     - 메모리 공간, 코딩 시간의 절약, 프로그램 크기를 줄임 

  ㅇ 가독성 증가 
     - 1개 호출문에 의해 실행
        . 세부사항을 숨기면서 프로그램논리 구조를 강조함
           .. 사용자는 함수 호출이름,매개변수,기능 정도 만을 알면 됨

  ㅇ 유지보수확장성 용이, 문제 해결성 및 분할성 제고, 사용 용이 등


3. 함수의 구성 요소

  ㅇ 이름 (Name)
     - 수행 동작에 이름을 부여함

  ㅇ 매개변수/인수 (Parameter)
     - 함수에게 전달하는 정보

  ㅇ 출력 값 (Return Value)
     - 함수 수행 결과의 반환

  ㅇ 몸체 (Body)
     - 변수 선언 및 실행부

  ㅇ 참조 환경 (Reference Environment)
     - 참조될 수 있는 모든 변수들의 집합으로 그려지는 환경


4. 함수선언/정의/호출/문법

  ※ ☞ 함수 선언, 함수 정의, 함수 호출, 함수 문법 참조
     - 함수 선언 : 일련의 동작을 추상화시켜줌
     - 함수 정의 : 수행 동작을 자세하게 기술
     - 함수 호출 : 함수는 호출을 통해서 만 실행됨


5. 함수에서 매개변수 전달 방법의 종류

  ※ ☞ 매개변수 전달 기법 참조
     - 값 전달 (call by value) : 실 매개변수의 값을 형식 매개변수에 전달
     - 참조 전달 (call by reference) : 실 매개변수의 저장 장소를 전달
     - 이름 전달 (call by name) : 실 매개변수의 이름을 전달


6. 특별한 함수 응용 例)고차 함수
     - 함수인수(파라미터)로써 받을 수 있거나, 함수를 반환할 수 있는 함수클로저
     - 자기 자신이 정의된 환경으로부터, 함수 내 자유 변수식별자 결정을 하는 기능 구조

  ㅇ 중첩 함수
     - 함수 내 또다른 함수로써 정의되는 함수메모이제이션
     - 재귀적 함수 호출에서, 중복 계산이 없도록, 한 번 계산된 값을 저장해서,
       프로그램이 빠르게 수행하는 기법

  ㅇ 화살표 함수
     - function 키워드 및 중괄호 {} 를 줄이려고 고안된 단축 문법콜백 함수
     - 함수(또는,객체)를 매개로 전달하고서, 그것으로하여금 역 호출 등을 하게 하는 기법


[부프로그램/함수/프로시저] 1. 부 프로그램 2. 함수 3. 함수 선언/정의/호출 4. 매개변수 5. 콜백 함수 6. 블록 구조 7. 클로저

    요약목록

Copyrightⓒ 차재복 (Cha Jae Bok)     「 소액후원 」 [ 최근편집 : 스피커(9월24일)  연결 리스트(9월24일)  선형 리스트(9월24일)  리스트(9월24일)  결상식(9월23일)  . . . ]