Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inny]czy warto używać FW w małych projektach?
Forum PHP.pl > Forum > PHP > Frameworki
grzestra
Cześć wszystkim.

Potrzebuję porady fachowców. Utrzymuje się z pisania raczej prostych stron dla firm. Nic specjalnego, kilka czasem kilkadziesiąt podstron. Piszę w PHP5 (bez OOP) i MYSQL. Do tego robię też HTML, CSS i JAVASCRIPT. Pytanko jest takie, czy warto przechodzić na jakiś FRAMEWORK i OOP? Teraz mam zbiór własnych funkcji (jakieś 80kB) i wystarcza mi on w zasadzie w zupełności. Oczywiście mam szkielet strony (prawie MVC) i CMS i nowe zlecenie sprowadza się w zasadzie do niedużych modyfikacji. Zleceń mam dużo, zarabiam na nich dobrze i niby jest super ale może czas na zmiany? Jakie Wasze zdanie?

Przejrzałem wstępnie dokumentacje kilku najpopularniejszych FW i prawie nic nie zrozumiałem. Ale wiadomo, że początki są trudne. Tylko nie wiem czy warto, jak uważacie?

I jeszcze bardzo ważna sprawa. Większość moich zleceń to małe i proste strony na hostingach współdzielonych. Często są to najtańsze oferty tego typu. Zwykle jest możliwość edycji .httaccess i php.ini ale nie zawsze, o powłoce systemu można zapomnieć. Serwery są wolne, więc, żeby strony ładnie śmigały, to poza systemem cache muszą być wydajnie napisane. Czy przy takich wymaganiach FW się sprawdzą? Jeśli tak, to które? Przeczytałem kilka wątków tutaj na forum i wstępnie skreśliłem Zendframework i Symfony (ponoć na sharedach sobie nie radzą i są wolne). Ale i tak zostaje ich pełno, tutaj znalazłem listę http://en.wikipedia.org/wiki/Comparison_of...rameworks#PHP_2 Co innego byście polecali? Tylko koniecznie, żeby dokumentacja i przykłady była zrozumiała.

Oczywiście zdarza się, że robię coś co ma stanąć na dedyku i wtedy nie mam jakiś wydajnościowych ograniczeń ale jest to raczej margines a poza tym jak widzę paczkę z FW która ma więcej niż kilka mega to ta waga mnie przeraża.

Z góry dziękuje za pomoc!
Grześ Strawiński
blooregard
Skoro strony są proste, to radziłbym Ci na początku najpierw zapoznać się z OOP (np. spróbuj ten swój zestaw f-cji zamienić na jakieś klasy i potem korzystać z nich poprzez odpowiednie obiekty).
Skoro masz szkielet stron, który (według Ciebie oczywiście) przypomina MVC, to następnym krokiem byłoby takie jego przepisanie, by faktycznie zyskał on znamiona prawdziwego FW opartego na MVC.

Cytat
Przeczytałem kilka wątków tutaj na forum i wstępnie skreśliłem Zendframework i Symfony (ponoć na sharedach sobie nie radzą i są wolne).

Chyba trochę sie pospieszyłeś z tym skreślaniem. Myślę, że forumowicze tworzący na co dzień w oparciu o ZF lub Symfony wyprowadzą Cię z błędu.
Z drugiej strony - używanie ich do małej stronki-wizytówki z kilkoma podstronami, bez bazy danych i innych zaawansowanych f-cji to trochę strzelanie z armaty do wróbla.

Co do polecania konkretnego frameworka - jak sam zauważyłeś, było już sporo wątków na ten temat i jak pewnie spostrzegłeś, każdy z nich po jakims czasie zaczyma przypominać regularnego flame'a. Po obeznaniu się z OOP, po prostu sam wypróbuj kilka z nich i sam dojdziesz do tego, który z nich bardziej Ci pasuje.
destroyerr
Żeby rozjaśnić kwestię z symfony (bo na Symfony nie polecam jeszcze nic stawiać tongue.gif) da się uruchomić na sharedach. Zend Framework tak samo.
Czy wykorzystanie symfony musi być wolne i musi być strzelaniem z armaty do wróbla? Nie. Jeśli chodzi o wydajność to można wykorzystać sfSuperCachePlugin. Natomiast co do armaty i wróbla to użycie PHP dla prostych stron firmowych też za takie można uznać, czyli generalnie co kto lubi.

