💡 ORM(Object-relational mapping 객체-관계형 매핑)이란?
- 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것을 말한다.
객체 지향 프로그래밍은 클래스를 사용하고, 관계형 데이터베이스는 테이블을 사용한다.
- ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한
객체를 통해 간접적으로 데이터베이스 데이터를 다룬다.
💡 인터프리터 언어의 단점
- 실행속도가 컴파일러에 비해 느리다
- 바이트 코드로 해석되기 때문에 프로그램의 코드가 유출될 수 있다.
한글화된 자료가 부족하다.
한국에서보다 외국에서 많이 사용돼서 대부분 영어로 된 자료가 많다.
이미 만들어진 기능을 사용하는 경우가 많기 때문에 원하는대로 커스텀을 하기가 힘들다.
이미 라이브러리를 사용하고 있는 상황에서 수정을 해야하는 경우가 많아서 해석해야 한다.
-MVT패턴을 따르고 있다.
💡 MVT패턴이란?
- MVC(Model-View-Controller)
웹 프로그램 개발시 일반적으로 언급되는 MVC(model-view-controller)패턴이란
데이터(Model), 사용자(View), 데이터를 처리하는 로직(Controller)을 구분해서
한 요소가다른 요소들에 영향을 주지 않도록 설계하는 방식이다.
파이썬도 이러한 MVC개념을 그대로 받아들였는데, 용어는 다르게 사용하고 있다.
Django framework에서는 View를 Template, Controller는 View라고 표현한다.
**MVC를 MVT 패턴이라고 합니다.**
데이터를 관리하는 역할. 데이터베이스와의 상호작용을 담당하며, 데이터의 생성, 수정, 삭제, 검색 등의 기능을 제공.
사용자의 요청에 대한 처리를 담당. 모델에서 가져온 데이터를 가공하여 템플릿으로 전달한다.
템플릿은 뷰에서 전달받은 데이터를 HTML로 렌더링하여 사용자에게 보여주는 것.