Wpis z mikrobloga

Jak programować obiektowo? cz. 9 – klasy abstrakcyjne "Po kilku artykułach przyszła w końcu pora na bardzo kontrowersyjną strukturę, a mianowicie na klasy abstrakcyjne. Dlaczego kontrowersyjna? Tak jak interfejsy, abstrakcje również dają programiście spore możliwości. Jednak w przeciwieństwie do interfejsów pozwalają one na wymieszanie implementacji oraz deklaracji kontraktu. Jest to powodem dziwnego zachowania u niektórych programistów, a mianowicie całkowicie unikają oni klas abstrakcyjnych."

#programowanie #php #webdev #webmastah
Pobierz normanos - Jak programować obiektowo? cz. 9 – klasy abstrakcyjne "Po kilku artykułach...
źródło: comment_PAFKYqg3eDAslZ8xKbBJsPlSttKtJahQ.jpg
  • 18
@saul: Trochę namieszałeś :P Zacznę od tego, że paradygmat proceduralny jest ściśle związany z paradygmatem imperatywnym, który z kolei jest przeciwieństwem deklaratywnego. Oprócz tego, paradygmaty deklaratywny i imperatywny są ortogonalne względem paradygmatu obiektowego. A to dlatego, że opisują one inne koncepcje: te pierwsze określają sposób definiowania i wykonywania kodu, a ten drugi sposób jego organizacji. Nie można zatem powiedzieć, że "deklaratywny to bardziej kod proceduralny niż obiektowy", ponieważ:
a) to imperatywny
@zajety_login: Rzeczywiście, pomieszałem imperatywny z deklaratywnym. Nie jestem przekonany co do organizowania kodu w paradygmacie obiektowym. Istotnie, organizujesz kod, umieszczając go w klasach, ale to samo można powiedzieć o proceduralnym. Organizujesz go korzystając z funkcji.
Ja sam nigdy nie patrzyłem na obiektowy kod w ten sposób (jako sposób na jego organizację). Raczej jako sposób na komunikację/wymianę informacji między obiektami. Deklaratywny oznacza, że deklarujesz coś. W ten sposób działa np IoC, a
Istotnie, organizujesz kod, umieszczając go w klasach, ale to samo można powiedzieć o proceduralnym. Organizujesz go korzystając z funkcji.


@saul: Pełna zgoda, jest dokładnie tak jak napisałeś: zarówno obiektowy jak i proceduralny definiują pewien sposób organizacji kodu. Różnica między nimi polega właśnie na tym silnym związku proceduralnego z imperatywnym (co wynika z definicji proceduralnego), od którego to związku uwolniony jest obiektowy. Tu już niestety wchodzimy na grząski grunt definicji, które moim