Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Krzywa uczenia się PHP: strukturalnie, obiektowo, micro frameworks?
Forum PHP.pl > Forum > Przedszkole
arstherapia
Takie pytanie... czy ucząc się PHP warto jeszcze uczyć się strukturalnego, czy lepiej od razu obiektowego?

Sporo czytam, słucham tutoriali i mam dylemat.

A jeśli obiektowo, to czy micro-frameworki odpadają?

Czy strukturalnie + micro frameworki Fat-Free, Yaf, etc. ?

Czy obiektowo i ... ?

Co sugerujecie? Jak się już zacząłem uczyć, to chciałbym porządnie...
Turson
Cytat
Takie pytanie... czy ucząc się PHP warto jeszcze uczyć się strukturalnego, czy lepiej od razu obiektowego?

Od początku lepiej strukturalnie. Nie ma co się rzucać na obiektówkę nie znając podstaw nawet strukturalnych.

Cytat
A jeśli obiektowo, to czy micro-frameworki odpadają?

Jedno nie ma nic do drugiego.
tzm
Podstawy PHP powinieneś w sumie przerobić strukturalnie, jak ogarniesz fory, ify, wyrażenia regularne, takie podstawowe bzdety to odrazu bym szarpał Code Igniter... micro frameworki kojarzą mi się raczej z wynalazkami jak Slim który wcale łatwy nie jest na początek. No i tyle..
Szybkie podstawy strukturalnie, potem od razu obiektowo - najlepiej na frameworku. Po co wymyślać koło od nowa? I tak byś to zrobił źle.
arstherapia
Dziękujęsmile.gif

A czemu właściwie CodeIgniter, a nie np. Laravel ?
by_ikar
No właśnie Slim jest banalny, bo i nie ma co tam być skomplikowanego z uwagę na ilość klas/plików (21+). I porównujesz do tego CI, które jest dość spore, no to trochę się wyminąłeś z porównaniem.

Jak nie chcesz ogarniać za dużo to slim jest dla ciebie idealny, jak już chcesz coś więcej ogarnąć, to możesz spróbować sił z laravelem, czy czymś podobnym. IMO za CI nie powinien się brać, nawet jeżeli jest to dobry fw, głównie z uwagi na to że CI się nie rozwija od dość dawna.
arstherapia
Zastanawiam się pomiędzy Laravel a Phalcon.

Co polecacie?
tzm
1. Slim jest faktycznie malutki, nie mówię że nie. Ale osoba zadająca takie pytania nie koniecznie ogarnie choćby namespacy, sam nie ogarniam ale to z mojego lenistwa i braku chęci na php ostatnio.
2. CI jest rozwijany. Wersja 3 z tego co ostatnio widziałem dalej żyje swoim życiem.. po prostu się nie doczekała stabilnej wersji.
3. Laravel spoko, cały weekend gwałciłem teraz dokumentacje i moim zdaniem może być ciekawy, najbliższe 4 tygodnie zweryfikują jak będę w stanie przepisać swoje www z CI na Laravela.
4. Phalcon chyba trudny dość jest? Aczkolwiek wydajnościowo tylko języki kompilowane się z nim równają.
arstherapia
Dzięki, TZM smile.gif

Phalcon, jeżeli jest trudny, to dla mnie odpada...

Wybiorę chyba Laravel, mam jakieś fajne tutki do tego:)

Powoli mi się wyłaniają narzędzia i zadania na najbliższe miesiące:

Laravel + Sublime Text 2 oraz jakiś wstęp do obiektowego php i nauka sql.
Turson
Zanim zabierzesz się za jakikolwiek framework ucz się programowania obiektowego na sucho, to będzie łatwiej wejść w fw.
by_ikar
Cytat(tzm @ 28.09.2014, 22:23:17 ) *
1. Slim jest faktycznie malutki, nie mówię że nie. Ale osoba zadająca takie pytania nie koniecznie ogarnie choćby namespacy, sam nie ogarniam ale to z mojego lenistwa i braku chęci na php ostatnio.
2. CI jest rozwijany. Wersja 3 z tego co ostatnio widziałem dalej żyje swoim życiem.. po prostu się nie doczekała stabilnej wersji.
3. Laravel spoko, cały weekend gwałciłem teraz dokumentacje i moim zdaniem może być ciekawy, najbliższe 4 tygodnie zweryfikują jak będę w stanie przepisać swoje www z CI na Laravela.
4. Phalcon chyba trudny dość jest? Aczkolwiek wydajnościowo tylko języki kompilowane się z nim równają.


