Joomla czy programowanie od zera? [Zamknięte]


9

Jako osoba, która ma bardzo małe doświadczenie, chciałbym wiedzieć, co sprawia, że ​​myślisz, że Joomla może spełnić wszystkie twoje wymagania ?. Co sprawia, że ​​wybierasz go od programowania od zera (lub przy użyciu frameworku takiego jak Yii lub Kohana).

Jakie są najczęstsze lub najważniejsze problemy, które napotykasz podczas korzystania z Joomla? Ponieważ nie mam w tym dużego doświadczenia, uważam, że jednym z największych problemów jest elastyczność. Nie możesz skalować ani dostosowywać zachowania aplikacji, a nawet jeśli możesz, musisz złamać jakąś regułę w Joomla lub poczekać na następną wersję. Czy to prawda?.

Obecnie buduję projekt długoterminowy, może być w nim wiele specyficznych funkcji i zachowań. Chciałbym zbudować go od zera lub z pomocą niektórych frameworków PHP. Ale widziałem tak wiele stron internetowych (a niektóre z nich są świetne pod względem złożoności) używają Joomla. To dało mi wątpliwości co do wyboru odpowiedniej technologii.

Chciałbym wiedzieć, czy istnieje jakikolwiek jeden lub dwa ostateczne powody, aby wybrać Joomla / other.


13
Joomla jest jednym z najbardziej niechlujnych fragmentów kodu, jaki kiedykolwiek napisano. Kocięta giną, a bogowie płaczą, gdy programista musi pracować na stronie Joomla. Nie używaj tego.
Kliknij Upvote

5
Zrobić. Nie. Posługiwać się. Joomla
blivet

Odpowiedzi:


13

Jeśli budujesz stronę internetową , możesz użyć CMS, takiego jak Joomla i inne.
Ale jeśli zamierzasz zbudować aplikację internetową , myślę, że powinna ona zostać zbudowana od podstaw. W tym momencie możesz użyć frameworka .


2
Aby poznać różnicę pomiędzy stronie internetowej i aplikacji internetowych, można See- programmers.stackexchange.com/questions/64535/... . Właściwie to sam zadałem pytanie po udzieleniu odpowiedzi!
Gulshan

6

