Joomla 또는 처음부터 개발? [닫은]


9

경험이 거의없는 사람으로서 Joomla가 모든 요구 사항을 충족시킬 수 있다고 생각하는 이유를 알고 싶습니다. 처음부터 개발 (또는 Yii 또는 Kohana와 같은 프레임 워크를 사용)보다 선택하는 이유

Joomla를 사용할 때 직면하는 가장 일반적이거나 중요한 문제는 무엇입니까? 경험이 많지 않기 때문에 가장 큰 문제 중 하나는 유연성이라는 것입니다. 앱의 동작을 확장하거나 사용자 지정할 수 없으며, 가능하더라도 Joomla에서 규칙을 어기거나 다음 릴리스를 기다려야합니다. 이것이 사실입니까?.

현재 장기 프로젝트를 작성 중이며 특정 기능과 동작이 많이있을 수 있습니다. 처음부터 또는 일부 PHP 프레임 워크의 도움으로 빌드하고 싶습니다. 그러나 나는 많은 웹 사이트 (그리고 일부는 복잡성 측면에서 뛰어남) Joomla를 사용하는 것을 보았습니다. 이로 인해 올바른 기술을 선택하는 것에 대한 의문이 생겼습니다.

Joomla / other를 선택해야하는 한두 가지 궁극적 인 이유가 무엇인지 알고 싶습니다.


13
Joomla는 지금까지 작성된 가장 지저분한 코드 중 하나입니다. 프로그래머가 줌라 사이트에서 작업해야 할 때마다 새끼 고양이가 죽고 신들이 울고 있습니다. 사용하지 마십시오.
Upvote

5
하다. 아니. 사용하다. 줌라
blivet

답변:


13

웹 사이트 를 구축하는 경우 Joomla 및 기타와 같은 CMS를 사용할 수 있습니다 .
그러나 웹 응용 프로그램 을 작성하려는 경우 처음부터 새로 작성해야한다고 생각합니다. 이때 프레임 워크를 사용할 수 있습니다 .


2
웹 사이트와 웹 애플리케이션의 차이점을 알고 싶다면 programmers.stackexchange.com/questions/64535/…를 참조하십시오 . 실제로 나는 이것에 대답 한 후에 나 자신에게 질문을했다!
Gulshan

6

