고등학교까지의 수학적인 지식을 갖고,
대학교에 가서 수학적 지식을 배운다면,
수학의 기반 자체를 무너뜨리고 처음부터 다시 배워야할 정도라고 생각이 들 때가 있는데.
이것은 고작 "3년"의 시기 동안에, "수학" 을 얼마나 깊이 배울 수 있겠는가를 먼저 고려해야한다.
대학교 4년의 시기 동안의 배운 모든 지식이 "회사" 업무를 배우는데 있어서 "활용"되지 않는 것처럼 말이다. 애초에 회사에서 사용하는 "실무적 지식"과 대학교에서 활용되는 "생각의 깊이 자체는 절대 같지 않기 때문이랬다.
수학의 함수
Definition:
수학에서 함수는 한 집합(정의역)의 각 원소를 다른 집합(공역)의 정확히 하나의 원소에 대응시키는 규칙이다

예:
f(x)=x2f(x) = x^2
→ 정의역: 실수 전체, 공역: 실수 전체
→ 입력값 xx를 넣으면 출력값 x2x^2이 반드시 하나 정해짐
특징:
- 입력이 같으면 항상 출력이 같다 (순수성).
- 함수는 **상태(state)**나 **부작용(side effect)**이 없음.
- 입력과 출력의 관계만 중요.
프로그래밍에서의 함수
- 특정 작업을 수행하는 코드 블록
- 입력(매개변수)을 받을 수도 있고, 안 받을 수도 있음
- 결과값(출력, return)을 돌려줄 수도 있고, 안 돌려줄 수도 있음
- 출력(return)은:
- 없음 (void)
- 하나 (대부분의 언어 기본 방식)
- 여러 개 (Python 같은 언어에서는 튜플, 객체 등으로 반환 가능)
예시:
# 출력이 없는 함수
def greet(name):
print("Hello,", name)
# 출력이 하나인 함수
def square(x):
return x * x
# 출력이 여러 개인 함수
def calc(x, y):
return x+y, x-y, x*y
핵심 차이
- 수학 함수: 반드시 입력이 하나의 출력으로 대응됨 (순수, 예측 가능).
- 프로그래밍 함수: "하나의 출력"이라는 제약 없음. 부수 효과(side effect, 예: 화면 출력, 전역 변수 변경)도 허용됨.
'컴퓨터 공학' 카테고리의 다른 글
| [개발 상식] Argument 랑 Parameter 차이가 머에요 (0) | 2026.01.16 |
|---|---|
| AWS Concept DATACamp 완료 (0) | 2026.01.14 |
| 추상화가 머에요?????????????? 추?? (3) | 2025.10.02 |
| 캡슐화는 또 뭐에요???? (0) | 2025.10.02 |
| DevOps, Microservice 가 뭐에요?? (0) | 2025.10.01 |