Proszę cię, co wy macie z tymi przestrzeniami nazw? Przecież to jest banalna sprawa, nie trzeba tutaj nawet OOP umieć, bo i nie do tego przestrzeń nazw została stworzona. Czemu ludzie się lękają tak tych banalnych przestrzeni nazw? WTF Serio, przestrzenie to jedna z banalniejszych rzeczy do zrozumienia, w porównaniu do innych rzeczy z którymi przyjdzie wam się zmierzyć.
arstherapia
Ta, wszystko jest banalne jak się spędzi w czymś parę / naście / dziesiąt godzin...

Ludzie, w ten sposób to ja nigdy nie napiszę tego sklepu dla siebie !

Najpierw miało być statycznie, potem doszły fragmenty php, potem doszła baza danych, potem wiele tablic i joiny...

Jak się będę więcej uczył niż pisał, to może i powstanie ten sklep obiektowo napisany i w jakimś wypasionym framework'u,
ale w 2064 roku, ja będę miał siwą brodę do pasa, a komputery zmienią się 127 razy...

Serio, gdzie jest granica między uczeniem się, a pisaniem, tak jak się umie? Wiem, wiem, sam pytałem o krzywą uczenia się,
teraz pytam gdzie jest ten króliczek...

golabow
Moim zdaniem jeśli nie umiesz programować to najepiej zacząc uczyć się podstaw na C++. Dlaczego?
Po pierwsze ten język jest podstawą wielu języków między innymi PHP. Jeżeli umiesz C++ to przejście do PHP to moment.
Po drugie jest to język o typowaniu silnym ( np. w czasie deklaracji zmiennych musisz okreslic ich typ ), warto to opanować ( wiem że część osob wybiera PHP bo jest "prostszy" ) będzie Ci latwiej poźniej z innymi językami.

Jak już opanujesz część strukturalną to nie rzucaj się na frameworki, tylko zacznij od paru prostych projektów z obiektowością, najlepiej aby wykorzystał wszystkie możliwości, przez co się wiele nauczysz.

Jak już obiektowość będziesz miał w małym paluszku to czas na framework. Najlepiej odrazu Symfony lub Zend, przyda Ci się do pracy.

PS. Przestrzeń nazw można łatwo wytłumaczyć na przykładzie folderów. Przestrzeń nazw jest jak folder, jeśli chcesz mieć dwa pliki o takiej samej nazwie to musisz je umieścić w różnych folderach, bo inaczej dojdzie do kolizji nazw.
by_ikar
Cytat(arstherapia @ 29.09.2014, 15:02:58 ) *
Ta, wszystko jest banalne jak się spędzi w czymś parę / naście / dziesiąt godzin...

Ludzie, w ten sposób to ja nigdy nie napiszę tego sklepu dla siebie !

Najpierw miało być statycznie, potem doszły fragmenty php, potem doszła baza danych, potem wiele tablic i joiny...

Jak się będę więcej uczył niż pisał, to może i powstanie ten sklep obiektowo napisany i w jakimś wypasionym framework'u,
ale w 2064 roku, ja będę miał siwą brodę do pasa, a komputery zmienią się 127 razy...

Serio, gdzie jest granica między uczeniem się, a pisaniem, tak jak się umie? Wiem, wiem, sam pytałem o krzywą uczenia się,
teraz pytam gdzie jest ten króliczek...


Ale te przestrzenie to na prawdę banalna sprawa.. Jest to nic innego jak swego rodzaju grupa. W grupie możesz umieścić albo obiekty, albo inne grupy które mają obiekty. Z tym że musisz pamiętać, że aby mieć dostęp do danej grupy, musisz wcześniej wpisać magiczne use GRUPA/KLASA i gotowe. To jest ta sama zasada co z folderami na komputerze. Możesz mieć folder w folderze, i tak w sumie możesz zagnieździć foldery ile chcesz. A w poszczególnych folderach możesz trzymać pliki. Gdzie pliki to nic innego jak twoje klasy/funkcje. I tak masz przestrzeń (folder) którą musisz poprzedzić nazwę swojej klasy/funkcji aby "ścieżka" do tej klasy/funkcji była odpowiednio rozumiana przez "system". Bo o ile w jednym folderze nie możesz mieć dwa razy pliku o tej samej nazwie, to w innym folderze (przestrzeni) możesz już przecież mieć. I tak samo to działa w php, czy innych językach. Po prostu zamiast odwołać się do samego pliku (klasy/funkcję), bo przecież plików o takiej samej nazwie może być wiele; a system niby skąd ma wiedzieć o który dokładnie plik (klasę/funkcję) chodzi, więc musisz podać pełną ścieżkę.

I jeżeli teraz to zrozumiałeś, zadaj sam sobie pytanie, co jest trudnego w zrozumieniu tego, że tak wiele osób demonizuje przestrzenie do tego stopnia, że pewnie musisz być po kilku fakultetach żeby to skumać. Co mam nadziej dość jasno zobrazowałem moim przykładem..
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.