Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [OOP]Funkcja z dowolnym parametrem
HgReed
post
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 13.11.2011

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


Witam.
Natknąłem się dzisiaj na taki problem. Zobrazuje to na przykładzie.
  1. abstract class Main {
  2. abstract function __construct();
  3. }
  4.  
  5. class Dziecko_1 extends Main {
  6. function __construct($a, $b) { //Żeby to było możliwe
  7. echo $a.$b;
  8. }
  9. }

Czyli chodzi mi oto - czy klasa dziedzicząca (lub implementująca interfejs) miała dowolny parametr (funkcja musi być 'wymagana')?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
HgReed
post
Post #2





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 13.11.2011

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


Te valueObject'y to - jak dla mnie - przerost formy nad treścią.

A temat rozwiązany - "wystarczyło" dopisać sobie 3 funkcje i idzie to obejść.

PS. Ten __construct był tylko przykładem, a nie moim problemem.
Go to the top of the page
+Quote Post
Orzeszekk
post
Post #3





Grupa: Zarejestrowani
Postów: 260
Pomógł: 14
Dołączył: 8.09.2011

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


Cytat(HgReed @ 26.02.2012, 22:00:59 ) *
Te valueObject'y to - jak dla mnie - przerost formy nad treścią.


Tak ci sie tylko wydaje (IMG:style_emoticons/default/smile.gif)

wygenerowanie takiego value objectu w porządnym ide to kilka sekund, a po paru miesiacach pozwalają się połapać o co chodziło.
dobrą praktyką jest zamiana tablic na value objecty w takich sytuacjach.

Wolalbys dostac takie eventArgs jako value object, ładnie podpisane np eventArgs klikniecia myszki: x,y- wspolrzedne, buttonPress- jaki przycisk zostal wcisniety itd itd, czy wolalbys dostac tablicę 20 wartosci w nieznanej kolejnosci i bobrowac dokumentacje który jest który?(IMG:style_emoticons/default/tongue.gif)
A moze ktorys z parametrow to kilkukrotnie zagniezdzona tablica? Hmm.. ile razy ona zagniezdzona byla i co było czym... sytuacje z zycia wziete ;P+dolicz troche czasu na debugowanie przez pomyłki

Mądry autor ksiażki "clean Code" zaleca zamiane tablic na value objecty, zaleca by w tych value objectach nie robic publicznych pól, tylko dostęp do nich był przez gettery/settery i zaleca uzywac getterow/setterow nawet wewnatrz klasy zamiast bezposredniego dostępu do wartosci, i ja sie go słucham bo wiele jego teorii sie sprawdzilo w praktyce. Niewielkim kosztem wydajności która w PHP i tak jest do dupy, uzyskujesz duzo bardziej idiotoodporny kod.

Ten post edytował Orzeszekk 26.02.2012, 22:28:44
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: 3.10.2025 - 10:11