Witaj, Gościu O nas | Kontakt | Mapa
Wortal Forum PHPEdia.pl Planeta Kubek IRC Przetestuj się!
Wyszukiwarka

Wyszukiwarka

Aby odnaleźć interesujące Cię informacje wpisz poniżej szukane frazy:
Logowanie

Logowanie

Zaloguj się aby zobaczyć swój profil:

Porównanie popularnych framework'ów

Filozofia frameworka

Framework to dobrze przetestowany i udokumentowany zbiór bibliotek do obsługi często używanych funkcjonalności w tworzonych aplikacjach. Przykładami takich funkcjonalności (podsystemów) mogą być:

  • obsługa połączenia z bazą danych,
  • wysyłka maili (obsługa załączników, serwera pocztowego, etc.),
  • logowanie zdarzeń w systemie,
  • obsługa błędów, ....

Każdy framework ma swoją filozofię, według której jest napisany cały jego kod, i na której opiera swoje działanie. jakie zachodzi pomiędzy jego podsystemami.

Zasadniczą kwestią przy wyborze frameworka jest więc to jak bardzo filozofia frameworka pasuje do naszego doświadczenia programistycznego i założeń projektu do wykonania. Im mniej trzeba poświęcać czasu na naukę frameworka i na zrozumienie zamysłu jego autora (autorów) tym lepiej framework pasuje do naszych potrzeb.

Oczywiście od pewnej nauki programowania w danym frameworku nie uciekniemy. Jednak jeśli filozofia działania frameworka zamiast nam upraszać pracę bardziej nam przeszkadza i ogranicza to zdecydowanie należy framework zmienić. Jest duża szansa, że spokojnie znajdziemy framework, który będzie bardziej pasował do naszej dotychczasowej praktyki.

Framework to fundament aplikacji i powinien on być zgodny z naszym dotychczasowym doświadczeniem w podejściu do pisania aplikacji internetowych.

Tak więc nie można jednoznacznie wskazać najlepszego frameworka ponieważ każdy programista może mieć różne potrzeby lub różne doświadczenia.

Oczywiście w Internecie możemy znaleźć bardzo wiele lepszych i gorszych frameworków. Chociażby lista na stronach projektu WACT (http://www.phpwact.org/php/mvc_frameworks), która zawiera ponad 60 projektów.

Stosowane rozwiązania

Wśród dużych i znanych frameworków coraz wyraźniej kształtują się pewne filozofie programowania (skądinąd dobrze znane) takie jak:

Prawdziwe OOP (Object-Oriented Programming)

czyli jak najbardziej ścisłe wykorzystanie wszystkich dobrodziejstw obiektów w języku PHP5,

Model MVC (Model-View-Controller)

czyli wzorzec architektoniczny, którego założeniem jest podział aplikacji na 3 warstwy. Podział taki bardzo ułatwia pracę zespołową, pielęgnację powstałego kodu oraz przyspiesza tworzenie aplikacji,

Zastosowanie szablonów (Templating)

czyli użycie nieskomplikowanego języka do obsługi wyglądu,

Wykorzystanie ORM (Object-Relational Mapping)

czyli przedstawienie struktury i relacyjności bazy danych poprzez obiekty. Każda tabela i każdy rekord jest odpowiednią klasą i metodą w aplikacji. Ujednolica to programowanie kiedy piszemy całość w duchu OOP,

Stosowanie DAO (Data Access Object)

lub też inaczej Database Abstraction Layer czyli uniezależnienie się od konkretnego języka SQL dla danego DBMS.

Zalety

Zalety jakie niesie użycie dobrze znanego frameworka to na przykład:

  • naturalne unikanie powtarzania się w tworzonym kodzie; używamy bibliotek frameworka do wykonania standardowych czynności,
  • ograniczenie wystąpienia błędów wynikających np. z rutynowości; im bardziej znany framework tym większa wokół niego społeczność (dokumentacja, forum) co powinno przekładać się na odpowiednio dobrze sprawdzony i przetestowany kod,
  • uporządkowanie kodu aplikacji; mamy jasne reguły które rządzą naszymi źródłami i możliwe jest szybkie wdrożenie nowych programistów do projektu,

Kryteria

Kryteria jakie przykładowo można brać pod uwagę oceniając frameworki to:

  • wielkość pakietu w MB,
  • popularność frameworka w Internecie,
  • wielkość społeczności skupionej wokół projektu frameworka,
  • prędkość generowania przykładowej strony,
  • ilość klas (komponentów, helperów, modułów) w całym frameworku,
  • ... i wiele innych.
Informacje na podobny temat:
Wasze opinie
Wszystkie opinie uzytkowników: (8)
Ja bym jeszcze dodał...
Niedziela 05 Kwiecień 2009 9:48:48 pm - extreme

...niepoważny tytuł jak na poważny serwis. A raczej nieznajomość reguły wstawiania apostrofu...

nic nie wnosi
Czwartek 12 Marzec 2009 3:57:35 pm - zur887

ogólnie artykuł nic nowego nie wnosi - ot pare linków, wykresów i porównań.

Brak własnych testów poruszanych frameworków (pełnego zestawienia) - wiele by dało do myślenia na temat sprawności frameworków.

Zlepek i podsumowanie krążących treści w necie.

A gdzie reszta ;)
Piątek 06 Marzec 2009 5:40:56 pm - zulus <zulus_at_w3des.net>

