1. OSOperating System(운영체제)의 약자
모든 프로그램은 OS에 맞춰 개발해야 한다.
OS에서 파일을 저장하는 저장 체계
컴퓨터에서 정보를 저장하는 논리적인 단위로 파일명과 확장자(ex: hello.py)로 식별하며 실행, 쓰기, 읽기 등을 할 수 있다
컴퓨터 파일의 고유한 위치로 트리구조상 노드의 연결이다.
절대 경로
루트 디렉토리부터 파일 위치까지의 경로를 뜻한다.
상대 경로
현재 있는 디렉토리부터 타깃 파일까지의 경로를 뜻한다.
마우스가 아닌 키보드로 명령을 입력하고 프로그램을 실행
GUI(Graphical User Interface)와 달리 Text를 사용하여 컴퓨터에 명령을 입력하는 인터페이스 체계이다.
디스플레이와 키보드가 조합된 장치가 어원이며 현재는 CLI로 입력하는 화면을 뜻한다.
각 터미널에는 프로그램을 작동하는 shell이 존재하고 각 shell 마다 다른 명령어를 사용한다.
| 윈도우 CMD 창 명령어 | shell 명령어 | 설명 |
|---|---|---|
| CD | CD | 현재 디렉토리 이름을 보여주거나 바꾼다.(change directory) |
| CLS | clear | CMD 화면에 표시된 것을 모두 지운다. (clear screen) |
| COPY | cp | 하나 이상의 파일을 다른 위치로 복사한다. (copy) |
| DEL | rm | 하나 이상의 파일을 지운다. (delete) |
| DIR | ls | 디렉토리에 있는 파일과 하위 디렉토리 목록을 보여준다. (directory) |
플랫폼
윈도우, 리눅스, 안드로이드, 맥OS, iOS 등 프로그램이 실행되는 운영체제
독립적인
OS에 상관없이 한번 프로그램을 작성하면 사용가능
인터프리터
소스코드를 바로 실행할 수 있게 지원하는 프로그램 실행 방법
| 컴파일러 | 인터프리터 | |
|---|---|---|
| 소스코드를 기계어로 번역 | 작동방식 | 소스코드를 실행시점에 해석하여 컴퓨터가 처리할 수 있도록 함 |
| 실행속도가 빠름 | 장점 | 간단히 작성, 메모리가 적게 필요 |
| 한번에 많은 기억장소 필요 | 단점 | 실행속도가 느림 |
| C, 자바, C++, C# | 주요언어 | 파이썬, 스칼라 |
객체 지향적 언어
실행 순서가 아닌 단위 모듈(객체) 중심으로 프로그램을 작성
하나의 객체는 어떤 목적을 달성하기 위한 행동(method)와 속성(attribute)을 가지고 있다.
동적 타이핑 언어
프로그램이 실행하는 시점에 프로그램이 사용해야할 데이터에 대한 타입을 결정한다.
프로그램을 작성하고 실행시키는 환경
일반적으로 코딩환경 이라고 부른다.
개발 환경을 결정
| Windows | Linux | Mac OS | |
|---|---|---|---|
| 장점 | 친숙하다, 초기에 쉽다 | 모듈 설치가 쉽다, 무료이다, 참고문서가 많다. | 모듈 설치가 쉽다, 참고문서가 많다. |
| 단점 | 모듈 설치가 어렵다 | OS 자체 사용이 어렵다 | 비싸다 |
종류 설명 Download Python 일반적인 파이썬, 기본적인 모듈을 포함한다. Python Anaconda 다양한 과학 계산용 패키지를 포함한다. Anaconda
파이썬 코드도 일종의 문서
한글, 워드처럼 코드를 입력한 문서 편집기가 필요하다.
| 종류 | 설명 | Download |
|---|---|---|
| 메모장 | 윈도우의 기본 문서 편집도구 | 시작 - 메모장 |
| VI editor | 리눅스의 기본 문서 편집도구 | VIM |
| Sublime Text | 프로그래밍에 특화된 문서 편집도구 | Sublime |
| Atom | 프로그래밍에 특화된 문서 편집도구 | Atom |
| VS Code | 프로그래밍에 특화된 문서 편집도구 | VS Code |
| Pycharm | 다양한 기능을 갖춘 파이썬 전용 개발 도구 | Pycharm |
IPython커널을 기반으로 한 대화형 파이썬 shell
conda install jupyter
jupyter notebook
https://localhosot:8888/tree 주소로 jupyter notebook이 실행된다.
cell 단위로 실행되며 실행 시점에 해당 코드가 memory에 올라간다.
실행 명령어 Ctrl + Enter, Shift + Enter, Alt + Enter
| 주요 단축키 (Edit Mode) | 동작 |
|---|---|
| Shift + Tab | 툴팁 표시하기 |
| Ctrl + ] or Ctrl + [ | 들여쓰기 사용하기 |
| Ctrl + Shift + - | 셀 나누기 |
| 주요 단축키 (command mode) | 동작 |
|---|---|
| Shift + M | 아래 셀이랑 합치기 |
| x | 셀 오려두기 |
| c | 셀 copy |
| v or Shift + V | 셀 붙여넣기 |
| d, d | 셀 지우기 |
| z | 셀 지우기 취소 |
| m, m | Markdown 변환 |
| y, y | Code로 변환 |
구글이 개발한 클라우드 기반의 jupyter notebook