Skip to content

GRAY-DDOT/hello_python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

Hello Python ver.0.1

파이썬은 쉽고 직관적이며 모든 언어와 비교해 러닝 커브가 완만하다.

그 매력으로 인해 C, C++, Java, JS 등의 다른 메이저 언어는 넘보지 못할 기묘한 역할을 수행한다.

바로 범용 프로그래밍 언어이다.

프로그래밍, 공학적 분석, 웹, 게임, 서버, 인공지능 등 그 용도와 사용 범위가 타의 추종을 불허한다.

해당 프로젝트는 특정한 목적을 지향하지 않고 본인이 파이썬을 다양한 목적과 분야에서 사용하기 위해 학습하고 공부한 것을 정리한다.

아래의 섹션 분류와 소스 코드는 언제 든지 예고 없이 변경될 수 있다.

24년 12월 기준 섹션 1, 2 작성 중

주요 커리큘럼

섹션 1. 파이썬 기본 프로그래밍(24년 12월 작성 중, 12월 20일까지 1차 완성)

  • 파이썬의 기본 문법과 표준 라이브러리 기초에 대한 섹션이다.
  • 기본 문법 : 변수, 타입, 연산, 자료구조, 분기 및 반복
  • 표준 라이브러리 :

섹션 2. 파이썬 객체 지향 프로그래밍 및 라이브러리 심화(24년 12월 ~ 24년 1월 초 작성 예정)

  • 파이썬을 이용한 객체 지향 프로그래밍에 대해 학습한다..
    • 객체와 클래스, 객체지향의 원칙 등을 학습한다.
    • 효과적인 학습을 위해 단위테스트와 TDD에 대해 학습한다.
    • 기본적인 객체 지향 설계와 그 철학에 대해 학습한다.
  • 기본 라이브러리와 유명한 외부라이브러리에 대해 소개하고 학습한다.
    • 이후 섹션에서 다시 등장하는 라이브러리의 경우 기본적인 사용법까지만 다룬다.

섹션 3. 파이썬과 자료 구조, 알고리즘(24년 12월 ~ 24년 1월 초 작성 예정)

  • 자료 구조, 알고리즘에 관한 섹션이다.
  • 파이썬을 통해 자료 구조(선형, 비선형)와 ADT를 구현한다.
  • 이미 구현된 자료구조에 대해 소개한다.
  • 알고리즘의 시간 복잡도, 정렬, 탐색, 그래프, DP 등에 대해 학습한다.

섹션 4. 파이썬과 이산 수학, 통계, 데이터 분석, 시각화 기본(24년 1월 초 작성 예정)

  • 다양한 라이브러리를 이용해 컴퓨터 과학의 수학, 통계 데이터 분석을 학습한다.
  • 데이터 분석 : numpy, pandas, scikit-learn, tensorflow, pytorch, scipy, statmodels
  • 시각화 : matplotlib, seaborn

섹션 5. 파이썬과 ML, 통계와 관련 알고리즘과 함께(시기 미정)

  • 지도, 비지도, 전처리, 탐색적 분석, 평가, 분류, 회귀, 차원 축소, 결정 트리
  • 하이퍼 파라미터 튜닝, 앙상블, 최신 트렌드와 주요 알고리즘의 변화
  • NumPy, Pandas, Matplotlib, Seaborn, Scikit-learn, scikit-learn, tensorflow, pytorch

섹션 6. 파이썬과 DL, 선형대수와 관련 알고리즘, 퍼셉트론과 함께(시기 미정)

  • 인공 신경망, 손실 함수, 옵티마이저, 텐서, CNN 기초(convolution, pooling), CNN 주요 모델
  • 시계열 데이터, RNN, LSTM, GRU, Transfer, Attention, GAN, 강화 학습, 모델 최적화, 하이퍼 파라미터 튜닝
  • 확률론, 통계적 패턴 인식, 패턴 인식 기초 알고리즘(KNN, SVM), Clustering
  • 최신 트렌드(Diffusion, DALL-E, GPT)
  • TensorFlow, PyTorch, Keras, NumPy, Pandas, Matplotlib

섹션 7. 파이썬과 컴퓨터 비전, 머신러닝, 딥러닝(시기 미정)

  • 이미지 데이터 구조, OpenCV, 이미지 처리, 전처리,
  • 필터, 에지 검출, 특징 추출/매칭, 객체 검출, 분할
  • 딥러닝과 CV, 사전 학습 모델과 전이 학습
  • 비지도 학습, 오토 인코더
  • 비디오 데이터, 실시간 객체 검출
  • Attention, ViT, Transfer, GAN, Diffusion, Generative Model

섹션 8. 파이썬과 웹 개발(시기 미정)

  • WEB의 이해(http, url, uli, S-C, FE-BE, HTML, CSS, JS, 브라우저)
  • Flask, Jinja2(템플릿 엔진), Django, DTL(템플릿 엔진), Bootstrap
  • DB, ORM
  • RESTful API, HTTP 메서드, json, Swagger, Postman
  • 사용자 인증 및 권한 관리, 세션, 토큰, 로그인/로그아웃, JWT, 권한 및 접근 제어
  • 폼 데이터 검증, 파일 업로드 및 관리
  • 프론트 엔드 통합(AJAX, 비동기 통신, fetch)
  • 프론트 엔드 프레임워크 연동 SPA, 프론트엔드 데이터 바인딩
  • WebSocket, Flask-SocketIO, Django Channels, Redis 메시지 큐
  • 배포와 스케일링(WSGI/ASGI, Gunicorn 및 Nginx 배포, 컨테이너, Docker, Docker Compose)
  • 성능 최적화(캐싱, 쿼리 최적화), 보안(CSRF, XSS, SQL Injection, HTTP, SSL/TLS, Security Middleware)

