문제

Drupal은 "모든 작업을 수행하는" CMS입니다.거의 모든 기능을 추가할 수 있는 모듈이 있는데, 정말 좋습니다.그러나 많은 기능(v5 및 v6)이 흩어져 있고 사용자에게 직관적이지 않은 것처럼 느껴집니다.개발자로서 풍선껌과 끈을 이용해 사이트를 하나로 합친 듯한 느낌이 듭니다.

예를 들어 기본 검색 상자(클릭하면 사라짐)에 텍스트를 추가하려면 일부 jQuery 코드를 추가하거나 테마를 재정의해야 합니다.또한 메뉴 시스템이 예상보다 더 복잡하다는 것을 알았습니다.

이런 의견을 갖고 있는 사람은 나뿐인가?Drupal의 핵심에서 어떤 부분을 바꾸시겠습니까?

도움이 되었습니까?

해결책

진정한 객체 지향 디자인의 부족은 다른 개발자의 예측에 종종 "후크"기능을 떠나 특정 행동을 바꿀 수 있도록 자주 의존해야한다는 것을 의미합니다.

Drupal 5를 사용하면 비교적 간단한 디자인 변경을 완료하는 유일한 방법은 Drupal 자체를 패치하는 것입니다 (그리고 각각의 새로운 공식 Drupal 릴리스와 함께 패치를 다시 적용해야합니다). 그러나 공정하게 말하면, 당신은 Drupal 4에서 그것이 얼마나 나쁜지를 보았을 것입니다.

또한 현재 프로덕션 버전의 Drupal 버전에서 버그 또는 기발한 시간을 식별하는 데 시간이 걸리면 패치를 제출하며 기본적으로 보안 버그 만 현재 안정적인 릴리스에서 고정되어 패치가 커밋되지 않습니다.

다른 팁

나에게 드 루팔의 가장 큰 단점은 라이브 드 루팔 사이트의 많은 부분이 데이터베이스에 저장된다는 것입니다. 시스템 간 컨텐츠 또는 구성을 자동화하는 방법이 없으므로 라이브 사이트로의 변경 사항을 수동으로 수행하거나 과도하게 복잡한 코드로 처리해야합니다.

Drupal의 가장 큰 단점 중 하나는 비 프로그래머 사이트 빌더를위한 턴키 도구와 복잡한 WebApps를 구축하는 개발자를위한 프레임 워크 사이의 경계선에서 춤을 추는 것입니다. 그것은 두 그룹을 모두 제공 할 수있는 멋진 것들이 있지만, 한 군중에 대한 양보는 항상 다른 군중을 뛰어 넘는 경향이 있습니다.

Drupal 커뮤니티의 증가하는 추세는 개발자 API를 명시 적으로 구축 한 다음 API 위에 계층 관리 UI 및 최종 사용자 UI를 구축하는 것입니다. 이것은 좋은 일이지만 여전히 많은 레거시 아키텍처가 있습니다. 이 프로젝트는 이번 주 8 세가되었으며 모든 사이트에는 다른 속도로 진화하는 모듈이 혼합되어 있습니다.

누군가가 원하는 작업을 수행하는 모듈을 아직 구축하지 않은 경우 핵심 코드를 해킹하지 않고 시스템을 효과적으로 활용하려면 다양한 내부 API, 고유 한 데이터 구조가 많이 필요하며 때때로 펑키 한 연구를해야합니다. 워크 플로. 까다로운 일을해야하고 일을 할 수있는 "올바른"방법을 연구 할 수있는 전문 지식 (또는 시간)이 없었던 사람들의 결과로 사이트를 유지하기가 매우 나쁘고 불가능한 곳이 떠 다니고 있습니다.

(면책 조항 : 방금 Drupal에 관한 책을 위해 몇 장의 장을 공동 저술했는데 Drupal 일을 풀 타임으로 일하고 있습니다. 나는 관점을 유지한다. 나도 심장도.)

Drupal은 상자 밖으로 나가는 길의 80%를 얻을 수 있지만 지난 20%는 몇 달과 몇 달이 걸립니다.

Drupal은 인상적인 시스템입니다. 놀랍게도 작고 모든 것이 작으며 모듈 시스템은 매우 강력합니다. 그러나 Eli가 말했듯이, 많은 작업이 특정 방식으로 무언가를하는 다른 개발자에게 의존 할 것입니다.

Drupal 커뮤니티 내에는 디자인에 대한 논쟁이 있습니다. Drupal은 PHP의 OOP 기능이 강력하기 전에 주변에 있었지만 이제는 객체 지향 데이터 구조를 사용하도록 시스템을 변경하는 것에 대한 논의가 자주 있습니다. 당신의 취향에 따라, 이것은 개발자로서 당신에게 단점이 될 수 있습니다. 나는 그것에 대해 두 가지 마음을 가지고 있습니다.

이 시스템은 또한 새로운 이민자들에게 매우 "마법적인"것처럼 보일 수 있습니다. 어쨌든 그것은 거의 설명하지 않고이 미친 것들을 모두 수행한다는 것입니다. "나는 단지 기능을 정의했다. Drupal은 어떻게 그것을 부르는 방법을 알고 있습니까?!"