Często pytano mnie o trzy wielkie CMS-y i czułem się źle, nie otrzymując żadnych odpowiedzi, ponieważ nigdy nie korzystałem z żadnego z nich. Do około 1,5 roku temu, kiedy nagle nie miałem wyboru, musiałem zanurzyć się w Joomla 1.5.x.

  • Zapomnij o nauce programowania rozszerzeń Joomla w jakikolwiek inny sposób niż czytanie źródła. Obiecuję, że jeśli odejdziesz od tej zasady, wiele księżyców zostanie utraconych.
  • Joomla niewiele ci pomaga (tak, jestem świadomy wersji 1.7+, tylko mówię o 1.5.x tutaj). Nie oczekuj od Joomla żadnych funkcji RAD, w rzeczywistości będziesz pisać ręcznie cały HTML, formularze, tabele, siatki, filtry, wyszukiwania, tak, wszystko.
  • Joomla ma 1 relacyjną zdolność typu ORM, metodę canDelete JModela, której można konkretnie powiedzieć, które tabele sprawdzają rekordy zwracające wartość logiczną „canDelete”, to wszystko, musisz ręcznie napisać wszystkie zapytania ORM.
  • Użyj JxExtractor (myślę), aby wygenerować wymagane pliki schematu tabeli lub ręcznie zmodyfikuj pliki tabeli po każdej zmianie schematu db.
  • Listy ACL Joomla 1.5 to kłamstwo, przeczytaj ten kod źródłowy, a dostaniesz go. Zmarnowałem tylko miesiąc, zakładając, że będą tam, gdy będę ich potrzebować.
  • VirtueMart. Och chłopcze, umm. Szybko, kaczka! Uff O mały włos.
  • Celem JInstallera w życiu jest porażka i rezygnacja, narzeka na rzeczy niezwiązane z tym, co powoduje awarię, a przynajmniej narzeka tak samo tajemniczo jak każda moja dziewczyna. NIGDY nie można ufać, to kłamstwo, jesteś głupcem, jeśli zaufasz temu!
  • Konfiguracja ponad konwencją lub po prostu ogólna niespójność w całym tekście. GetVar(), get(), getValue(), getConfig(), getCfg(), getParam(). Zapomnij o zgadywaniu czegokolwiek, wszystko wymaga spojrzenia na źródło / interfejs API.
  • Istnieją co najmniej 4 „sposoby” budowania dla Joomla i nie mają one ze sobą nic wspólnego, oszczędzaj sobie bólu i po prostu skopiuj com_weblinkskomponent.
  • Joomla to bardzo rzadka baza kodów. Z jednej strony podoba mi się to, jego źródło jest krótkie i funkcjonalne (choć nieudolne). Jeśli pochodzisz z frameworka, nie popełniaj błędu, oczekując czegoś takiego, co oferują frameworki, udawaj, że cofasz się w czasie o 8 lat, bo tak jest.
  • Generatory kodu. Koniecznie, Jacc w katalogu rozszerzeń jest całkiem niezły.
  • Nie oczekuj dużej pomocy ze strony internetowej, być może jestem opóźniony, ale wydaje się, że jest tak dużo cruft online dla Joomla, że ​​znalezienie przydatnych samouczków / przewodników / referencji to kolejna strata czasu, przeczytaj tego znajomego kodu źródłowego.
  • Joomla nie jest zainteresowana dokumentacją dla programistów, co niestety ma sens, ponieważ baza kodów jest tak prosta.

Podsumowując, nie używaj Joomla CMS, jeśli znasz już narzędzia wyższego rzędu, bo możesz popaść w samobójstwo i mieć 10 miejsc wystarczająco wysokich, by skakać z przypiętych map Google, tak jak ja.

Ps Joomla 1.6 (1.7) poprawia wiele z tych niedociągnięć, ale nie będzie to miało znaczenia, ponieważ migracja sklepów klienckich (VM) do 1.7 jest spełnieniem marzeń, bez względu na to, o ile błagam.


4

Moja opinia o Joomla:

  • To bardziej punkt i kliknij CMS dla osób z małą wiedzą techniczną / doświadczeniem.
  • Będąc produktem typu „wskaż i kliknij”, wymaga on większych kosztów, aby osiągnąć tę funkcjonalność (uważam, że jest powolny - nawet przy włączonym buforowaniu).
  • Ponieważ jest dość duży, wprowadzanie w nim zmian, zmian lub dodatków wymaga więcej czasu, niż powinny.
  • Nie zrozumcie mnie źle, są świetne wtyczki / moduły dla Joomla, ale są tony, które nie działają poprawnie lub próbują zrobić zbyt wiele rzeczy w połowie drogi.
  • Ciągle wymaga łatania. Pamiętam, jak pewnego razu w poniedziałek odkryto włamanie, następnego dnia pojawiła się łatka, a w środę włamano się do jednej z naszych witryn klienckich. Nawet gdybyśmy mieli zasady uaktualnień / poprawek u klienta, gdybyśmy robili łatki raz w tygodniu (w razie potrzeby) i były one robione w czwartki co tydzień, w tym przypadku byłoby za późno. Plus # razy łatek # klientów może być bardzo czasochłonne.
  • Każdy, kto potrafi pisać, echo 'hello world';nazywa się obecnie programistą PHP. Joomla to sposób dla nietechnicznych osób na tworzenie przyzwoicie wyglądających stron internetowych przy niewielkim wysiłku (wskaż i kliknij, pamiętaj).

