Cytat(smentek @ 24.08.2011, 19:32:41 )

No to po podsumujmy:
1. "Przekazywanie tablicy do konstruktora" to jest idea którą Ty w swoim poście wprowadziłeś do tego wątku. Wprowadziłeś ją jako argument za tym że method chaining czy fluent interface pozwala uniknąć takich dużych tablic w konstruktorze.
2. Ja ten argument "zbiłem" tym, że prawidłowe obiekty nie mają tego typu problemów. Zwróciłem też uwagę, że nie możemy powiedzieć "używać czy nie używać method haining to bez znaczenia" bo mechanizm ten (MC) ma też swoje koszty.
3. Wyciągasz z tego wniosek, że nie rozumiem do czego służy method chaining i piszesz dalej:
1. Konstruktor nie ma tu nic do rzeczy bo jak sama nazwa wskazuje służy do 'konstruowania' a nie do 'wywoływania'.
2. Wykonywanie złożonych operacji według dowolnej kolejności możemy osiągnąć poprzez wywoływanie 'normalnych' metod na obiekcie.
Prawda?
Także ja mogę nie wiedzieć do czego służy MC ale Ty wiesz. I wiesz też, że nie należy go nadużywać i nie jest tak że konstruktor czy MC to wsio ryba.
To teraz pojechałeś. Po kolei:
1. Bardzo wygodnie było wybrać wypowiedź wyrwaną z kontekstu, gdzie podałem jako jedynie
przykład i to w dodatku jako
pytanie retoryczne (sic!) i twierdzić, że właśnie taką tezę wniosłem do wątku. Pozostawię to bez zbędnego w tym przypadku komentarza. Każdy rozumuje na swój sposób.
2. jw, a odnośnie kosztów to niestety ze wszystkim tak jest, że coś za coś
3. Nie. Znów nadinterpretujesz. Napisałem, że niepotrzebnie mieszasz w temacie, ale nigdzie nie napisałem, że czegoś nie rozumiesz. Jest różnica?
1. (ponowne) czepiasz się nazewnictwa, zresztą niesłusznie. Przecież obaj wiemy, że tworząc obiekt właśnie
wywołujesz (chcąc nie chcąc) specjalną metodę nazywaną konstruktorem, która alokuje dla obiektu pamięć i pozwala zainicjalizować obiekt danymi.
2. (ponowne) W takim razie zapytam czym według Ciebie różni się "normalna" metoda od metody zwracającej wskaźnik (właściwie referencję) do obiektu i tym samym pozwalająca na użycie method chaining? Przecież jedna i druga to takie same metody podlegające tym samym prawom języka. I nie wyskakuj tu proszę z kontrą, że jak zwrócisz referencję, to tym samym zużywasz więcej pamięci. Nawet jeśli to są to mikrosekundy na wydajności i minimalny narzut pamięci (w ogóle w testach wydajnościowych tak niewielkie różnice nie występują), a otrzymujesz narzędzie, które pozwala na olbrzymią elastyczność i swobodę. Zresztą php nigdy nie było wydajnym narzędziem. Zależy Ci na mega-wydajności? Koduj w C++ albo w asemblerze

Czyli wychodzi zatem że - nieprawda.
Odnośnie Twojego "podsumowania" to napiszę krótko: daruj sobie tanią ironię, której wcale nie nadrabiasz jakaś szczególną wiedzą (tip: tak dopiero teraz wytykam Ci po raz pierwszy niewiedzę w temacie metod). Ja nigdzie sobie nie roszczę praw do monopolu na wiedzę i nie życzę sobie, żeby ktoś mnie w taki sposób traktował. Jeśli się w czymś mylę - ok przekonaj mnie do swojej racji
sensownymi argumentami, a nie jadem.
A teraz lektura do poduszki:
http://www.webgeekly.com/tutorials/php/use...te-neater-code/http://www.cakemail.com/method-chaining-in-php/http://stackoverflow.com/questions/3821762...method-chaining