같은편 2022. 6. 24. 15:14

함수(function)는 어떤 입력을 받아서 원하는 처리를 한 후 결과를 반환함.
가끔은 입력이 없거나(not parameter, not argument) 결과를 직접
반환하지 않는(void return) 함수도 있다.
또한, 함수(function)는 객체지향 언어에서 메소드(method)라고도 불림.

 


  • 같은 코드들을 반복적으로 쓰이는 문제를 해결한다. 반복되는 코드를 함수로 만들어 사용하면 중복을 최소화하고 코드양을 줄인다. 이것은 개발은 물론이고 코드의 수정이나 유지 보수를 훨씬 편하고 쉽게 한다.
  • 크고 복잡한 문제를 작고 쉬운 문제들로 나누어 해결하기 쉽게 한다. 즉, 하나의 큰 프로그램을 작은 부분들로 분리하여 구조적인 프로그래밍이 가능하게 한다. 이러한 문제 해결 방법을 분할 정복(divide and conquer)하고 한다.
  • 추상화캡슐화를 가능하게 한다. 이 둘은 객체지향 개념의 중요한 개념들 4개중 2개로 함수의 내부 구현이 외부로 나타나는 함수의 기능과 분리되는 것을 말한다. 예를 들어 printf()함수를 예로 들면 내부의 구체적인 구현은 몰라도 사용방법만 알면 사용할 수 있게하고 내부의 정보를 외부로부터 보호할 수 있게 한다
  • 함수는 크게 라이브러리 함수사용자 정의 함수로 나눌 수 있다.