2010-02-24 4 views
0

복잡하고 불필요한 것처럼 보입니다. 직장이나 집에서 구축 한 애플리케이션은 ORM을 전혀 사용하지 않았으며 많은 객체가 객체 지향적이지 않았습니다. 그들이 유용 할 수있을 때 크기에 대해 영향을받지는 않습니까? 응용 프로그램이 유용 할 때 응용 프로그램의 크기를 결정하는 방법은 무엇입니까?객체 관계 맵퍼가 성배입니까?

+0

이 답변은 주관적이므로 커뮤니티 위키 질문으로 표시해야합니다. –

+0

이 주제에 대해 이미 질문이 있습니다. 검색하십시오. – Padmarag

+0

소프트웨어 개발 목표가 있습니까? 그것이 주관적이라고 생각하지 마십시오. – poo

답변

1

은탄 총알이 없다. 나는 당신이 그것을 많이 들었음에 틀림 없다고 확신합니다. 그러나 그것의 진실. ORM은 Object-Relational Impedance mismatch으로 인해 유용합니다.
ORM을 사용하면 프로그래밍 언어로 데이터베이스를 생각하거나 프로그래밍 할 수 있습니다.

+0

그래, 그게 가장 좋은 부분이야. 모든 것은 단순한 객체입니다. 더 이상 SQL 문자열 .. – poo

1

당신은 O/RM 필요 없지만, 어느 쪽도하지 않는 당신은 C#이나 C++와 같은 높은 수준의 프로그래밍 언어를 필요합니까, 당신은 단지 어셈블리를 사용하여 응용 프로그램을 작성할 수 있습니다. 그 좋은 옛날 ;-)

1

으로 ORMs 똑바로 위로 SQL 쿼리 실행을 통해 뚜렷한 장점이 있습니까 : 오래된 상태를 확인하기 위해

  • 저장/업데이트/전체 개체 그래프 개체의
  • 버전을 삭제를
  • 더 나은 코드의 유지 보수 및 컴파일 시간을 확인 (SQL 쿼리 마법 문자열)
  • 이 개체 모델에서 데이터베이스 스키마를 생성 할 수

  • 매핑이 날짜는 객체에 테이블을 매핑 비록
  • 으로 유지해야합니다 , 당신은 여전히 ​​알 필요가 설정 시간의 상당한 양을 필요 :

    그러나, 그들은 몇 가지 단점이 있습니까 (대량 작업을 수행 할 때 만 명백한)

전체

  • 스트레이트 업 SQL보다 느린 SQL은 학습과 ORM을 사용하는 이점은 지금까지 제 생각에 단점보다 큽니다.

  • 0

    Padmarag says과 마찬가지로 ORM은 은색 총알이 아닙니다. 당신은 상당히 복잡한 (객체 지향) 도메인 모델이있는 경우

    당신은 Object database를 사용하여 더 나을 수 있습니다.

    0

    요즘 ORM-Mapper는 RDBMS와 통신하는 방법입니다. 그러나 모든 응용 프로그램에서 RDBMS가 필요하지는 않습니다. 사용하기에 더 적합한 NoSQL-Solutions가 여러 개 있습니다.

    그러나 내가 ORM을 선호하지 않는 사용 사례가있다 : 일괄 처리보고 : 여기가 성능에 대한 질문 쿼리의 복잡성 또한 질문입니다. 이러한 시나리오에서는 저장 프로 시저를보다 적절하게 사용할 수 있습니다.