Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Doker
- 개발공부
- 쿠키(cookie)
- Til
- 연습
- 자료구조
- 티스토리챌린지
- 코딩테스트
- redis
- CS
- JWT
- docker
- 오블완
- web
- SQL
- 장고
- github
- flask
- 도커
- ERD
- django
- 세션(Session)
- 파이썬
- git
- nginx
- Python
- 아티클 스터디
- Wil
- NoSQL
- viewsets
Archives
- Today
- Total
SteadyDrills
[TIL] Python 과 Python 프레임 워크 본문
20240521.
Python (파이썬)
파이썬이란, 프로그래밍 언어로 '가독성이 높고 문법이 쉽다.'라는 장점이 있다.
들여 쓰기 사용하여 코드 블록을 구분하기 때문에 구조가 명확해서 알아보기가 쉽다.
또한, 다른 프로그래밍 언어에 비해 문법이 간결하다.
# 파이썬(들여쓰기 예시)
if x > 3:
print("x는 3보다 큽니다.")
else:
print("x는 3보다 작거나 같습니다.")
가독성이 높은 언어를 사용함으로써 얻는 장점은 코드 이해가 빠르고 쉽다는 점이다.
그 말은 곧 유지 보수적인 면에서 유리하며, 코드 작성 자체가 신속하게 이루어질 수 있다는 말이다.
Python (파이썬) 프레임 워크
프레임 워크란, 소프트웨어 개발을 위한 구조적인 틀이자
기반이 되는 특정한 코드와 라이브러리의 집합이라고 한다.
파이썬 프레임 워크의 대표적인 예로는 Django와 Flask가 있다.
- Django
- Django의 특징(장점)
- 웹 개발에 필요한 거의 모든 기능을 제공한다. ex) 데이터베이스 처리, URL 라우팅, 템플릿 엔진 등
- 관리자 사이트를 자동으로 생성해 주는 기능을 제공한다. 이를 통해 데이터베이스의 내용을 쉽게 관리하고 수정할 수 있다.
- 보안에 대한 다양한 기능을 내장하고 있다.
- 다양한 라이브러리와 플러그인을 지원하고 있어서 확장성이 좋다.
- Django의 단점
- 과도한 기능: 기능과 개념이 다양하고 많기 때문에 익히는 데 시간이 걸릴 수 있다. 또한 그로 인해 프로젝트의 복잡성이 증가할 수 있다.
- 커스터마이징이 어려울 수 있다.: 특정 기능을 원하는 대로 수정하기 어려울 수 있습니다. 고도로 구조화된 설계와 내부 동작 방식에 때문이다.
- 파이썬의 한계: Django는 파이썬 언어로 개발되어 있기 때문에, 파이썬의 성능 한계에 영향을 받을 수 있다. 특히 CPU 집약적인 작업이 많은 경우에는 성능이 저하될 수 있다.
- Django의 특징(장점)
- Flask
- Flask의 특징(장점)
-
- 코드가 적고 직관적이며, 기본적인 기능만을 포함하고 있어서 빠르고 쉽게 개발할 수 있다.
- 마이크로 프레임워크: 필요한 기능만을 최소한으로 제공한다. 이는 불필요한 기능이나 복잡성을 줄여준다.
- 웹 서버와의 통합가능: 내장된 개발 서버를 사용하여 다양한 웹 서버와의 연동할 수 있다. 운
- Flask의 단점
- 기능 부족: 필요한 기능만을 최소한으로 제공하기 때문에 크고 복잡한 웹 애플리케이션을 개발할 때 필요한 기능들을 직접 구현해야 한다.
- 설정의 복잡성:설정이 덜 구조화되어 있고, 미리 정의된 구조가 없다. 때문에 프로젝트가 커질수록 설정의 관리가 어려워질 수 있다.
- 커뮤니티의 크기: 다른 대형 프레임워크에 비해 상대적으로 작다. 따라서 문제 해결이나 지원을 받는 데에는 조금 더 어려움을 겪는다.
'PYTHON' 카테고리의 다른 글
[TIL]코딩테스트: 짝수의 합 (0) | 2024.05.29 |
---|---|
[TIL]Lv2. 스파르타 자판기 (0) | 2024.05.28 |
[TIL]Lv1. 랜덤 닉네임 생성기 (0) | 2024.05.26 |
[TIL]홀 수 짝수 판별기 (0) | 2024.05.24 |
[TIL] 코딩 테스트: 몫구하기 (0) | 2024.05.23 |