1. 프로그래밍
- 프로그램 = Pro(미리) + Gram(작성된 것)
=> 컴퓨터가 무엇을 해야할지 미리 명령어로 작성해 놓은 계획
=> 문제를 해결하기 위해 필요한 데이터를 입력, 저장, 처리, 출력하기 위한 명령어와 그 명령어들의 실행 순서를 결정해 놓은 것(알고리즘)의 집합 - 프로그래밍 언어 : 인간과 컴퓨터가 대화할 수 있도록 만든 인공 언어
- 컴퓨터 프로그램 실행 과정 :
- 표준 입력 장치(키보드, 마우스)를 통해 정보 입력(input)
- 입력받은 데이터를 메인 메모리(RAM)에 저장
- CPU가 데이터를 명령어 순서대로 처리
- 처리 결과를 표준 출력 장치(모니터)에 출력(print)
- 데이터 : 프로그램을 운용할 수 있는 형태로 기호화, 숫자화 한 자료
- 데이터 타입 : 자료를 종류에 따라 분류한 것
- 변수 : 값을 저장하는 메모리(RAM) 상의 공간, 저장 위치를 숫자(주소)로 기억
2. 개발 환경
- IDLE (Intergrated Development and Learning Environment) :
- Python의 기본 개발 환경 코드 편집기
- 대화형 셸(Interactive Shell) 사용
- Python 명령어를 한 줄씩 입력하여 실행할 수 있는 소프트웨어
- IDE (Intergrated Development Environment)
- 터미널, 디버거, 코드 편집기 등 개발에 도움이 되는 각종 기능을 포함한 소프트웨어
- 터미널 : 명령어 입력을 통해 컴퓨터를 직접 제어하기 위해 사용하는 소프트웨어
- 디버거 : 프로그램을 검사하고 에러 발생시 수정을 보조하는 소프트웨어
- IDE의 예 :
- PyCharm
- VSCode (Visual Studio Code)
- Colab (Colaboratory)
- 구글이 제공하는 클라우드 기반 개발 환경
- Python을 설치할 필요 없이 웹 브라우저에서 Python 코드를 작성 및 실행 가능
- 외부 라이브러리나 파일을 사용하려면 매 연결마다 새로 설치해야 함
- GPU (Graphic Processing Unit) 무료 사용 가능
- 터미널, 디버거, 코드 편집기 등 개발에 도움이 되는 각종 기능을 포함한 소프트웨어
3. Python
- 특징 :
- 1991년에 개발된 인터프리터 프로그래밍 언어
- 인터프리터 : 코드를 한 줄씩 읽어 내려가며 실행하는 프로그램
- 더보기
'인터프리터 언어'의 의미를 알려면 다른 '컴파일 언어'들과 비교해봐야 한다. 그전까지 가장 많이 사용했던 C#과 비교하자면, C#은 컴파일 언어로, 실행하기 전 모든 코드 전체를 읽고 실행된다.
그래서 메서드, 클래스 등을 위에서 선언하든 아래에서 선언하든 완결성 있게 선언한다면 그 네임스페이스 안에서 어디서든 사용할 수 있다. 가령 메서드를 위에서 사용해놓고 그 메서드를 아래에 정의해도 상관 없다. 컴파일러는 모든 코드를 알고 있기 때문이다.
그러나 Python은 모든 코드를 전부 - 다만 오해하지 말아야 할 건, '인터프리터 언어'라고 정말 소스 코드를 한 줄씩 읽기만 하는 것은 아니고, '컴파일 언어'라고 무조건 실행할 때 모든 코드가 한꺼번에 실행되는 건 아니라는 점이다. 인터프리터 언어인 Python도 Python 바이트 코드로 변환을 하고, 컴파일 언어인 C#도 JIT(Just - In - Time) 컴파일을 지원한다.
- 더보기
JIT (Just - In - Time) : 빌드할 때 CIL 중간 언어까지만 변환해놓고 프로그램을 실행하는 시점에서 필요한 부분을 기계어로 컴파일 하는 방식. 사전 컴파일 시간이 짧은 대신 실행 중에 컴파일 비용을 지불하므로 초기 실행이 느려질 수 있다.
AOT (Ahead - Of - Time compilation) : 빌드할 때 미리 기계어로 컴파일하는 방식. 빌드 시간이 오래 걸리고 파일 크기가 커질 수 있지만, 실행 중 따로 번역하는 과정이 없어 앱이 빠르게 켜지고 CPU 사용량이 적다.
- 간단한 문법과 다양한 라이브러리
-
더보기C++을 맛보고 C#을 공부했던 입장에서, Python의 문법은 정말 독보적으로 쉬웠다. 정말로 '개떡같이 말해도 찰떡같이 알아듣는다'는 말의 현신이다. C#보다 Python을 먼저 공부한 입장에서 C# 공부할 때 가장 많이 힘들었던 부분이, Python에서는 코드 한줄로 되는 기능이 C#에는 없어 원리를 알고 일일이 구현해야 했던 것이다. C#도 상당히 편의성 중심의 언어인 걸 고려하면, Python의 편의성은 다른 대표적인 프로그래밍 언어와 비교를 불어한다. 물론 C# 덕분에 Python을 쓸 땐 몰랐던 컴퓨터 공학적인 지식이 대폭 늘긴 했다.
-
- 오픈소스 무료 소프트웨어
- 객체지향적 언어
- 데이터 분석, 인공지능 분야에서 널리 사용됨
- 1991년에 개발된 인터프리터 프로그래밍 언어
'개발 공부 > Python 기초' 카테고리의 다른 글
| [Python] 02 - Python 기초 (0) | 2026.08.02 |
|---|