* UWAGA: To nie jest pytanie „co jest lepsze”! *
Wordpress i Joomla! oba są niesamowitymi systemami CMS typu open source.
Jakie są kluczowe różnice
1) w architekturze oprogramowania między Joomla! i Wordpress?
2) w jaki sposób dokonywane są rozszerzenia podstawowej funkcjonalności (out-of-the-box)? i
3) W jaki sposób rdzeń i rozszerzenia są aktualizowane i aktualizowane?
Odpowiedzi:
Zarówno Wordpress, jak i Joomla! są wysoko cenione i każda z nich ma unikalne zalety, gdy je porównujesz.
Aby odpowiedzieć na twoje pytania:
w architekturze oprogramowania między Joomla! i Wordpress
Joomla to OOP (obiektowo) i MVC (obiektowo wzorzec projektowy).
Wordpress jest napisany w kodzie proceduralnym.
Programowanie proceduralne określa kroki, jakie program musi podjąć, aby osiągnąć pożądany stan, podczas gdy programowanie obiektowe („OOP”) organizuje programy w obiekty lub struktury danych i metody wraz z ich interakcjami.
W przypadku prostych programów kod proceduralny (pomyśl o sekwencji poleceń wiersz po wierszu) działa świetnie, ale w przypadku dużych złożonych aplikacji kod proceduralny może być trudniejszy w utrzymaniu - często skutkując tak zwanym kodem spaghetti (tj. Gdy wiersz po -liniowa sekwencja poleceń zaczyna używać wielu GOTO, wyjątków, wątków lub innych rozgałęzionych konstrukcji, a jej przepływ staje się koncepcyjnie jak miska spaghetti). Innymi słowy, kod proceduralny zaczyna się od prostej, ale może stać się złożony i splątany.
Bardziej złożone aplikacje można zatem lepiej ustrukturyzować za pomocą OOP i MVC - bardziej zaawansowanego stylu programowania, który znacznie lepiej nadaje się do tworzenia naprawdę złożonych programów z dużą ilością ruchomych części.
Podczas gdy kod proceduralny może początkowo być łatwiejszy do napisania i utrzymania dla prostych programów, OOP ma zalety, ponieważ może starannie łączyć kolekcje zmiennych (zwane „właściwościami” w OOP) w pakiety (zwane „metodami” w OOP) w pakiety - w wyniku czego kod, który jest bardziej uporządkowany, łatwiejszy do odczytania, utrzymania i rozszerzenia.
W przypadku większości aplikacji Wordpress (np. Prostych blogów) kod proceduralny działa doskonale.
W przypadku bardziej złożonych aplikacji (np. Wymagających uprawnień grup użytkowników i tych, które używają wielu integrują wiele rozszerzeń w celu rozszerzenia funkcji i funkcji), OOP jest ogólnie uważane za znacznie bardziej eleganckie podejście.
Podsumowując:
Architektura oprogramowania Worpress (oparta na kodzie proceduralnym) ma swoje zalety w prostocie, ale kod proceduralny nie jest idealny do złożonych aplikacji, które cechują się niezawodnością.
Joomla! Oprogramowanie architektura (OOP / MVC) może wydawać się bardziej skomplikowane, ale jeśli dobrze zaprojektowany, OOP / MVC rzeczywiście sprawia, że znacznie prostsze rozszerzyć możliwości i funkcji danej aplikacji użytkownika i mieć wszystkie te rozszerzenia współpracować harmonijnie.
Jeśli chcesz zrozumieć różnice (na podstawowym poziomie dla początkujących), przeczytaj Proceduralne PHP vs PHP OO vs PHP MVC autorstwa Peham Raza - omawia „tajniki” każdego z nich w sposób, który ułatwia lepsze zrozumienie korzyści.
w jaki sposób tworzone są rozszerzenia podstawowej funkcjonalności („po wyjęciu z pudełka”)?
W jaki sposób jądro i rozszerzenia są aktualizowane i aktualizowane
Mówi się, że Wordpress to nie CMS, ale teraz jest to CMS ze wszystkimi funkcjami Joomla i nie tylko.
WordPress jest dobry dla użytkowników, którzy mają mniejszą wiedzę na temat programowania, a Joomla dla programistów.
Mam nadzieję, że to ma sens.
źródło
Myślę, że aby naprawdę odpowiedzieć na to pytanie, musisz dokładnie zapoznać się zarówno z WP, jak i Joomla !. Jestem Joomla! ciężki i użyłem WP tylko kilka razy, więc moja odpowiedź może nie być tak pełna, jak można się spodziewać.
WP to przede wszystkim platforma blogowa. Jest skonfigurowany dla kanałów danych. Musisz zrobić wszystko, aby przejść obok domyślnego kanału, aby uzyskać zwykłą statyczną stronę główną. To nie jest trudne, po prostu nie jest domyślne. Jeśli wiesz, co robisz, możesz rozwinąć WP, aby wyjść poza platformę blogów lub pobrać szablon, który już to zrobił.
Joomla to przede wszystkim CMS. Został zbudowany, aby pomieścić pełną stronę internetową, w tym blogowanie, prosto z podstawy. Wtyczki pomagają, mogą zapewnić ci bardziej spersonalizowane wrażenia dla tych, którzy nie wiedzą, jak tworzyć własne komponenty i wtyczki. W końcu po co wymyślać koło?
Z mojego doświadczenia wynika, że WP jest świetny dla osób, które nie są programistami lub wiedzą tylko tyle. Z drugiej strony Joomla została stworzona dla programistów, dla osób, które chcą stworzyć w pełni spersonalizowane interfejsy użytkownika i zaplecza. Spędziłem godziny pracując nad szablonem WP, aby zmusić go do robienia tego, co chciałem, co było frustrujące, gdy przyzwyczaiłem się do budowania rzeczy tak, jak chcę za pierwszym razem z Joomla (nie używamy szablonów - mamy własne rdzeń Joomla, który jest rozebrany do podstaw, a my budujemy od podstaw).
Jeśli podciągniesz FTP WP i Joomla obok siebie, zobaczysz, jak bardzo się różnią.
WP ma ten obszar wtyczek, w którym możesz wyszukiwać wtyczki, wybierać i instalować. Wierzę, że możesz także aktualizować z tego samego miejsca. Gdy jesteś w obszarze wtyczek, często powie ci, że aktualizacja jest dostępna.
Joomla używa Extension Managera, do którego możesz wgrać pobraną wtyczkę lub komponent - myślę, że może istnieć funkcja wyszukiwania, ale szczerze mówiąc nigdy jej nie użyłem, ponieważ zwykle używam JED, aby znaleźć to, czego potrzebuję. W tym samym obszarze znajduje się również przycisk aktualizacji, w którym możesz zobaczyć wszystkie dostępne aktualizacje tego, co zainstalowałeś. Ponownie, niektóre składniki powiedzą, że mają dostępną aktualizację, ale nie wszystkie.
Najważniejszą różnicą, którą widzę, jest to, że WP jest dla użytkowników - instalują szablon, mogą aktualizować, mogą dodawać, Joomla jest dla programistów, wykonujemy instalację, aktualizujemy, budujemy / dodajemy nowe funkcje i funkcje. Nie oznacza to, że nie jest przyjazny dla użytkownika, ale są obszary, które moim zdaniem zostały zepchnięte na bok, ponieważ zostały stworzone dla programistów.
źródło
Kiedy mówisz o architekturze, ma to znaczenie, gdy budujesz portal lub złożoną stronę internetową, tj. Wiele powiązanych ze sobą podmiotów.
Jako programista C i C ++, kiedy adoptowałem joomla, podobało mi się, ponieważ używa tego samego zestawu standardów, a nie funkcji psujących globalną przestrzeń nazw.
źródło