Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Propozycja artykułu - "Różnice między proceduralnym, a objektowym PHP"
ixpack
post
Post #1





Grupa: Zarejestrowani
Postów: 248
Pomógł: 55
Dołączył: 1.06.2010
Skąd: mam to wiedzieć?

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


Mam taką propozycję, aby ktoś kompetentny (nie ja...) napisał artykuł o podstawowych różnicach między obiektowym i strukturalnym (proceduralnym, liniowym - ile jeszcze określeń?) PHP.

Dlaczego? Dwa razy czytałem książkę o OOP... Jedynie pobieżnie czytałem podrozdział o różnicach pomiędzy tymi dwoma światami. A różnice są i jeżeli np. (tak jak ja, ale dzięki odpowiedzi mike'a w tym wątku zacząłem czytać książkę po raz 3ci i...) uważasz, że programowanie obiektowe to takie w którym jedynie używasz klas, obiektów, narzędzi i przeplatasz to z liniowym php - to jesteś w błędzie. Pewien jestem, że przyda się to każdemu samoukowi.

Edit: Żeby jakaś mądra głowa nie wpadła na pomysł "że jest to oczywiste" - nie nie jest to oczywiste, może zapomnieliście już te czasy, że nawyk ze struktur przenikał wasze kody od szpiku... Ale ja nie i dlatego chcę pomóc mnie podobnym, którzy "jeżdżąc dieslem - myślą że olej silnikowy jest nie potrzebny". Około 19:00 dopiszę "punkty" jakie moim zdaniem powinny znaleźć się w takim artykule, bo fakt "mądre głowy" nie do końca mogą wiedzieć o co mi chodzi. Peace Y

Ten post edytował ixpack 6.05.2011, 10:17:04
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
#luq
post
Post #2





Grupa: Zarejestrowani
Postów: 589
Pomógł: 91
Dołączył: 22.05.2008
Skąd: Gliwice

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


Cytat(ixpack @ 6.05.2011, 19:21:05 ) *
Podział odpowiedzialności: dla kod porceduralny to sekwencje poleceń, które nie raz są powielane (chociażby sprawdzanie czy zmienna x jest stringiem). W kodzie obiektowym natomiast następuje próba minimalizacji tych zależności i zepchnięcie pewnego zadania na dany obiekt istniejący w systemie, przez co kod nie jest powielany.

Nikt nie powiedział, że w kodzie proceduralnym nie można napisać funkcji.

Cytat
Spójność i sprzęganie: w proceduralnym kodzie nasze funkcje, klasy - nawet jeżeli są w jakiś sposób powiązane często wędrują po naszym kodzie. Często trzeba zmieniać kilka funkcji, klas, bo części kodu są od siebie tak zależne, że przy zmianie jednej funkcji musimy zmieniać kolejną...

Nikt nie powiedział, że w kodzie proceduralnym nie można pisać uniwersalne funkcji (przyjmujących parametry i dzięki temu działające dla każdego przypadku)

Ogólnie brniesz chyba w złą stronę skupiając się za bardzo za fizycznych różnicach obu podejść. Obiektówka różni się sposobem myślenia i formułowania kodu czyli bardziej mentalną sprawą. Przejście między tymi dwoma sposobami kodowania nie następuje w dzień, dwa czy tydzień, jest to proces dłuższy więc się nie przejmuj jeśli nie do końca wszystko na początku rozumiesz.
Jeśli dopiero zaczynasz to na pewno pomocnym będzie to co napisał Cysiaczek o golarce i różowych kredkach. Jeśli projektowałeś kiedyś bazę to także jest pomocne bo większość tabel to właśnie obiekty. Np. mamy aplikacje do urządrzania pokoju, tabelki

user | item | user_has_item

obiektowo:
  1. $u = new User('luq');
  2. $i = new Item('safka');
  3. $i->setColor('#f00');
  4. $u->addItem($i);


Naprawdę taki artykuł o którym piszesz jest zbędny
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 14.10.2025 - 08:21