"... i wiele innych." cóż to krótki spis który nadaje się np jako podsumowanie artu

Zachęcający wstęp i rozczarowujący koniec
Wtorek 03 Marzec 2009 11:54:32 pm - bigzbig

Wstęp naprawdę mnie zaciekawił jednak im dalej w las tym więcej statystyk, grafów, wykresów, z których tak naprawdę nic dla programisty nie wynika. Ciekawostka ot i tyle.

artykuł?
Wtorek 24 Luty 2009 10:47:35 am - kowalikus <kowalikus_at_gmail.com>

Troszke niepoważny artykuł, kilka linków i wypunktowań niestety nic nie wnoszących

Lipa :/
Poniedziałek 23 Luty 2009 3:54:43 pm - dream3r <dream3r_at_codeaddicted.com>

Przykre, ale jak na największy portal w Polsce traktujący o PHP nie postaliście się.

Pomijając wartość merytoryczną tego artykuły, czy ktokolwiek sprawdził przed jego opublikowaniem, jak treść jest wyświetlana w przeglądarce?
Prezentowane wykresy nie mieszczą się w kolumnie przeznaczonej na tekst. Tabele porównawcze warto by było jakoś sformatować, tak aby były bardziej czytelne.

Wygląda to tak, jakby ktoś zrobił CTRL+C i CTRL+V, nie zadając sobie trudu dopasowaniem treści do wyglądu portalu...

...
Niedziela 22 Luty 2009 10:17:38 pm - thomasc <tomek_at_poczta.rybnik.pl>

Racja!
Też sądziłem że z tego artykuły wyciągnę coś więcej. Od niedawna uczę się i używam Zend'a i bardzo mnie interesuje temat wydajności framework'ów w dużych projektach. Czy np w serwisach o dużej oglądalności (np powyżej 10 tyś uv) warto brać pod uwagę pisanie go w frameworku (tu w zend).
pozdrawiam

Szkoda tracic czas na ten art
Niedziela 22 Luty 2009 6:31:35 pm - seth

Artykul o niczym.

Autor przedstawia rozne benchmarki dodajac skromne podsumowanie, ktore tak naprawde nic nie wnosi i nic nie podsumowuje.

Spodziewalem sie szerszego podejscia do tematu niz tylko wrzucenie kilku obrazkow i tabel i konkretnej opinii dlaczego dany framework jest lepszy lub gorszy.
Ostatnia strona ktora powinna zbierac do kupy wszystkie dotychczasowe infromacje jest jakims laniem wody.

Podsumowujac: niczego z tego artykulu wartosciowego sie nie dowiedzialem. Nawet nie poznalem ktory framework jest wg. autora lepszy.

Mentax.pl    NQ.pl- serwery z dodatkiem świętego spokoju...   
O nas | Kontakt | Mapa serwisu
Copyright (c) 2003-2024 php.pl    Wszystkie prawa zastrzeżone    Powered by eZ publish Content Management System eZ publish Content Management System