![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 6.11.2008 Ostrzeżenie: (10%) ![]() ![]() |
Witam,
czytam o OOP bo mam zamiar to w koncu pojąć ... do rzeczy mam kod
po co pisać metode private skoro i tak w public sie do nie odniosę przecież to bez sensu (no albo jeszcze mało wiem (IMG:style_emoticons/default/haha.gif) ) skoro można napisać od razu
Niech mi to ktoś w końcu racjonalne wytłumaczy (IMG:style_emoticons/default/haha.gif) |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
No w tym przypadku to akurat bez sensu jest rozbijać to na dwie metody (w ogóle bez sensu jest tutaj robić obiekt).
Google: OOP hermetyzacja |
|
|
-lukasamd- |
![]()
Post
#3
|
Goście ![]() |
Ja również tak powoli, powolutku, bardzo powolutku przechodzę na OOP i również mam dylematy: czy tu będzie dobrze, czy może jednak nie? (IMG:style_emoticons/default/smile.gif)
Najlepszy przykład pokazujący zalety OOP to chyba wałkowany setki razy interfejs + implementujące go sterowniki do bazy danych. Nie zawsze jest dostęp do PDO (o ile już się o nim oczywiście dowiemy), zaś rozdzielanie silników w proceduralnym przez if / else byłoby chorym rozwiązaniem. Dla mnie obecnie dylematem są sprawy typu: chcę zrobić sobie stronę z dodawaniem artykułów i wpisów. Czy robić klasę dla artykułów (metody typu: addArticle, deleteArticle, searchArticle), czy może rozwiązać to w inny sposób? Jak do tego dorzucam MVC to już niezły mętlik się robi. No ale powolutku idę do przodu (IMG:style_emoticons/default/biggrin.gif) |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 6.11.2008 Ostrzeżenie: (10%) ![]() ![]() |
No ja mam dokładnie to samo (IMG:style_emoticons/default/biggrin.gif) tylko wiesz kurcze pisząc tu myślałem że otrzymam odpowiedź z + - a to tylko forma bardzo krótkiej odpowiedzi ;D oczywiście mogę luknąć do google i znaleźć setki artów no ale lepiej uzyskać odpowiedzi że tak powiem na konkretny problem w tej chwili no ale jak to mówią "Życie " (IMG:style_emoticons/default/haha.gif)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 76 Pomógł: 19 Dołączył: 19.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
to stosunkowo proste, tworząc bibliotekę przy użyciu tradycyjnego programowania strukturalnego, nie ma sposobu (przynajmniej w PHP) aby ukryć przed użytkownikiem końcowym te funkcje, których naszym zdaniem nie powinien bezpośrednio wywoływać. W OOP możemy to zrobić bardzo łatwo - metody prywatne nie mogą być wywołane poza obiektem. Można więc dostarczyć użytkownikowi "czarne pudełko" - użytkownik końcowy może używać jedynie metod oznaczonych jako publiczne, które zwykle służą za interfejsy, podczas gdy cała implementacja jest "ukryta" za pomocą metod prywatnych. Jeśli za jakiś czas wypuścimy nową wersję naszej biblioteki, możemy dowolnie pozmieniać wszystkie metody prywatne, mając 100% pewności, że nie stracimy kompatybilności z poprzednią wersją, o ile metody publiczne pozostaną takie same.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 6.11.2008 Ostrzeżenie: (10%) ![]() ![]() |
JohnnyB NO znacząco mi to już rozjaśniłeś ... i Tak jest najlepiej (twoja wypowiedz)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 13:50 |