Nie polecę Ci żadnego frameworka, z przyczyn oczywistych. Natomiast zalecam rozwijanie swoich umiejętności. Poznanie zasad programowania obiektowego będzie dobrym krokiem w tym kierunku. Drugim krokiem może być poznanie frameworków, nigdy nie zmieniaj tej kolejności.
blooregard
Cytat
Natomiast co do armaty i wróbla to użycie PHP dla prostych stron firmowych też za takie można uznać, czyli generalnie co kto lubi.

Nawet prosta strona może mieć dane generowane na podstawie bazy dancyh czy np. przetwarzanie formularza kontaktowego i wysyłkę maili. W HTML tego nie zrobisz.
Crozin
Co do "strzelania do muchy z armaty". Jeżeli miałbyś się uczyć jakiegoś FW (właściwie to nie dotyczy to tylko FW, ale i wszelkiej maści "narzędzi") tylko po to, by zrobić na nim taką właśnie prostą stronę - to tak, jest to strzelania do muchy z armaty. Ale jeżeli już znasz danego FW i dzięki niemu stronę zrobisz w 2 godziny, nie 2 dni to powinieneś właśnie z niego skorzystać.
grzestra
Bardzo dziękuję za odpowiedzi.

Tak jak napisałem w pierwszym poście wszystkie moje strony bazują na MYSQL. Baza danych jest potrzebna dla wygody i CMS. Moje pytanie jest dalej aktualne, czy warto przejść na OOP i jakiś FRAMEWORK? Czy to się opłaca? Czy szybciej pisze się strony obiektowo czy strukturalnie? Albo czy czas niezbędny na poznanie FRAMEWORKA szybko się zwróci przy pisaniu raczej prostych stronek? Nie pisze jakiś bardzo skomplikowanych serwisów. Najbardziej skomplikowane projekty to sklepy internetowe (bez obsługi szybkich płatności). Czy do takich celów warto wchodzić w OOP i FRAMEWORKI?

Grześ Strawiński

A Może są FRAMEWORKI strukturalne, bez OOP? Ich nauka powinna być dużo szybsza. Więc może to byłoby dla mnie dobre rozwiązanie?
phpion
Cytat(grzestra @ 9.05.2010, 13:07:00 ) *
Najbardziej skomplikowane projekty to sklepy internetowe (bez obsługi szybkich płatności). Czy do takich celów warto wchodzić w OOP i FRAMEWORKI?

To może z drugiej strony: ja osobiście nie wyobrażam sobie dobrej aplikacji sklepu internetowego napisanej strukturalnie.
nowy_pehapowiec
Ja dodam od siebie, że Kohana ma fatalną dokumentację i jej nauka nie jest zbyt przyjemna.

A co do OOP i FW to też jestem ciekawy czy dla małych projektów to jest opłacalne? A o FW innych niż OOP i MVC to chyba nie ma mowy? Inna sprawa, że jak chcesz się rozwijać to MUSISZ nauczyć się OOP i jakiegoś FW.

pozdro
Crozin
Cytat
A co do OOP i FW to też jestem ciekawy czy dla małych projektów to jest opłacalne?
Opłacalne jest jeżeli zrobisz to szybciej. A znając już jakiś FW zrobisz to szybciej - od tego w końcu jest ten FW.
Cytat
A o FW innych niż OOP i MVC to chyba nie ma mowy?
A niby dlaczego musi być tam MVC? MVC to nie jest jedyny wzorzec architektoniczny (pewnie źle to napisałem biggrin.gif) o który można oprzeć całą aplikację.

@grzestra: Najpierw naucz się OOP - potem w ogóle możesz zacząć myśleć nad wyborem FW - teraz to nie ma sensu.
grzestra
Cytat
@grzestra: Najpierw naucz się OOP - potem w ogóle możesz zacząć myśleć nad wyborem FW - teraz to nie ma sensu.


A nie lepiej zacząć jednocześnie naukę jednego i drugiego, albo zacząć od FRAMEWORKA? Bo na początku tak sobie właśnie myślałem, że zacznę od FRAMEWORKA wpakuje do niego swoje funkcje i potem stopniowo będę je przepisywać na klasy. Potrzebowałbym tylko jakiegoś bardzo prostego FRAMEWORKA, żeby szybko zacząć. Co o tym myslicie?

Grześ Strawiński
Crozin
Chcę zostać mechanikiem. Kupiłem sobie właśnie kilka zestawów różnych narzędzi, mam 20 śrubokrętów, jakieś wiertarki, młotki, klucze śruby i nakrętki - wynająłem nawet warsztat. Dostałem pierwszy samochód do naprawy... tylko jak się naprawia samochody?

Tak mniej-więcej wygląda to co proponujesz.

