🐍 [기초] 프로그래밍이란? 파이썬은 왜 다를까?
처음 컴퓨터를 배우기 시작했을 때,
가장 많이 들었던 말이 있었다.
“프로그래밍이란, 컴퓨터에게 일을 시키는 거야.”
그때는 그냥 막연히 “코딩 = 프로그래밍”이라고 생각했었는데,
지금은 조금 다르게 느껴진다.
💡 프로그래밍이란?
📦 프로그램이란,
컴퓨터가 어떤 작업을 순서대로 처리하도록 구성된 명령어의 리스트다.
👩💻 그리고 그 프로그램을 만드는 행위가 바로 프로그래밍이다.
단순히 명령을 나열하는 걸 넘어서,
알고리즘을 설계하고, 논리적인 흐름을 만드는 작업까지 포함된다.
✅ 코딩은 프로그래밍의 “일부분”일 뿐이다.
타이핑은 시작일 뿐,
진짜 중요한 건 흐름을 설계하는 힘이라는 걸 나중에야 알게 됐다.
🔧 왜 ‘프로그래밍 언어’가 필요한 걸까?
컴퓨터는 우리가 쓰는 자연어(한국어, 영어)를 이해하지 못한다.
그래서 우리는 컴퓨터가 이해할 수 있는 **기계어(machine code)**로 명령을 전달해야 한다.
이때 사용하는 게 바로 프로그래밍 언어이고,
그 언어를 기계어로 바꿔주는 도구가 바로 **컴파일러(Compiler)**다.
⚙️ 컴파일 방식의 흐름
소스 코드 (프로그래밍 언어)
↓
컴파일러 (기계어로 번역)
↓
실행 파일 (.exe 등)
↓
프로그램 실행
컴파일은 전체 코드를 한 번에 번역하고,
그 결과물을 실행하는 구조다.
🐍 그런데, 파이썬은 조금 다르다?
파이썬(Python)은 보통 인터프리터 방식으로 작동한다.
즉, 전체 코드를 한 번에 번역하지 않고 한 줄씩 읽고 즉시 실행한다.
🧠 그래서 코드 수정 → 실행 테스트 → 수정… 이 사이클이 빠르다.
바로 이 점이 입문자에게 파이썬이 쉬운 이유 중 하나이기도 하다.
🧬 파이썬 실행 구조 (내부 흐름)
소스 코드 (.py)
↓
컴파일러가 바이트코드(.pyc) 생성
↓
PVM(Python Virtual Machine)이 바이트코드 실행
↓
필요한 라이브러리 로딩 + 사용자 입력 처리
내부적으로는 컴파일도 하고, 실행도 하는 하이브리드 구조다.
🌟 내가 느낀 파이썬의 장점
✅ 문법이 간단하고 직관적이라 배우기 쉽다
✅ 오픈소스로 자유롭게 사용할 수 있다
✅ 라이브러리 생태계가 정말 넓다
예시 라이브러리들:
- 🤖 AI: TensorFlow, PyTorch
- 📊 통계: NumPy, Pandas
- 🎞 영상처리: OpenCV
- 🌐 웹개발: Django, Flask → 이건 내가 실제로 써봤다!
🐌 파이썬의 단점도 분명 있다
⚠️ 속도가 느리다
→ 인터프리터 방식이기 때문에 컴파일 언어(C/C++ 등)보다 느림
⚠️ 하드웨어 제어나 모바일 앱 개발엔 비효율적
→ Java, Swift, C++ 같은 언어가 더 적합한 영역도 있다
✍️ 정리하자면…
- 코딩은 프로그래밍의 일부일 뿐,
진짜 힘은 흐름을 설계하는 능력이다 - 파이썬은 배우기 쉽지만, 내부 구조는 생각보다 체계적이다
- 언어마다 잘하는 분야가 있고,
그 특성을 이해하는 게 훨씬 중요하다
📌 지금의 나는
수업에서 외웠던 문법이
이제 진짜 내 코드로 이해되는 순간들을 만나고 있다.
다음 글에서는
👉 def 함수, input, print, for, if 같은 기초문법들을
내가 직접 써보며 깨달았던 순간들을 기록해보려 한다.