섹션 9. 파이썬과 미적분, 공학 수학, 수치 해석(시기 미정)

  • NumPy, SciPy, SymPy, Matplotlib, Pandas
  • 미분(함수, 극한, 연속성, 도함수, 접선, 극값)
  • 적분(부정적분, 정적분, 물리-질량중심, 회전체 부피)
  • 다변수 함수(편도함수, 기울기), 선형 근사, 테일러 급수, 미분 방정식
  • 복소수, 지수함수, 오일러 공식, 푸리에 급수, 푸리에 변환(DFT, FFT)
  • 벡터, 행렬, 선형 독립, 기저 및 차원, 특수 행렬
  • 행렬식, 역행렬, 고유값, 고유백터,
  • PCA, 데이터 차원 축소, 압축 및 복원
  • 선형 회귀, 선형 계획법
  • 선형 방정식(연립-가우스 소거법), 비선형 방정식(이분법 ,뉴턴-랩슨,...), 수치 최적화
  • 초기값, 경계값, 수치 미분, 수치 적분, 수치 선형 대수(대규모 선형 시스템, 반복)

섹션 10. 파이썬과 웹 스크래핑과 크롤링 - 데이터 분석, 웹 개발 + (시기 미정)

  • 스크래핑, 크롤링, HTML, CSS, DOM, HTTP, 요청-응답, 요청 헤더, 쿠키, 세션 관리
  • BeautifulSoup HTML 파싱
  • 데이터 저장 및 처리, 정리(CSV, JSON, Excel, 정규식, 데이터 클렌징)
  • 크롤링, 크롤링 윤리, Robots.txt, 크롤링 범위 제한 방법
  • 성능 최적화(요청 속도, 타임아웃, IP 로테이션, User-Agent, 속도/효율성 개선)
  • Selenium, 브라우저 제어, 동적 데이터 수집, 스크린샷 및 파일 다운로드 자동화
  • REST API, API 키 및 인증, JSON 데이터 파싱
  • 크롤링 설계(대상 분석, URL 패턴, 페이지 구조), 다중 페이지 크롤링(네비게이션)
  • 대규모 크롤링(Scrapy), 비정형 데이터 크롤링, 분산 크롤링(RabbitMQ, Celery)

섹션 11. 파이썬과 스프레드 시트, 엑셀 - 데이터 분석 + (시기 미정)

  • 엑셀 인터페이스, 구조, 기능, 정리
  • 기본 수식 함수, 데이터 처리 함수, 엑셀 차트, 시각화, 통계 및 분석 도구, 시뮬레이션, 최적화
  • 파이썬 엑셀 라이브러리, 엑셀 데이터 구조, 엑셀 api, 오류 처리, 디버깅,

섹션 12. 파이썬과 네트워크, 네트워크 프로그래밍 (시기 미정)

  • OSI 7 Layers, TCP/IP, IP, Subnet, Routing, soket lib
  • TCP/IP 프로그래밍(소켓 바인딩, 연결 및 데이터 전송, 멀티스레드 기반 소켓 서버 구축)
  • 비동기 네트워크 프로그래밍(asyncio, 코루틴, 이벤트 루프, 비동기 TCP)
  • HTTP, REST API
  • Network Packet 분석(Wireshark, Postman, Scapy, Ping, Traceroute)
  • 네트워크 보안 프로그래밍(SSL/TLS, 데이터 암호화, 원격 서버(Paramiko))
  • 파일 전송 및 스트리밍, 네트워크 부하 분산(로드 밸런싱, Nginx, 라운드 로빈 로드 밸런서)

섹션 13. 파이썬과 컴퓨터 구조 및 운영체제, 그런데 C와 가상화를 곁드린.. (시기 미정)

운영체제 기초, 이론, 실습, 시스템 프로그래밍

  • 프로세서, 메모리, 폰 노이만
  • 운영체제 역할, 기능, 구조, 파이썬 라이브러리(os, sys)
  • 파일, 디렉토리, 권한, 환경 변수, 시스템 명령, 운영 체제 종류와 역사, 커널 기초
  • 프로세스, 쓰레드, 컨텍스트 스위칭,
  • 병렬성, 멀티-(프로세서, 테스킹, 프로세스, 스레드), subprocess, threading, Lock, Semaphore
  • 메모리 관리(gc), 메모리 프로파일링 및 최적화(psutil)
  • 파일 시스템, 파일 시스템 관리, 장치 관리(IO, USB, Serial port)
  • CPU 스케줄링 알고리즘, 멀티 코어 스케줄링, 동기화, 교착 상태, 상호 배제
  • 메모리(가상) 및 디스크 관리, 파일 시스템
  • 네트워크 통신, 소캣 프로그래밍, 비동기 통신, IPC,
  • 운영 체제 및 파일 시스템 보안
  • 가상화, Docker, K8s, VM Ware
  • 시스템 호출, 신호 처리, 디바이스 드라이버, 시스템 관리 스크립트
  • 성능 분석, 모니터링, 최적화
  • 운영체제 및 시스템 설계

부록 1. IDE(파이참, 아나콘다, 코랩, VSCode) (24년 12월 ~ 24년 1월 초 작성 예정)

부록 2. Git VSC (24년 12월 ~ 24년 1월 초 작성 예정)

About

파이썬 복습을 위한 교안 만들기

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published