0

나는 웹 기반 응용 프로그램에서 zend 프레임 워크를 사용하여 대부분 작업했습니다. PHP 코드의 모든 데이터에 대해 데이터베이스를 모델링하는 데 많은 시간이 걸리는 것으로 나타났습니다. 다른 말로하면 데이터에 대해 모든 것을 두 번해야합니다.웹 응용 프로그램을위한 데이터베이스 디자인의 대안

데이터베이스 및 테이블 구조를 손으로 설계 할 수있는 대안이 있습니까?

저는 데이터베이스를 만들고 PHP 프로그래밍 로직에서 데이터베이스로 구조를 매핑하는 것에 관심이 있습니다.

+1

당신이 ORM이라고 찾고 : http://stackoverflow.com/questions/108699/good-php-orm-library주의 할 – David

+0

한 가지는 것은 모든 일을 "당신이 필요하지 않은 것입니다 두번." 객체 모델링과 데이터 지속성은 두 가지 다른 점입니다. 하나는 비즈니스 논리를 나타내며 동작중인 정보로 처리하고, 다른 하나는 나머지 데이터를 유지하고 유지합니다. 객체 지향 설계와 관계형 데이터 설계에는 근본적인 차이점이 있으며, 다른 하나의 패러다임과 구조에 맞게 설계하면 설계가 제한됩니다. 그러나 모델이 단순한 양식이라면 데이터를 양식으로 작성하기에 알맞은 프레임 워크가 많은 작업을 수행 할 것입니다. – David

답변

1

아, Object Relational Mapper을 찾고 있습니다. 이것은 오늘날 많은 유형의 웹 응용 프로그램에서 일반적입니다.

PHP에 관해서

, 내가 건너 온 것 중에 최고 중 하나는 Doctrine입니다 : 강력한 데이터베이스 추상화 계층 (DBAL)의 꼭대기에 앉아 PHP에 대한

객체 관계형 매퍼 (ORM). 주요 기능 중 하나는 Hibernate HQL에서 영감을 얻은 DQL (Doctrine Query Language)이라는 독점적 객체 지향 SQL 언어에서 데이터베이스 쿼리를 작성하는 옵션입니다. 이를 통해 개발자는 불필요한 코드 중복을 필요로하지 않고도 유연성을 유지하는 강력한 SQL 대안을 얻을 수 있습니다.

+0

멋지다! ORM이 예를 들어 처리합니까? 테이블과 그 구조를 개발하는 동안 그 자체만으로도 만들 수 있습니다. – danijar

+0

@sharethis 일부는 그렇습니다. Doctrine은 기존 데이터베이스에서 객체 클래스를 생성 할 수 있으며 데이터베이스를 변경하면 변경 사항은 Doctrine에서 인식하므로 추가 매핑이 필요하지 않습니다. – mattytommo

+0

감사합니다. 지금 교리를 연구 할 것입니다. – danijar

관련 문제