그러나 나는 일반적으로 Drupal의 열렬한 팬이라고 말해야합니다. 각 주요 버전마다 더 잘로드되는 좋은 시스템입니다. 나는 7을 기다릴 수 없다.

Drupal은 시작하는 것이 좋지만 실제로 일을 끝내는 것보다 더 많은 시간을 취소하는 데 더 많은 시간을 소비합니다. 이것은 특히 Drupal 6의 출시로 인해 변화하고 있으며 공평하게 기여한 모듈에서 더 분명합니다.

Sean이 말한 것처럼 마이그레이션 관리도 문제가됩니다. 나는 여전히 DEV 사이트에서 라이브 사이트로 변경하는 좋은 방법을 모른다.

나는 현재 핵심에서 내가 변화 할 것이 있는지 확신하지 못하고 대부분의 결함이 진행되고있다. 이미지 관리가 필요하고, 기본 관리자 인터페이스는 약간 혼란스러워서 뷰/패널 등을 얻지 않고 더 복잡한 레이아웃을 만들 수 있습니다. 관련된 작업을 사용할 수 있습니다.

나는 그것이 끔찍하게 복잡하다는 것을 안다. PHP 개발자로서 IM은 PHP와 관련이 없지만 Drupal 자체와 관련이없는 문제에 대해 매일 머리카락을 찢어 버립니다. 어떻게 / 왜 / 언제 X를 수행합니까? 길들여야 할 큰 짐승. 문서는 몇 가지 아주 좋은 가이드, 많은 칙칙한 가이드, 그리고 Google에서 항상 나타나는 것처럼 보이는 더 쓸모없는 포럼 스레드로 제한됩니다.

백엔드의 유용성은 쓰레기입니다. 사용자 정의 테마는 또한 패키지의 "admin"부분의 레이아웃을 변경하여 극도로 실망 스러울 수 있으며 예쁜 레이아웃보다 적습니다.

HTML 슬라이서와 함께 작업하는 경우 Drupal을 위해 특별히 만들어지지 않은 HTML을 사용하는 것은 불가능합니다. DIV가 많은 DIVS, DIV 당 5 개의 장점 클래스 등과 함께 Drupal-HTML을 사용하도록 강요합니다.

나는 그것이 테마를 만들기 위해 파일 이름에 의존하는 방식 (10 단어 길이, 미묘한 차이)에 의존하는 방식을 좋아하지 않습니다.

그러나, 그것이 할 수있는 일 중 일부는 매우 시원하며 맞춤형 PHP 개발의 며칠과 며칠을 절약합니다.

Drupal은 비 프로그래머에게 강력한 도구를 제공하며 시간이 적은 시간으로 전체 기능 사이트를 쉽게 구축 할 수 있습니다. 그러나 문제는 학습 곡선이 Drupal에 비해 너무 높다는 것입니다.

사람이 Drupal을 처음 접하고 맞춤화 된 것을 만들고 싶다면 올바른 방식으로하고 싶다면 많은 시간이 걸릴 것입니다. Drupal에서 한 가지 일을하는 방법에는 여러 가지가 있습니다. 새로운 Comer에게 가장 적합한 것이 어느 것이 가장 적합한 지 알아냅니다.

대부분의 회사가 좋은 드 루팔 인재를 찾는 데 어려움을 겪고있는 유일한 학습 곡선이라고 생각합니다. http://drupize.me/ 그리고 http://buildamodule.com/ 이 높은 학습 곡선을 줄이기 위해 아주 좋은 일을하고 있습니다.

기본 관리자 인터페이스는 MODX 또는 Joomla/Mambo와 같은 다른 CMS와 비교하여 직관적이지 않다는 것을 알았습니다.

PHP4로 작성되었습니다.버전 7부터 변경됩니다.물론 php5에서 자신만의 모듈을 작성할 수도 있습니다.노련한 Drupal 개발자로서 저는 php5에 대한 제한된 노출로 인해 이력서가 어려움을 겪고 있음을 발견했습니다.

SOAP와 같은 서비스를 실행하는 데는 최고가 아닙니다.웹 서비스를 제공하기 위해 전체 Drupal 스택을 호출하는 것은 성능 저하를 너무 많이 초래합니다.서비스 모듈은 아직 개발 중입니다.

데이터베이스 트랜잭션을 지원하지 않습니다.이는 극한의 부하로 확장할 때 문제가 됩니다.

명령줄에서 테스트를 실행하는 것이 좋습니다.이는 simpletest 1.x에서는 가능했지만 현재 버전에서는 이를 잘 지원하지 않습니다.Simpletest는 충분히 성숙하지 않았습니다.Drupal을 새로 설치하면 테스트에 실패할 수 있습니다.기본적으로 포함된 테스트 중 일부는 필요하지 않은 콘텐츠 유형과 모듈을 사용하도록 강제하며, simpletest 모듈을 해킹하지 않고는 이러한 테스트를 비활성화할 수 없습니다.

보안 기록이 나쁜 것처럼 보입니다. http://secunia.com/advisories/search/?search=drupal

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top