ORM이 뭔가요?

iseulgi·2022년 6월 3일
0

ORM이 뭔가요?

서버(객체지향)에서는 클래스 개념을 사용하고 디비에서는 테이블 개념을 사용한다. 그렇다면 어떻게 서버에서 데이터베이스를 조작할 수 있을까?

ORM은 객체 관계에서 SQL문을 만들어내는 역할을 한다. 그래서 서버에서 데이터베이스를 다룰 수 있게 된다.

java의 JPA, Hibernate javascript의 typeORM 등이 ORM에 속한다.

장점

재사용성

ORM은 원래 객체와 독립적!으로 작성된 객체기 때문에 재사용이 가능하고 유지보수 효율이 좋다.

생산성 증가

원래는 객체 지향적 방식 + SQL 중심의 절차적, 순차적 접근 방식 의 혼합된 방식이 필요했는데 ORM을 사용해서 그럴 필요가 없고 객체 지향적 방식으로만 집중할 수 있다.

또한 ORM은 구현, 자료형 등에 있어서 데이터베이스에 종속적이지 않다. 즉, 개발자는 객체에만 집중 할 수 있고 DBMS 수정 작업 비용도 줄어들게 된다.

단점

완벽하지 않다

자주 사용하는 대형 쿼리의 경우는 직접 SQL문을 써주는게 더 빠른 경우도 있다. (다양한 join이 필요한 경우.. ORM은 기본적으로 outer join을 사용한다. 모든 정보가 있지만 가장 비효율적인!)

마치며

서버 개발 할 때 ORM을 사용할 줄 아는것은 중요하다! 하지만 그렇다고 SQL문을 모르는 건 안된다.

profile
공부하면서 배운 것들을 정리하는 블로그입니다

0개의 댓글