Joomla или разработка с нуля? [закрыто]


9

Как человек, у которого очень мало опыта в этом, я хотел бы знать, что заставляет вас думать, что Joomla может выполнить все ваши требования ?. Что заставляет вас выбирать его вместо разработки с нуля (или с использованием фреймворка, такого как Yii или Kohana).

С какой наиболее распространенной или критической проблемой вы сталкиваетесь при использовании Joomla? Поскольку у меня нет большого опыта в этом, я бы сказал, что одной из самых больших проблем является гибкость. Вы не можете масштабировать или настраивать поведение своего приложения, и даже если вы можете, вам нужно нарушить какое-то правило в Joomla или дождаться следующего релиза. Это правда?.

В настоящее время я строю долгосрочный проект, в нем может быть много специфических функций и поведения. Я хотел бы построить его с нуля или с помощью некоторых фреймворков PHP. Но я видел, что многие сайты (и некоторые из них великолепны по сложности) используют Joomla. Это дало мне некоторые сомнения в выборе правильной технологии.

Я хотел бы знать, есть ли одна, две или две конечные причины выбрать Joomla / другое.


13
Joomla - один из самых грязных кусков кода, когда-либо написанных. Котята умирают, а боги плачут всякий раз, когда программисту приходится работать на сайте Joomla. Не используйте это.
Нажмите Upvote

5
Делать. Не. Использование. Joomla
Blivet

Ответы:


13

Если вы создаете сайт, вы можете использовать CMS такие как Joomla и другие.
Но если вы собираетесь создавать веб-приложение , я думаю, что оно должно быть создано с нуля. В это время вы можете использовать фреймворк .


2
Чтобы узнать разницу между веб-сайтом и веб-приложением, вы можете посмотреть: - programmers.stackexchange.com/questions/64535/… . На самом деле я сам задал вопрос после ответа на это!
Гюльшан

6

Меня часто спрашивали о большой тройке CMS, и я чувствовал себя плохо, не имея ответов, никогда не использовал ни одного из них вообще. Примерно 1,5 года назад, когда у меня вдруг не было выбора, кроме как погрузиться в Joomla 1.5.x.

  • Забудьте о разработке расширений Joomla любым другим способом, кроме чтения исходного кода. Обещаю, если вы отклонитесь от этого правила, тогда многие луны будут потеряны.
  • Joomla не сильно вам помогает (да, я знаю о 1.7+, здесь я говорю только о 1.5.x). Не ждите от Joomla каких-либо возможностей RAD, на самом деле вы будете писать весь HTML-код от руки, формы, таблицы, таблицы, фильтры, поиски, да все это.
  • У Joomla есть 1 способность к реляционному типу ORM, метод canDelete от JModel, в котором конкретно указывается, какие таблицы проверять на наличие записей, возвращающих логический «canDelete», вот и все, вам придется писать все ваши запросы ORM вручную.
  • Используйте JxExtractor (я думаю), чтобы сгенерировать необходимые файлы схемы таблицы или вручную изменить файлы таблицы после любого изменения схемы БД.
  • ACL в Joomla 1.5 - ложь, прочитайте этот исходный код, и вы его получите. Только потратил около месяца, предполагая, что они будут там, когда я буду нуждаться в них.
  • VirtueMart. Ох, мальчик Быстро, утка! Уф. На волосок от.
  • Целью JInstaller в жизни является провал и перекладывание долга, он жалуется на вещи, не связанные с причиной сбоя, или, по крайней мере, жалуется на такие же загадочные слова, как любая моя девушка. Это никогда не заслуживает доверия, это ложь, вы дурак, если вы оказываете ему доверие!
  • Конфигурация по соглашению или просто общее несоответствие. GetVar(), get(), getValue(), getConfig(), getCfg(), getParam(). Забудьте о том, чтобы угадывать что-либо, все, что требуется, нужно смотреть на источник / API.
  • Есть как минимум 4 «способа» сборки для Joomla, и они не имеют ничего общего, избавьте себя от боли, просто скопировав com_weblinksкомпонент.
  • Joomla - очень редкая кодовая база. С одной стороны, мне это нравится, его источник короткий и функциональный (хотя и неумелый). Если вы пришли из фреймворка, не делайте ошибку, ожидая чего-то похожего на то, что предлагают фреймворки, представьте, что вы возвращаетесь назад во времени примерно на 8 лет, потому что вы есть.
  • Генераторы кода. Обязательно, Jacc в каталоге расширений довольно хорош.
  • Не ожидайте большой помощи от Интернета, может быть, я отсталый, но кажется, что для joomla в Интернете есть такой объем козней, что поиск полезных руководств / руководств / ссылок - просто еще одна трата времени, прочитайте этого друга по исходному коду.
  • Joomla не заинтересована в документации для разработчиков, что, к сожалению, имеет смысл в конце, так как кодовая база очень проста.