나는 종종 큰 세 CMS에 대해 질문을 받았으며 전혀 답을 얻지 못하고 전혀 사용하지 않은 것으로 느꼈습니다. 약 1.5 년 전에 갑자기 Joomla 1.5.x에 뛰어들 수밖에 없었습니다.

  • 소스를 읽는 것 이외의 다른 방법으로 Joomla 확장 개발을 배우지 마십시오. 그 규칙에서 벗어나면 많은 달이 사라질 것이라고 약속합니다.
  • Joomla는 많은 도움이되지 않습니다 (예, 1.7 이상, 1.5.x에 대해서만 이야기합니다). Joomla의 RAD 기능을 기대하지 마십시오. 실제로 모든 HTML을 직접, 양식, 표, 격자, 필터, 검색으로 작성합니다.
  • Joomla는 1 개의 관계형 ORM 유형 기능인 JModel의 canDelete 메소드를 사용하여 부울 "canDelete"를 리턴하기 위해 레코드를 점검 할 테이블을 구체적으로 알려줄 수 있습니다.
  • JxExtractor (제 생각에)를 사용하여 필요한 테이블 스키마 파일을 생성하거나 db 스키마 변경 후 테이블 파일을 수동으로 수정하십시오.
  • Joomla 1.5의 ACL은 거짓말입니다. 소스 코드를 읽으면 얻을 수 있습니다. 내가 한 번 필요할 때 거기에있을 것이라고 가정하고 약 한 달만 낭비했습니다.
  • 미덕. 오 소년 빨리, 오리! 아휴. 전화를 닫습니다.
  • 인생에서 JInstaller의 목적은 실패와 벅을 전달하는 것입니다. 그것은 실패를 일으키는 원인과 관련이없는 것들에 대해 불평하거나 적어도 내가 가진 여자 친구와 같이 비밀스러운 용어로 불평합니다. 그것은 결코 신뢰할 수 없으며 거짓말입니다. 당신이 어떤 신용을 빌려 주면 당신은 바보입니다!
  • 컨벤션을 통한 구성 또는 전체의 일반적인 불일치 GetVar(), get(), getValue(), getConfig(), getCfg(), getParam(). 무엇이든 추측하는 것을 잊어 버리십시오. 모든 것은 소스 / api를 보는 것이 필요합니다.
  • Joomla를 위해 빌드 할 최소한 4 가지 "방법"이 있으며, 공통점이 없습니다 com_weblinks. 구성 요소를 복사하면 고통을 덜 수 있습니다.
  • Joomla는 매우 드문 코드베이스입니다. 한편으로 나는 이것에 대해 좋아하지만 소스는 짧고 기능적입니다 (부적절하지만). 만약 당신이 프레임 워크에서 왔을 때, 프레임 워크가 제공하는 것과 같은 것을 기대하는 실수를 저 지르지 말고, 약 8 년 동안 시간을 ​​거슬러 가십시오.
  • 코드 생성기. 확장 디렉토리의 Jacc는 필수입니다.
  • 웹에서 많은 도움을 기대하지 마십시오. 아마도 지체가 있었지만 유용한 자습서 / 가이드 / 참조를 찾는 것이 시간 낭비라는 점에서 온라인으로 많은 점액이 존재하는 것으로 보입니다. 소스 코드 친구를 읽으십시오.
  • Joomla는 개발자를위한 문서화에 관심이 없습니다. 슬프게도 코드베이스가 너무 평범하기 때문에 결국 이해가됩니다.

어쨌든 이미 고급 도구에 익숙하거나 자살을 할 수 있고 Google지도에서 고정 된 것보다 10 곳이 높은 경우 Joomla CMS를 사용하지 마십시오.

Jomla 1.6 (1.7)은 이러한 짧은 몇 가지 개선 사항을 개선하지만 클라이언트 웹 스토어 (VM)를 1.7로 마이그레이션하는 것이 관대 한 꿈이기 때문에 문제가되지 않습니다.


4

Joomla에 대한 나의 의견 :

  • 기술적 지식 / 경험이 거의없는 사람들을위한 포인트 앤 클릭 CMS입니다.
  • 포인트 앤 클릭 타입 제품이기 때문에이 기능을 달성하기 위해서는 더 많은 오버 헤드가 필요합니다 (캐싱이 활성화 된 경우에도 속도가 느립니다).
  • 상당히 크므로 변경, 변경 또는 추가 작업을 수행하는 데 시간이 더 걸립니다.
  • Joomla를위한 훌륭한 플러그인 / 모듈이 있지만 잘못 작동하지 않지만 제대로 작동하지 않거나 너무 많은 일을 반쯤하려고 시도하는 톤이 있습니다.
  • 지속적으로 패치가 필요합니다. 월요일에 해킹이 발견되고 다음 날 패치가 나왔고 수요일에 고객 사이트 중 하나가 해킹당한 것을 기억합니다. 일주일에 한 번 (필요한 경우) 패치를 수행하고 매주 목요일에 패치를 수행 한 경우 고객과의 업그레이드 / 패치 정책이 있더라도이 경우 너무 늦었을 것입니다. 또한 패치 수와 클라이언트 수는 시간이 많이 걸릴 수 있습니다.
  • 글을 쓸 수있는 사람은 echo 'hello world';요즘 자신을 PHP 프로그래머라고 부릅니다. 줌라 (Jomla)는 비전문가가 적은 노력만으로도 괜찮은 웹 사이트를 만들 수있는 방법입니다 (포인트 앤 클릭, 기억).