W przypadku długoterminowego projektu polecam:

  • Korzystanie z frameworka w celu zapewnienia podstawowej funkcjonalności (np. CodeIgniter )
  • Utrzymuj bazę kodu szczupłą, ponieważ zbyt dużo wzdęć jest trudnych do spowolnienia w dół drogi.
  • Korzystanie z frameworka ułatwia także zmianę kierunku lub przyspieszenie dostosowań (jeśli nie ma wtyczki dla Joomla, która nie robi tego, co chcesz, będziesz musiał ją zbudować)
  • Kiedy poznasz podstawy frameworka, znasz swój kod wewnątrz i na zewnątrz. Dokonywanie dodawania, zmian, zmian jest znacznie prostsze i zajmuje znacznie mniej czasu.
  • Unikaj Joomla. Zwłaszcza w przypadku długofalowych projektów, które spędziłem dużo czasu.

Tylko moje dwa centy. Mam nadzieję, że to pomoże.


0

AFAIK Joomla to CMS . Zasadniczo konkuruje z innymi systemami CMS, takimi jak Drupal i Wordpress. Podczas gdy Yii i Kohana to frameworki, w których masz opcje takie jak Zend, a także ignorowanie kodu. W moim rozumieniu, CMS to aplikacja z zestawem API i rozszerzeniem do zarządzania zawartością sieci, podczas gdy A framework jest bazą kodu, którą można dostosować do naszych potrzeb w celu stworzenia aplikacji internetowej. Możesz więc stworzyć CMS z ramą. Poleciłbym wybrać raczej framework niż CMS do tworzenia aplikacji. Wierzę, że podejście ramowe pozwala zanurzyć się w metodologii, takiej jak MVC, a także daje opcje dotyczące bazy danych i szablonów.

PS To tylko moje zrozumienie. Słyszałem, że Drupal i Joomla są bardzo rozbudowywalne i dostrajalne, ale nie użyłem ich. Kilka miesięcy temu przyjrzałem się Yii i wydaje się, że jest to bardzo dobrze udokumentowane i łatwe do nauczenia się środowisko.


0

Dlaczego Joomla? To jest CMS. Jeśli możesz zaspokoić potrzeby swojego projektu za pomocą modułów itp. Dostępnych w jednym z głównych systemów CMS, to świetnie. Następne pytanie brzmi - czy możesz zmodyfikować kod, aby go zmienić, jeśli to konieczne. Jeśli chodzi o systemy CMS, rozejrzyj się i sprawdź, co inni konkurują z Joomla.


0

Jeśli chcesz lepiej zrozumieć, w jaki sposób działają różne frameworki, może pomóc w ich opracowaniu. Biorąc to pod uwagę, istnieje tylko tyle sposobów na wyprodukowanie koła, więc jak bardzo chcesz odkryć to, co już zostało zrobione?

Osobiście opracowałem swój własny, ponieważ nie potrzebowałem całej dodatkowej funkcjonalności, takiej jak Wordpress lub Drupal. To powiedziawszy, mój „CMS” nie skaluje się zbytnio z moją pomocą, więc mam kłopoty, jeśli chcę, aby inni wnieśli swój wkład.

Moim osobistym zdaniem jest użycie frameworka, takiego jak CakePHP, CodeIgnitor, Modx i in., Do opracowania własnego CMS, a następnie być może późniejszej migracji do czegoś takiego jak Joomla, ale do tego czasu prawdopodobnie nie będziesz chciał ...

HTH.


0

Używam Joomla od ostatnich 4 lat. Użyłem go jako ramy do tworzenia różnego rodzaju stron internetowych. Nie ma nic złego w korzystaniu z Joomla. Ma rozszerzenia do utworzenia piaskownicy dla niestandardowych rozszerzeń i znacznie skraca czas. Wiele rozszerzeń jest już dostępnych za darmo. I możesz stworzyć swój własny w bardzo krótkim czasie.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.