Od złej strony do nauki podchodzisz.
pedro84
Zależy co rozumiesz pod pojęciem mały. Jeśli nie ma bazy, tylko kilka podstron, to oczywiście - jak napisali inni - nie ma sensu.

Cytat(nowy_pehapowiec @ 9.05.2010, 13:26:36 ) *
Ja dodam od siebie, że Kohana ma fatalną dokumentację i jej nauka nie jest zbyt przyjemna.

Dokumentacja - słaba, ale nie fatalna. Nauka nie jest przyjemna? To jest najprostszy do nauczenia framework jaki kiedykolwiek powstał...

Cytat(nowy_pehapowiec @ 9.05.2010, 13:26:36 ) *
A co do OOP i FW to też jestem ciekawy czy dla małych projektów to jest opłacalne? A o FW innych niż OOP i MVC to chyba nie ma mowy? Inna sprawa, że jak chcesz się rozwijać to MUSISZ nauczyć się OOP i jakiegoś FW.

Co ma tu być opłacalne? Oczywiście, że wygodniej jest pisać obiektowo, potem to modyfikować/rozwijać. FW innych niż OOP i MVC? Wiesz co te dwa ostatnie terminy znaczą? smile.gif
nowy_pehapowiec
pedro84 przecież grzestra napisał, że używa mySQL.

Co do FW Kohana to podtrzymuje swoje zdanie, że dokumentacja jest kiepska. Brakuje przykładowej strony do ściągnięcia i w ogóle przykładów. Popatrz na dokumentacje Symfony albo ZendFramework. Jasne, że to są kolosy, których opanowanie zajęłoby bardzo wiele czasu ale jednak dokumentacja jest bez porównania pełniejsza.

A co do OOP i MVC, to jednak kod obiektowy jest bardziej obszerny, trzeba go więcej napisać niż strukturalnego który wykonuje tę samą czynność. Użycie FW do prostego małego projektu nie jest dla mnie oczywiste. I dla autora tematu chyba też. Napisz stronę typu "hello world" w czystym php i we FW przy pomocy OOP i MVC. Gdzie jest mniej roboty? Do tego jak zobaczysz testy wydajności to możesz zacząć wątpić. Od razu mówię, że ja się przekonałem do OOP, a MVC używałem już wcześniej (choć o tym nie wiedziałem).


Cytat
A nie lepiej zacząć jednocześnie naukę jednego i drugiego, albo zacząć od FRAMEWORKA? Bo na początku tak sobie właśnie myślałem, że zacznę od FRAMEWORKA wpakuje do niego swoje funkcje i potem stopniowo będę je przepisywać na klasy. Potrzebowałbym tylko jakiegoś bardzo prostego FRAMEWORKA, żeby szybko zacząć. Co o tym myslicie?

Moim zdaniem przynajmniej podstawy OOP musisz poznać, bo inaczej nie będziesz potrafił użyć żadnego FW ani zrozumieć kodu źródłowego. Ale po tym etapie chyba warto użyć jakiegoś FW choćby po to, żeby zobaczyć jak to działa.


pozdro
marcio
@nowy_pehapowiec
Sry ale w Kohanie nie ma zabardzo czego opisywac stad dokumentacja jest zwiezla i krotka po 3 godzinach mozna spokojnie cos postawic :] gdzie po 3h symony/zend moze dopiero dalbym rade je zainstalowac snitch.gif
Brakuje ci przykladow czego?Bo standardowe biblioteki i helpery sa opisanie, owszem moze brakuje przykladow do dodatkowych modulow ale takie przewaznie pisze sie samemu :]

Wedlug mnie jak ktos chce pisac cos duzego to ja bym nawet nie tracil czasu na php'owe fw typu zend i symfony ;-)
Crozin
@marcio: gratulacje! Właśnie rozpocząłeś kolejnego flamea o lepszości jednego FW nad drugim...
sf
Jeśli chcesz sobie zrobić formularz kontaktowy do stronki, która jest w HTML wtedy frameworka nie potrzebujesz. Jeśli zamierzasz robić całą stronę to jak najbardziej framework jest potrzebny. Zresztą każdy kto robi proste stronki i zależy mu na rozwoju to poprawia i dopisuje funkcjonalność i w pewnym momencie się okazuje, że sobie napisał mini framework smile.gif Sumą sumarów i tak się skończy na frameworku mniej czy bardziej rozbudowanym.
grzestra
Chyba się przekonałem. Takie gotowce po obczajeniu co i jak pewnie będą lepsze niż moje skrypty. Najpierw poduczę się trochę programowania obiektowego. JAk nabiorę wprawy to wezmę się za jakiś FRAMEWROK. Chciałbym coś łatwego do szybkiej nauki, czy jest coś lepszego niż KOHANA pod tym względem? Może WORD PRESS? Ponoć nie tylko do blogów się nadaje. Szybciej da się go nauczyć niż KOHANA?