장기 프로젝트의 경우 다음을 권장합니다.

  • 기본 기능 (예 : CodeIgniter ) 을 제공하기 위해 프레임 워크 사용
  • 초기에 너무 많은 부풀림이 길을 따라 내려 가기 어렵 기 때문에 코드베이스를 얇게 유지하십시오.
  • 프레임 워크를 사용하면 방향을 쉽게 변경하거나 더 빠르게 조정할 수 있습니다 (Jomla 용 플러그인이없는 경우 이미 원하는 작업을 수행하지 않으면 빌드해야 함)
  • 프레임 워크의 기본 사항을 알게되면 코드 안팎을 알게됩니다. 추가, 변경, 변경은 훨씬 간단하고 시간이 덜 걸립니다.
  • Joomla를 피하십시오. 특히 프로젝트를 진행하는 데 오랜 시간 동안 많은 시간을 소비하는 것으로 나타났습니다.

내 두 센트. 도움이 되길 바랍니다.


0

AFAIK Joomla는 CMS 입니다. 따라서 기본적으로 Drupal 및 Wordpress와 같은 다른 CMS와 경쟁합니다. Yii와 Kohana는 Zend, code-ignighter와 같은 옵션 이있는 프레임 워크 입니다. 이해를 돕기 위해 CMS는 웹 컨텐츠를 관리하기위한 API 및 확장 세트가 포함 된 애플리케이션이고 프레임 워크는 웹 애플리케이션을 작성하기 위해 필요에 맞게 조정할 수있는 코드 기반입니다. 따라서 프레임 워크를 사용하여 CMS를 만들 수 있습니다. 응용 프로그램 개발을 위해 CMS가 아닌 프레임 워크를 사용하는 것이 좋습니다. 프레임 워크 접근 방식을 사용하면 MVC와 같은 방법론을 익히고 데이터베이스 및 템플릿 관련 옵션을 제공 할 수 있다고 생각합니다.

추신 : 이것은 단지 내 이해입니다. Drupal과 Joomla는 매우 확장 가능하고 조정할 수 있다고 들었지만 사용하지 않았습니다. 몇 달 전, 나는 Yii를 살펴 보았으며 문서화가 쉽고 체계적으로 배우기 쉽다.


0

줌라 왜? CMS입니다. 주요 CMS 중 하나에서 제공하는 모듈 등으로 프로젝트의 요구를 충족시킬 수 있다면 훌륭합니다. 다음 질문은-필요한 경우 코드를 수정하여 코드를 변경할 수 있습니까? CMS 시스템이 주변을 둘러보고 다른 사람들이 Joomla와 경쟁하는 것을 확인하십시오.


0

다양한 프레임 워크가 어떻게 작동하는지 더 잘 이해하고 싶다면, 자체 프레임 워크를 개발하는 데 도움이 될 수 있습니다. 즉, 바퀴를 생산하는 방법은 너무 많기 때문에 이미 수행 한 작업을 얼마나 재발 명하고 싶습니까?

Wordpress 또는 Drupal과 같은 추가 기능이 모두 필요하지 않기 때문에 개인적으로 직접 개발했습니다. 즉, "CMS"는이를 사용하여 확장 할 수 없으므로 다른 사람들이 기여하기를 원한다면 문제가 있습니다.

내 개인적인 의견은 자신의 CMS를 개발하는 등 CakePHP의, CodeIgnitor, Modx 같은 프레임 워크를 사용하는 것입니다, 그리고 아마 그때 당신은 가능성이 원하는하지 않지만, 줌라 같은 마이그레이션 도로의 아래 ...

HTH.


0

지난 4 년 동안 joomla를 사용하고 있습니다. 다른 종류의 웹 사이트를 개발하기위한 프레임 워크로 사용했습니다. Joomla를 사용하는 것은 잘못된 것이 아닙니다. 사용자 지정 확장을위한 샌드 박스를 만들 수있는 확장 기능이 있으며 시간이 많이 단축됩니다. 수많은 확장 프로그램이 이미 무료로 제공됩니다. 그리고 당신은 매우 짧은 시간에 자신을 만들 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.