
| 구분 | 컴파일러 | 인터프리터 |
|---|---|---|
| 번역 방식 | 전체 프로그램을 한 번에 번역 | 한 줄씩 번역하며 실행 |
| 번역 시점 | 실행 전에 번역 완료 | 실행 중에 번역 |
| 실행 속도 | 빠름 | 느림 |
| 메모리 사용 | 많음 (목적 코드 생성) | 효율적 |
| 예시 | C, C++ | Python, JavaScript |
최근 급부상하고 있는 바이브코딩의 사례에서 언어의 분류에 한가지 방법론이 생긴것 같다.
컴퓨터 -> 어셈블리어 -> 고급 언어(C,Python,java ...) -> 프로그래머 -> 사람(고객)
어셈블리어는 사람이 이해하기에 어렵고 비효율적이여서 각각의 상황에 맞는 언어를 공부해서, 클라이언트가 원하는 목표를
프로그래머가 잘 알아듣고 정확하게 프로그래밍 언어로 바꿔 SW를 만드는 것이 보통이였다면...
바이브 코딩의 등장으로 고급언어 -> 생성형 AI(claude, cursor...) -> 사람(고객) 이 사이에 프로그래머가 사라지는 느낌이다.
물론 여전히 SW에 대해 전반적으로 배우지않으면 복잡한 프로그램을 만들기 어렵고, 보안문제나 오류가 발생하면 대처하기 어렵다.
그러나 절대 대체될 수 없는 것과 AI의 등장 몇년이 지나 벌써 대체되기 시작하는 것은 다르다.
게임 업계에서도 생성형 AI를 이용해 개발을 시작한 것으로 안다. 내가 졸업하는 2029년에는 어떤 방식으로 개발을 하고 있을지 상상도
하기 힘들것이라고 생각한다.
우선 기술의 발전을 막을순 없으니 내가 집중해야하는 것은 게임 개발의 전반적인 작업방법과 언리얼엔진같은 전문적인 툴의 학습 그리고 인공지능을 활용한 게임개발 변화에 대한 빠른 리딩이 필요할 것이라고 생각한다.
언리얼엔진5가 등장하고 AI가 아직 이것을 통해 지금 claude나 cursor가 아주 쉽게 코드를 생성하지 못하는 것으로 안다. 몇년뒤에는 또 모르겠지만.