Grześ Strawiński
pedro84
Ale przecież Wordpress to pseudo-CMS, nie framework...
qqwwq
Tak, WP to bardziej CMS. Możesz do niego zakodować własny szablon z użyciem funkcji WP, które są obszernie opisane w codexie WP. Do tego dochodzą już gotowe pluginy ( od WP 3.0 mają być oficjalne, wydawane przez samych autorów WP ). Można także jakiś napisać samemu, aby nie trzeba było ingerować w silnik strony ( wtedy strona nie będzie odporna na aktualizacje WP ), czy też aby dać klientowi możliwość łatwego zarządzania czymś więcej niż treścią i podstawowymi ustawieniami strony.

Z tego co piszesz, WP będzie się idealnie nadawał do postawienia prostych, a nawet i średnich stronek. Silnik już jest, korzystasz z gotowych funkcji, większość ma cały wachlarz zastosowań i możliwości działania. W zasadzie wszystko na WP można zrobić, tylko trzeba chcieć, i trochę WP poznać.
Crozin
To teraz zdecyduj się czego Ty się chcesz nauczyć... jakiegoś CMSa, czy frameworka?
grzestra
Chyba jednak wole nauczyć się jakiegoś FRAMEWORKA. Bo większość moich klientów chce mieć CMS idealnie dopasowany do strony i swoich oczekiwań. Przerabianie gotowego będzie chyba czasochłonne. Jeszcze raz zapytam, jaki FRAMEWORK będzie najszybszy i najprostszy do nauki. Czy będzie coś lepszego niż KOHANA? Coś co da się w krótszym czasie opanować?

Grześ Strawiński
pedro84
O tym musisz sam zdecydować... Pobierz, przejrzyj dokumentację, napisz sobie coś małego, np. formularz + walidacja. Zobacz co Ci "podchodzi".
phpion
Cytat(grzestra @ 10.05.2010, 19:36:22 ) *
Czy będzie coś lepszego niż KOHANA? Coś co da się w krótszym czasie opanować?

Moim zdaniem nie. Kohana jest bardzo prosta jak na framework, a przy tym pozwala na tworzenie całkiem sporych systemów. Nie ma się co oszukiwać: nie jest to framework klasy Symfony czy Zend Framework, mało które firmy na nim pracują, ale z drugiej strony robi to pewną niszę na rynku. Polska społeczność Kohana jest na tyle niewielka, że wręcz "rodzinna" winksmiley.jpg Plusem prostoty Kohany jest również to, że możesz ją postawić bez problemu na każdym serwerze, który spełnia wymagania np. odpowiedniej wersji PHP. Pomimo małego rozmiaru posiada w zasadzie wszystko co jest potrzebne do komfortowej pracy tj. sterowniki bazy danych, bardzo wygodny mechanizm konfiguracji, możliwość tworzenia aplikacji wielojęzykowych, proste walidatory danych, cache'owanie danych...
k_@_m_i_l
Co do Kohany, to zgadzam sie całkowicie z phpionem. Kohana jest mała, lekka i przyjemna.
Co prawda wielu ludzi narzeka, że jest mało kursów do niej. Ale tu wiele nie trzeba. Jeśli ktoś zna programowanie obiektowe, to nie będzie miał żadnego problemu.
Ja się uczyłem Kohany, z doc-sów i jeden tutorial przeczytałem o usuwaniu index.php z linków.

W działaniu Kohany, nie ma jakiejś wielkiej filozofii winksmiley.jpg
Potwierdzam zdanie phpiona, że szybszego w nauce frameworka od Kohany raczej nie znajdziesz, chyba że sam go sobie napiszesz winksmiley.jpg
Kohana wcale nie jest gorsza od "dużych" frameworku, typu Symfony.
Spójrzcie tutaj http://forum.kohanaphp.pl/index.php/board,9.0.html jak widać, wiele rozbudowanych stron jest opartych o Kohane. Nawet demotywatory.pl są zbudowane na niej.
A z tego co widziałem ostatnio, to wiele firm wymaga znajomości Kohany, więc nie jest tak źle z niąwinksmiley.jpg
grzestra
Wszystkim dziękuję za cenne wypowiedzi. Spróbuje z Kohana3.

Grześ Strawiński
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.