Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Jak zrozumieć idee OOP?
Daav
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 20.09.2015

Ostrzeżenie: (0%)
-----


Cześć wszystkim!

Nie wiem czy tylko ja mam taki problem, ale z tego co wypluła mi wyszukiwarka to wygląda na to, że nie jestem sam (znalezione temat nie dały mi odpowiedzi) (IMG:style_emoticons/default/smile.gif)
Mam problem z nauką obiektowego php.
Hobbistycznie php nauczyłem się parę lat temu i raczej przyszło mi to bez większych problemów. Większych - mam na myśli takich jak OOP. Z teorią nie jest tak źle, wiem co to klasa, pola, metody i inne ciekawe rzeczy, bo przejrzałem masę kursów, żeby spróbować pojąć OOP. Ale w praktyce ..? Nie wiem jak tego użyć (poprawnie)? Strukturalnie napiszę wszystko na co mam pomysł i ochotę - OOP -> nie napiszę prostego systemu logowanie i autoryzacji, bo nie chce tworzyć klas etc. na siłę i spędzić później godziny na zamartwianiu się czy to poprawnie napisane.

To nie jest tak, że przeczytałem jeden kurs i się poddałem. Dalej buszowałem w internecie. Trafiałem na fora, gdzie ludzie polecali uczyć się na jakichś małych (czasami dużych) frameworkach. Więc idąc za ciosem, spróbowałem.. ale jak używać czegoś o czym nie mam pojęcia jak działa? OK, jest dokumentacja i wszystko na tacy, ale nie na tym mi zależy. Chyba można napisać jakąś prostą strone bez frameworka?

Na innych stronach znalazłem kolejne porady: Tutaj masz gościa, który pokazuje jak napisać prosty framework : link - po tym wszystko zrozumiesz!
Pomyślałem, że może to być moja szansa. Film na youtube, od paru lat jestem w UK więc nie przeszkadzało mi, że po angielsku. Ale jedyne co z tego się nauczyłem to podstawy o wzorcu MVC - zawsze coś (IMG:style_emoticons/default/smile.gif)

Próbowałem teorią, uczyć się przez przykłady, oglądąć gości na youtube, a nawet samemu coś pisać - ale nic mi z tego nie przyszło. Może jestem za głupi, a może źle to próbuję zrozumieć?
Miał ktoś taki problem? Jak przejść z pisania kodu strukturalnego na OOP? Jest na to jakiś sposób?

PS: Słyszałem, że OOP w C++ jest podobne, akurat mam książkę Grębosza, mógłbym zerknąć na programowanie obiektowe, ale nie chce sobie jeszcze bardziej namieszać i skreślać oop w php, bo to moje hobby.

Z góry dzięki, za porady.




Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
com
post
Post #2





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

Ostrzeżenie: (0%)
-----


Pierwsze podstawowe pytanie to co już potrafię?

Obecnie modne jest tworzyć separację miedzy modelem, widokiem oraz kontrolerem i na tej idei bazują wszystkie sensowne frameworki, dlatego dużo osób je poleca, ale framework to nie tylko mvc, w tych większych jak np. Symfony, jest wiele innych zasad, które powinno się znać i stosować. Ale tak naprawdę OOP to wcale nie MVC, bo to jest wzorzec architektoniczny, który można zaimplementować, ale nie trzeba, ostatnio trend zmierza trochę w innym kierunku a mianowicie nastawienie na zrozumienie domeny, czyli w kierunku DDD, oraz przykładowo hexagonal architecture.

Moim zdaniem najlepiej uczyć się na jakimś prawdziwym problemie, najważniejsze jest jednak aby zacząć, pisać, bo dziś kiedy zapytam się Ciebie czym możesz się pochwalić, co stworzyłeś co odpowiesz? (Chodzi mi oczywiście w kontekście OOP). Tak jak kolega powiedział, wybierz sobie jakiś przykład który Cie interesuje i spróbuj go zaimplementować, w razie problemów przychodzisz do nas, my chętnie pomożemy jak ktoś chce z nami współpracować. I nie bać się jak ktoś skrytykuje nasz kod, bo on krytykuje implementacje, nie nas samych, dużo osób odbiera to zbyt personalnie.

Mówisz, że masz książkę do C++, prawda jest taka, że jak pojmiesz OOP w jednym języku to, przeniesienie go na inny wymagać będzie tylko zmiany nazewnictwa które obowiązuje w danej implementacji języka, oczywiście jeśli znasz trochę C++, to poznanie tam OOp będzie fajnym doświadczeniem i dobra baza, ale może być tez odwrotnie, zacząć od PHP, co wybierzesz zależy od Ciebie.

Pytałeś czy można napisać stronę bez frameworka, oczywiście że można, ostatnio w ramach projektów open source rozwijany jest serwis ecommerce, https://github.com/dumplie/dumplie, do którego, każdy kto ma chęć i ochotę może dorzucić własną cegiełkę(uprzedzając nie jest to reklama broń boże), jest to po prostu fajny przykład tego, że nasze polskie community, jest już na tyle rozwinięte, że potrafi też samemu coś zdziałać. Projekt jest o tyle ciekawy, że został oparty o architekturę warstwową, a do tego nie jest zależny od konkretnej implementacji narzucanej przez framework. Przykład warty przejrzenia/śledzenia bo projekt cały czas się rozwija. Podobny https://github.com/norzechowicz/mydrinks i prezentacja https://vimeo.com/154094215 z zeszłorocznego PHPCon (IMG:style_emoticons/default/wink.gif) Warto iść z duchem czasu i uczyć się już na dobrych przykładach, a nie powtarzać stare nie do końca dobre schematy (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 02:32