Komentarze:

comments powered by Disqus

Komentarze archiwalne:

  • ~krytyk

    Artykuł powinien mieć tytuł 'Jak nie pisać kodu'.
    Kod nie powinien być pisany w taki sposób, żeby następna osoba, która go modyfikuje, zastawiała się o co w nim chodzi. Ma być prosty i zrozumiały. KISS. A bardziej zrozumiałe jest zdefiniowanie funkcji kup(), sprzedaj(), które, jeśli nie chcemy powtarzać kodu w obu funkcjach, mogą się odwołać do zmien_ilosc_towaru().

    Gdyby ktoś napisał to w taki sposób, wtedy Autor nie musiałby się zastanawiać o co w kodzie chodzi i mógłby w bardziej pożyteczny sposób spędzić stracony czas.

    15-12-2010, 18:20

    Odpowiedz
    odpowiedz
  • ~Piotr

    Za takie coś należy się natychmiastowy wylot z pracy

    15-12-2010, 18:43

    Odpowiedz
    odpowiedz
  • ~karzeł reakcji

    Czy ja wiem ? Zobaczcie sobie JAXL. Tam też jest __call używany w podobny sposób (z tym, że dochodzi sprawdzenie pierwszego parametru)

    15-12-2010, 19:07

    Odpowiedz
    odpowiedz
  • ~omgwtf

    taki wzorzec a la fron controller od biedy ujdzie jako frontend do całego modułu, ale na pewno nie jako jego klasa wewnętrzna!

    15-12-2010, 19:39

    Odpowiedz
    odpowiedz
  • ~demikaze

    Jestem programistą od ...nastu lat i za takie konstrukcje wywalałbym z pracy - ja rozumiem jeszcze żeby użyć "magii" tam gdzie bez niej wiązałoby się to z niesamowitą gimnastyką w kodzie, ale w tym przypadku jest to masakryczne nadużycie połączone z zaciemnieniem kodu, tu jeszcze do ogarnięcia bez większego problemu ale strach się bać co jeszcze zmalował w kodzie programista z takimi zapędami...

    15-12-2010, 19:56

    Odpowiedz
    odpowiedz
  • ~iss

    "Jednak dzięki użyciu metod sprzedaj() i kup() kod jest bardziej intuicyjny"

    A teraz proszę pójść do kantoru i sprzedać -100 (minus sto) euro.

    Już podstawówce uczy się, że Jasio dostał 5 cukierków i zjadł 2. Nigdy Jasio nie zjada minus dwóch cukierków.

    15-12-2010, 20:14

    Odpowiedz
    odpowiedz
  • ~Dariusz P

    Metody magiczne w PHP służą do tego by kosztem wydajności uczynić coś skomplikowanego - łatwym.
    Autor tutaj przehakerzył jak to się śmiejemy w pracy. Długa droga przed Tobą jeżeli taki kod piszesz.
    Ale nie zniechęcaj się. Każdy z nas zaczynał od zera i zapewne wielu z nas do teraz wspomina miło tego typu "pomysły".
    Z czasem programista poznaje to co lenistwo i zapamiętuje zasadę:

    "Rozwiązanie problemu nie powinno być bardziej złożone niż sam problem".

    15-12-2010, 20:18

    Odpowiedz
    odpowiedz
  • ~kronikarz

    Jestem programista hobbysta z zamilowania i moze nie mam wielkiego doswiadczenia ale kurcze... Nie rozumiem po prostu dlaczego niektore rozwiazania w kodzie musza byc bardziej skomplikowane niz powinny. Nie znam sie idealnie na php i pisze dopiero swojego pierwszego powaznego cmsa ktory ma szanse byc projektem uzytecznym a nie wynalazkiem. Czasami sie zastanawiam gdy patrze na taki kod czy to ja jestem glupi bo nie moge tego zrozumiec czy osoba ktora go napisala. Jedno musi byc prawdziwe...

    Niestety nie jestem w stanie jednoznacznie powiedziec ze to osoba ktora to napisze jest glupia bo moje doswiadczenie nie jest zbyt duze.

    15-12-2010, 20:25

    Odpowiedz
    odpowiedz
  • ~kred

    Całkowicie się zgadzam z demikaze, takie konstrukcje są bardzo niebezpieczne.

    15-12-2010, 20:49

    Odpowiedz
    odpowiedz
  • ~kardam

    Ja rozumiem, że autor to taki sobie programista lubujący się w "intuicyjnym" kodzie ociekającym komentarzami, ale ten artykuł jest wstępem do płatnego kursu programowania co jest już bezczelne.

    15-12-2010, 21:00

    Odpowiedz
    odpowiedz
  • ~Dariusz P.

    W skrócie. Nie dość że autor pokazuje bzdury, nie dość że stara się te bzdury komuś przekazać to jeszcze każe sobie za to płacić :-) Powalająca logika.

    Może zamiast krytykować - ogłośmy konkurs na nowy tytuł tego arta ? Moja propozycja:
    _________________________________
    Zwiększ swoje szanse na rynku pracy - czyli jak stworzyć armię głupców dzięki którym będziesz wyglądał jak profesjonalista.

    15-12-2010, 21:59

    Odpowiedz
    odpowiedz
  • ~matidz

    co robi kurs() ? ustawia, resetuje, zwraca? proponowalbym nawet getKurs()
    co robi sprawdz(), transakcja(); czym jest przekazywany parametr do konstruktora? typem prostym? obiektem?

    zakladajac ze autor chce pokazac wykozystanie __call($n, $p) to ok. mozna sie domyslic czym jest $p, ale czym jest $n ? z kodu to nie wynika... wg mnie spokonie by mozna bylo wykozystac np switcha do demonstracji czym jest $n, i rzucac wyjatek kiedy w defaulcie. Chyba, ze $zloto->wyzeruj()

    czytelnosc kodu(calego): 0
    intuicyjnosc kodu: 0
    wygoda pisania: 0 (brak dopelaniania skladni)
    szybkosc: 0

    15-12-2010, 23:16

    Odpowiedz
    odpowiedz
  • ~matidz
    [w odpowiedzi dla: ~matidz]

    edit:
    *mowie oczywiscie o konstruktorze Portfel'a

    *chyba, ze $zloto->wyzeruj() tez jest poprawne.

    15-12-2010, 23:19

    Odpowiedz
    odpowiedz
  • ~slawek22

    Już ładny szmat czasu piszę w C++/PHP ale jak autor myśli, że to jest dobry przykład do nauki to "kursantom" współczuję.

    Czasami staram się "nowym" w firmie coś pokazać, ale NIGDY nie uczyłbym ich czegokolwiek na przykładzie takich nieczytelnych GŁUPOT!

    Cenę towaru powinno się obliczać w klasie portfel, na podstawie ceny jednostkowej. Pomijając już totalną nieczytelność kodu to ten design klas jest po prostu idiotyczny. Bo jak zrealizować na przykład sprzedaż całego złota? Z tak kiepsko zaprojektowanymi klasami prosto się nie da!

    16-12-2010, 03:26

    Odpowiedz
    odpowiedz
  • ~Autor

    Artykuł w założeniu miał pokazać działanie metody __call() w możliwie jak najprostszy sposób osobom, które tej metody dotąd nie znały. W tym użyty przykład sprawdził się doskonale na kilku szkoleniach. Chciałbym przeprosić wszystkich profesjonalistów z taaaaaakim doświadczeniem, że nie napisałem tego wystarczająco jasno. Sugestie by pokazać działanie metody __call() bez użycia metody __call() pominę milczeniem.

    Pozdrawiam

    16-12-2010, 10:20

    Odpowiedz
    odpowiedz
Brak danych. Sprawdź później :)
RSS  
Chwilowo brak danych. Sprawdź później :)


Partnerzy