객체 지향적 코드를 사용함으로서 직관적이고 비지니스 로직에 집중할 수 있도록 도와줌
https://mommoo.tistory.com/67 비즈니스 로직 설명
CRUD를 위한 SQL문을 작성할 필요는 없음(쿼리 작성은 필요)
각 객체(Model)별로 코드를 작성하므로 가독성이 높아짐
재사용 및 유지 보수의 편리성이 증가함
- ORM은 독립적으로 작성되어 있고 해당 객체들은 재사용이 가능
DBMS에 대한 종속성이 줄어듦
대부분 ORM은 DB에 비종속적임
사용하기는 편하지만 설계는 신중해야 함
프로젝트의 복잡성이 높아질 경우, 난이도가 높아짐
잘못 구현하는 경우 속저 저하 및 심한 경우, 일관성이 무너질 수도 있음
프로시저가 많은 시스템에서는 ORM의 객체 지향적인 장점을 활용하기 어려움
Flask: SQLAlchemy
Django: 내장 ORM
Node.js: Sequalize
Java: Hybernate, JPA
GraphQL: Prisma