Coding/TIL & 배운것들

Django를 사용하는 이유?

코딩짜는 머글 2024. 12. 13. 11:59

 

 

 

 

초반에 Django를 배울때의 마음가짐!!

처음부터 꼼꼼하게 이해하는것은 방해가 될수도 있다. 원리를 다 알고 이해하려고 하기 보다는 도구를 잘 사용할 수 있는 방법을 익히고 도구를 잘 사용할 수 있으면 된것이다. 프레임워크가 그 도구이다!! (이해는 익숙해지고 난 뒤에 해도 늦지않다.)

 

 


 

다양한 프레임워크 중에서도 Django를 배워야하는 이유는 뭘까? 

 

*장고를 사용하는 이유*

Python 기반 :Python을 사용해서 웹개발이 가능하므로 Django를 다루기위해 다른 언어를 배울 필요가 없다!!

웹 프레임워크 : 웹을 만들기 위한 프레임워크이다. 빠른 웹개발을 위한 모든 것이 준비되어 있다.

DRY(Don't Repeat Yourself)원칙 : 코드 중복을 최소로하는 개발 원칙을 따른다.

모든것이 갖춰진 프레임워크 : 보안, 관리자기능, Auth 등의 필요한 모든것이 준비되어있다. 

풍부한 레퍼런스 : 웬만한 에러들은 이미 해결책이 제시되어있다. 

검증된 프레임워크 : 스포티파이, 인스타그램, 드롭박스, 토스 등등 많은 곳들에 사용되고 있다. 

 

 

 

프레임워크(Framework)란?

소프트웨어 개발을 위한 구조적인 틀

 

  • 개발자들이 프로그램을 만들때 자주 사용하는 여러 도구를 모아놓은 것이다.
  • 특정한 작업이나 목적을 수행하기 위한 코드 뭉치이다.
  • 파이썬에는 Django, Flask, FastAPI등의 여러 프레임워크가 있다.

 

 

사용하는 이유

  • 생산성이 아주 높아진다.
  • 부가적인 부분은 프레임워크에 맡기고, 핵심 로직에만 집중할 수 있다.
  • 구조적으로 안정적인 형태로 개발이 가능하다. -> 프레임워크는 슈퍼개발자 여러명이 모여 논의를 통해 만들어진다. 따라서 굉장히 단단하고 안정적인 코드이다. 
  • 빠르고 안정적이며, 높은 품질의 소프트웨어 개발이 가능하다. 

 

프로그래밍 언어를 이용해서 하나하나 모두 만드는 방법

장점 
- 자신이 모든것을 이해할 수 있다.
- 모든것을 뜻대로 동작하게 만들 수 있다.

단점
- 모든것을 아주 잘 알아야 한다. -> 웹의 특성, 보안, 데이터베이스 등 많은 부분들이 있다.
- 시간이 너무 많이 걸린다.
이미 만들어진 것을 가져와서 사용하는 방법

장점 
- 모든것을 만들 필요없이 가져다가 사용하는 방식으로 개발이 가능하다.
- 아주 빠르게 웹 사이트를 만들 수 있다.

단점 
- 처음에 러닝 커브가 존재한다. -> 다른 개발자들이 만들어놓은 코드를 어느정도 이해하고 사용법을 알아야한다. 
- 모든것을 원하는대로 커스텀하기 어렵다. -> 가져다가 쓰는 것이기 때문에 한계가 존재함.