В общем, не используйте Joomla CMS, если вы уже знакомы с инструментами более высокого порядка, или вы можете совершить самоубийство и иметь 10 мест достаточно высоко, чтобы прыгать с закрепленных на картах Google, как я.

Ps Joomla 1.6 (1.7) улучшает многие из этих недостатков, но это не будет иметь значения, потому что перевод клиентских веб-магазинов (ВМ) на 1.7 - несбыточная мечта, как бы я ни просил.


4

Мое мнение о Joomla:

  • Это больше пункт и нажмите CMS для людей с небольшими техническими знаниями / опытом.
  • Будучи продуктом типа «укажи и щелкни», для достижения этой функциональности требуются дополнительные затраты (я считаю, что это медленно - даже с включенным кэшированием).
  • Поскольку он довольно большой, внесение в него изменений, изменений или дополнений, которые я нахожу, занимают больше времени, чем должны.
  • Не поймите меня неправильно, есть несколько отличных плагинов / модулей для Joomla, однако есть тонна, которая не работает должным образом или пытается сделать слишком много вещей на полпути.
  • Постоянно нуждается в исправлении. Я помню, как однажды в понедельник был обнаружен взлом, на следующий день вышел патч, и в среду был взломан один из сайтов наших клиентов. Даже если бы у нас была политика обновления / исправления с заказчиком, если мы делали исправления один раз в неделю (при необходимости), и они делались по четвергам каждую неделю, мы бы опоздали в этом случае. Плюс количество исправлений клиентов может быть очень трудоемким.
  • Любой, кто может писать, echo 'hello world';называет себя программистом php в эти дни. Joomla - это способ для нетехнических людей создавать прилично выглядящие веб-сайты без особых усилий (указывайте и нажимайте, помните).

Для долгосрочного проекта я бы порекомендовал:

  • Использование фреймворка для предоставления основных функций (например, CodeIgniter )
  • Сохраняйте свою базу кода постной, так как слишком много раздувания на ранних этапах трудно сократить в будущем.
  • Использование фреймворка также облегчает изменение направления или внесение корректировок быстрее (если для Joomla нет плагина, который еще не делает то, что вы хотите, вам придется его построить)
  • Как только вы узнаете основы фреймворка, вы узнаете свой код внутри и снаружи. Внесение дополнений, изменений, изменений намного проще и занимает гораздо меньше времени.
  • Избегайте Joomla. Специально для долгосрочных проектов я нашел, что есть много времени.

Просто мои два цента. Надеюсь, поможет.


0

AFAIK Joomla - это CMS . Так что в основном он конкурирует с другими CMS, такими как Drupal и Wordpress. В то время как Yii и Kohana - это фреймворки, в которых есть такие опции, как Zend, также и Code-ignighter. Насколько я понимаю, CMS - это приложение с набором API и расширений для управления контентом в Интернете, а Framework - это база кода, которую можно настроить в соответствии с нашими потребностями для создания веб-приложения. Итак, вы можете создать CMS с фреймворком. Я бы порекомендовал пойти за рамки, а не CMS для разработки приложений. Я полагаю, что подход на основе фреймворков позволяет вам погрузиться в методологию, такую ​​как MVC, а также дает вам варианты в отношении базы данных и шаблонов.

PS Это только мое понимание. Я слышал, что Drupal и Joomla являются очень расширяемыми и настраиваемыми, но я не использовал их. Несколько месяцев назад я посмотрел на Yii, и он кажется очень хорошо документированным и легким в освоении фреймворком.


0

Почему Joomla? Это CMS. Если вы можете покрыть потребности вашего проекта с помощью модулей и т.д., доступных из одной из основных CMS, то отлично. Следующий вопрос - можете ли вы изменить код, чтобы изменить его при необходимости. Что касается систем CMS, посмотрите вокруг и посмотрите, что другие конкурируют с Joomla.


0

Если вы хотите лучше понять, как функционируют различные фреймворки, это может помочь в разработке ваших собственных. При этом существует только так много способов производства колеса, так как сильно вы хотите заново изобрести то, что уже сделано?

Я лично разработал свою собственную просто потому, что мне не нужны были все дополнительные функции, такие как Wordpress или Drupal. Тем не менее, моя «CMS» не сможет масштабироваться после того, как я ее использую, поэтому у меня проблемы, если я хочу, чтобы другие люди внесли свой вклад.

Мое личное мнение состоит в том, чтобы использовать такую ​​инфраструктуру, как CakePHP, CodeIgnitor, Modx и др., Для разработки собственной CMS, а затем, возможно , в будущем перейти на что-то вроде Joomla, хотя к тому времени вы, вероятно, не захотите ...

НТН.


0

Я использую Joomla с последних 4 лет. Я использовал его в качестве основы для разработки различных видов веб-сайтов. Нет ничего плохого в том, чтобы использовать Joomla. Он имеет расширения для создания песочницы для пользовательских расширений и значительно сокращает время. Многочисленные расширения уже доступны для бесплатного использования. И вы можете создать свой собственный в очень короткие сроки.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.