기술 면접 준비
1. Django란 무엇인지 설명하시오.
- Python으로 만들어진 쉽고 빠르게 웹사이트를 개발할 수 있도록 돕는 구성 요소들로 이루어진 Web Framework입니다.
Framework란 프로그래밍언어에서 복잡한 기능을 수행하기 위해 만들어진 틀이며, 다양한 기능을 구현하기 위해 사용됩니다.
2. Django를 백엔드 스택으로 선정한 이유는 무엇인가요?
- Django는 템플릿부터 데이터베이스까지 웹을 구현하는데 필요한 기본적인 기능을 전부 제공하는 Framework이기 때문에 처음에 학습하기에 좋다고 생각해서 선택했습니다.
기본적인 기능이 제공되어져 쉽고 빠르게 구현할 수 있었습니다.
또한 Django는 관계형데이터베이스 기반의 프레임워크이므로 선택했습니다. - 상대적으로 Flask는 접근성이 좋고 빠르게 구현할 수 있지만, 웹에 필요한 다양한 기능을 전부 구현하기 위해서는 많은 라이브러리를 가져와야하기 때문에 숙련도를 요구하게 된다.
3. Django에는 어떤 장점이 있나요?
- ORM을 지원하고 admin을 제공하므로 데이터베이스 접근이 용이해 시간 절약이 됩니다.
앱 별 파일구조(urls, views, serializers)가 나뉘어 있어서, 묶어서 보기 편하고,
웹 구현에 자주 사용되어지는 로그인, 회원가입, 비밀번호 해싱등이 기본 제공되어지며,
기본적인 보안 또한 제공이 되어있습니다.
4. Django가 다른 Python Web Framework와 비교되는 특징이 있다면 무엇인가요?
- 관계형 데이터베이스(RDB)를 사용합니다.
앱별 파일구조를 가지고 있고, Admin을 제공합니다.
MTV 시스템이고, 기본적인 보안을 제공하고 있습니다.
5. Django의 프로세스는 어떤 순서로 동작하나요?
- [ Request → URL → View → Model → DB → Template → Response ]
Client에서 요청을 보내고 url.py에서 url를 보고 이에 맞는 View로 넘어가요 모델과 데이터베이스 관계를 보고 데이터를 받아와서 받아온 것을 템플릿으로 넘겨주는 Response로 반환합니다. 그러면 Client가 Response를 받은 것을 보여줍니다.
6. Django의 MTV는 무엇인가요?
- Model, Template, View 의 약자입니다.
- Model은 Pattern System이 Model로 데이터를 읽거나 쓸 때 사용하며 model.py가 담당합니다.
- Template으로 유저가 실질적으로 보는 화면을 의미합니다.
- View는 URL패턴에서 들어온 요청을 처리하고, 요청에 따라 모델을 호출하거나 템플릿을 호출하고 최종적으로 유저에게 HTML파일을 보여주는 역할을 하며, views.py가 담당합니다.
'취업_TIL' 카테고리의 다른 글
취업_TIL | 2022-09-05 (6) _ 기술 면접 대비 질문 28~40 (0) | 2022.09.05 |
---|---|
취업_TIL | 2022-09-02 (5) _ 기술 면접 대비 질문 17~27 (0) | 2022.09.02 |
취업_TIL | 2022-09-01 (4) _ 기술 면접 대비 질문 7~16 (0) | 2022.09.01 |
취업_TIL | 2022-08-23 (2) _ 이력서 특강 정리 (0) | 2022.08.23 |
취업_TIL | 2022-08-22 (1) (1) | 2022.08.22 |