Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ocena kodu OOP - rozwiazania, Prosze o uwagi do implementacji koszyka wg zadanego interfejsu
Lechus
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 4.02.2014

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


Szanowni profesjonaliści,

Proszę, w wolnej chwili, o przejrzenie kodu i udzielenie cennych wskazówek jak ten kod można ulepszyć.

Kod na Githubie

Plik READ ME.txt - tu jest opis co miało być zaimplementowane.
Instrukcja implementacji interfejsu
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 381
Pomógł: 1116
Dołączył: 30.08.2006

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


@destroyerr To co pokazałeś to zwykłe rzutowanie typów i jakaś metoda statyczna więc nie wiem co tam jest lepsze gorsze. Ja mam na myśli odnoszenie się do kodu poprzez stringi czyli np

  1. $di->get('Db\Adapter\Oracle');


Odpada ci cała zaleta podpowiadania składni bo nazwę musisz znać i jeszcze ją całą ręcznie wklepać. Ktoś teraz załóżmy miał wizję i zrobił coś takiego:

  1. $im = $di->instanceManager();
  2. $im->addAlias('trolololo', 'Db\Adapter\Oracle');


I skąd ty do siedmiu piekieł masz wiedzieć że jakieś trolololo używane wszędzie w kodzie to adapter Oracle? Albo znasz super aplikację (która załóżmy była wcześniej rozwijana przez kogoś dwa lata), albo masz mega dokumentację. Jak żadnego to praktycznie leżysz i sobie humor psujesz. Częste używanie słów na K słabo działa na ogólne samopoczucie. Druga sprawa że jeśli ktoś był leniwy i nie chciało mu się dodawać:

  1. /* @var $db Db\Adapter\Oracle */

to masz jeszcze bardziej przechlapane.
Kolejną sprawą jest że praktycznie nie ma dobrego sposobu na dumpa takich kontenerów bo dostajesz całą masą rekurencji. DI jest też zazwyczaj potwornie wolne w działaniu.

PHP jako językowi brakuje podstaw do takich zabaw. To nie Java. Nie ma choćby adnotacji i od dłuższego czasu wszyscy się głowią czy je wprowadzić czy dalej udawać że te śmieszne, parsowane dodatkowo komentarze (co daje kolejny narzut i jeszcze wolniejsze wykonywanie) zostawić jak są czy w końcu coś z tym zrobić. IoC w takiej postaci jak teraz to zwyczajne "widzimisię". Inni mają to my też się pobawimy.
Go to the top of the page
+Quote Post

Posty w temacie
- Lechus   Ocena kodu OOP - rozwiazania   17.04.2014, 08:09:44
- - matix   No witaj, Na szybko, co zauważyłem (wieczorem dok...   18.04.2014, 11:06:55
- - skowron-line   - echo w metodzie - addItem zmien na add i niech z...   18.04.2014, 11:54:15
|- - Dejmien_85   Cytat(skowron-line @ 18.04.2014, 12...   18.04.2014, 23:05:46
- - viking   Cytat(matix @ 18.04.2014, 12:06:55 ) ...   19.04.2014, 06:47:53
|- - Dejmien_85   Cytat(viking @ 19.04.2014, 07:47:53 )...   19.04.2014, 09:27:24
- - destroyerr   @viking ale namieszałeś. Odnośnie przejmowania wię...   19.04.2014, 09:17:13
- - viking   @destroyerr To co pokazałeś to zwykłe rzutowanie t...   19.04.2014, 16:37:43
- - destroyerr   To właśnie mój kawałek kodu pokazuje czym jest DI....   19.04.2014, 19:06:42
- - Crozin   @viking: Trochę Cię zmartwię. To o czym piszesz to...   19.04.2014, 19:11:32
- - viking   To o czym piszę jest dokładnie implementacja DI we...   19.04.2014, 21:41:12
- - destroyerr   Ale Ty piszesz o implementacji kontenera/menedżera...   19.04.2014, 22:41:00
- - viking   Zdaję sobie sprawę że przydałby mi się urlop i moj...   20.04.2014, 06:24:34
- - Crozin   @viking: Jeszcze raz, wyjaśnijmy sobie proszę bard...   20.04.2014, 09:00:07
- - viking   W porządku. Jeśli potraktować sprawę w ten sposób ...   20.04.2014, 09:40:36
- - Crozin   Cytat[...] Jednak idei nie wprowadzimy w aplikacji...   20.04.2014, 10:06:56
- - JacekJagiello   Corzin, piszesz, że zapis typu: [PHP] pobierz, pla...   21.04.2014, 18:53:33
- - Crozin   Trochę większy przykład:[PHP] pobierz, plaintext c...   22.04.2014, 14:23:23
- - JacekJagiello   Właśnie, takie użycie kontenera rozpatrywałem w ko...   23.04.2014, 22:24:06
- - Ormin   Cytat(JacekJagiello @ 23.04.2014, 23:24...   25.04.2014, 15:20:56


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: 13.10.2025 - 18:59