Coding/TIL & 배운것들
Django를 사용하는 이유?
코딩짜는 머글
2024. 12. 13. 11:59
초반에 Django를 배울때의 마음가짐!!
처음부터 꼼꼼하게 이해하는것은 방해가 될수도 있다. 원리를 다 알고 이해하려고 하기 보다는 도구를 잘 사용할 수 있는 방법을 익히고 도구를 잘 사용할 수 있으면 된것이다. 프레임워크가 그 도구이다!! (이해는 익숙해지고 난 뒤에 해도 늦지않다.)
다양한 프레임워크 중에서도 Django를 배워야하는 이유는 뭘까?
*장고를 사용하는 이유*
Python 기반 :Python을 사용해서 웹개발이 가능하므로 Django를 다루기위해 다른 언어를 배울 필요가 없다!!
웹 프레임워크 : 웹을 만들기 위한 프레임워크이다. 빠른 웹개발을 위한 모든 것이 준비되어 있다.
DRY(Don't Repeat Yourself)원칙 : 코드 중복을 최소로하는 개발 원칙을 따른다.
모든것이 갖춰진 프레임워크 : 보안, 관리자기능, Auth 등의 필요한 모든것이 준비되어있다.
풍부한 레퍼런스 : 웬만한 에러들은 이미 해결책이 제시되어있다.
검증된 프레임워크 : 스포티파이, 인스타그램, 드롭박스, 토스 등등 많은 곳들에 사용되고 있다.
프레임워크(Framework)란?
소프트웨어 개발을 위한 구조적인 틀
- 개발자들이 프로그램을 만들때 자주 사용하는 여러 도구를 모아놓은 것이다.
- 특정한 작업이나 목적을 수행하기 위한 코드 뭉치이다.
- 파이썬에는 Django, Flask, FastAPI등의 여러 프레임워크가 있다.
▼사용하는 이유
- 생산성이 아주 높아진다.
- 부가적인 부분은 프레임워크에 맡기고, 핵심 로직에만 집중할 수 있다.
- 구조적으로 안정적인 형태로 개발이 가능하다. -> 프레임워크는 슈퍼개발자 여러명이 모여 논의를 통해 만들어진다. 따라서 굉장히 단단하고 안정적인 코드이다.
- 빠르고 안정적이며, 높은 품질의 소프트웨어 개발이 가능하다.
프로그래밍 언어를 이용해서 하나하나 모두 만드는 방법
▼장점
- 자신이 모든것을 이해할 수 있다.
- 모든것을 뜻대로 동작하게 만들 수 있다.
▼단점
- 모든것을 아주 잘 알아야 한다. -> 웹의 특성, 보안, 데이터베이스 등 많은 부분들이 있다.
- 시간이 너무 많이 걸린다.
이미 만들어진 것을 가져와서 사용하는 방법
▼장점
- 모든것을 만들 필요없이 가져다가 사용하는 방식으로 개발이 가능하다.
- 아주 빠르게 웹 사이트를 만들 수 있다.
▼단점
- 처음에 러닝 커브가 존재한다. -> 다른 개발자들이 만들어놓은 코드를 어느정도 이해하고 사용법을 알아야한다.
- 모든것을 원하는대로 커스텀하기 어렵다. -> 가져다가 쓰는 것이기 때문에 한계가 존재함.