-
X-Received: by 10.140.105.54 with SMTP id b51mr16049qgf.29.1392805833569; Wed, 19 Feb
2014 02:30:33 -0800 (PST)
X-Received: by 10.140.105.54 with SMTP id b51mr16049qgf.29.1392805833569; Wed, 19 Feb
2014 02:30:33 -0800 (PST)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.nask.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.glorb.com!c
10no31002107igq.0!news-out.google.com!dr7ni182qab.1!nntp.google.com!f11no240895
15qae.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Wed, 19 Feb 2014 02:30:33 -0800 (PST)
In-Reply-To: <b...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=93.154.243.201;
posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
NNTP-Posting-Host: 93.154.243.201
References: <ldaa9r$3j5$1@speranza.aioe.org>
<9...@g...com>
<52fccceb$0$2362$65785112@news.neostrada.pl>
<6...@g...com>
<52fceef0$0$2140$65785112@news.neostrada.pl>
<1...@g...com>
<ldv7fu$3vq$1@dont-email.me>
<6...@g...com>
<a...@g...com>
<ldvj3g$28c$1@dont-email.me>
<6...@g...com>
<ldvqkt$bnu$1@dont-email.me>
<4...@g...com>
<c...@g...com>
<2...@g...com>
<d...@g...com>
<e...@g...com>
<le0d01$46k$1@dont-email.me>
<b...@g...com>
<le1kk8$flv$1@dont-email.me>
<4...@g...com>
<b...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <a...@g...com>
Subject: Re: David West: OOP is Dead
From: firr <p...@g...com>
Injection-Date: Wed, 19 Feb 2014 10:30:33 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:205200
[ ukryj nagłówki ]W dniu środa, 19 lutego 2014 10:58:35 UTC+1 użytkownik g...@g...com napisał:
> W dniu środa, 19 lutego 2014 09:41:57 UTC+1 użytkownik firr napisał:
>
> >
>
> > wydaje mi sie ze mozliwosci scislej przedmiotowej
>
> > i konkretnej rozmowy sie tu mw wyczerpaly a w gadanie
>
> > na poziomie bajek o pikselach i prostokatach i 11
>
> > klientach z kapadocji jest troche nie dla mnie
>
> >
>
> > rozumiem tez ze nie jestes nieststy rzecznikiem
>
> > opu tak ze nie umialbys odpowiedziec na moja pytania
>
> > ktore ew komus kto by za takiegop rzecznika mogl robic
>
> > moglbym jeszcze zadac, a brzmialyby one tak:
>
> >
>
> > jak rozumiem sensem tego sposobu pisania jest
>
> > wytworzenie w programie siatki obiektów które
>
> > wzajemnie widza sie poprzez poustawiane jako
>
> > swoje pola referencje, TAK CZY NIE?
>
> >
>
> > jezeli nie to o co chodzi jesli nie o to a jezeli
>
> > tak, to jak rzecznik opu ustosunkowywuje sie do tego
>
> > ze oprócz takiego wypracowanego w koncu grafu
>
> > objektów (który moglbym zrozumiec) w takim oopie
>
> > funkcjonuje (chyba na zasadzie wysypiska na smieci)
>
> > drugi poziom gdzie dane obiekty nie sa zawieszone w
>
> > czystej prózni ale poosadzane w roznych zakamarkach
>
> > kodu i jeszcze do tego ich setup i konfiguracja
>
> > jest tez nieczysto uwikłany w cały code-flow
>
> >
>
> > innymi slowy czy ta zewnetrzna warstwa opu stanwi
>
> > dla wyznawcow opu jakas atrakcje sama w sobie
>
> > (gdzie upatruja jakichs mozliwosci robienia czegos
>
> > ciekawego) czy jest tylko odrzutem potrzebnym do
>
> > ustawienia grafu obiektów?
>
> >
>
> > moze zapytam o to na innym forum - choc nie interesuje
>
> > mnie to szczerze mowiac za bardzo
>
> >
>
> > jako ze to nie jest moja działka, moglbym sie
>
> > dowiadywac tylko z ciekawosci jak ci zwolennicy opu
>
> > to widzą
>
> >
>
> > albo moze uzytkownik gode by umial na to odpowiedziec?
>
> > (o ile uzywa opu bo juz
>
> > nie pamietam) - jesli rozumie co mam na mysli
>
> > piszac o wewnetrznej i zewnetrznej stronie opu
>
>
>
> Nie jestem pewien, czy rozumiem. Ale wydaje mi sie, ze
>
> celem OOP jest przede wszystkim podzial oprogramowania
>
> na komponenty, z ktorych kazdy posiada okreslone
>
> kompetencje. Ten podzial manifestuje sie zarowno w kodzie
>
> zrodlowym (w jezykach wspierajacych obiekty poprzez
>
> uzycie klas albo prototypow), jak i w samej analizie,
>
> tj. sposobie myslenia o problemie.
>
>
>
> W kontekscie OOP czesto mowi sie o "polimorfizmie",
>
> "hermetyzacji (=enkapsulacji)" i "dziedziczeniu".
>
>
>
> Zaczne od ostatniego pojecia, gdyz wydaje mi sie
>
> najbardziej uzyteczne. Idzie o to, ze tak jak klasy
>
> odpowiadaja pojeciom, a obiekty -- bytom, stwierdzenie
>
> "X dziedziczy po Y" mozna rozumiec jako taksonomiczne
>
> "X jest rodzajem Y". (W kontrascie do dziedziczenia
>
> mowi sie tez o agregacji, gdy w definicji klasy
>
> wystepuje pole majace przechowywac obiekt innej
>
> klasy; taka sytuacja partonomicznemu "Y sklada sie
>
> [m.in.] z X")
>
>
>
> Moim zdaniem dobrze jest moc wyrazac te relacje w jezyku.
>
>
>
> Jezeli idzie o pojecia hermetyzacji i polimorfizmu,
>
> to sa one ze soba zwiazane. Hermetyzacja to idea, ze
>
> szczegoly implementacyjne zwiazane z jakims zagadnieniem
>
> ukrywa sie za publicznym, dobrze okreslonym interfejsem.
>
> Polimorfizm zas, to taki pomysl, ze jezeli mamy rozne
>
> klasy, ktore implementuja ten sam interfejs, to mozna
>
> ich uzywac w takim samym kontekscie (sa ze soba zastepowalne
>
> -- moze nie w sensie funkcjonalnosci, ale w sensie mozliwego
>
> uzycia)
>
>
>
> I co do tych kwestii, to mam juz nieco wiecej zastrzezen.
>
> Po pierwsze, idea hermetyzacji moze byc odebrana jako
>
> komunikat do programisty: "masz tylko zaimplementowac
>
> taki-a-taki interfejs. Jezeli masz przy tym smietnik
>
> w swoim kodzie, nie interesuje nas to". Czyli sama hermetyzacja
>
> nie jest wytyczna dotyczaca tego, jak nalezy pisac kod.
>
>
>
> Po drugie, czasem bywa tak, ze koniecznosc zastosowania
>
> wymienionych tu mechanizmow obiektowych wynika stad, ze
>
> tworca programu nie udostepnia swojego kodu zrodlowego.
>
> W tej sytuacji, zeby dalo sie w ogole z systemem
>
> wspolpracowac, rzeczywiscie podstawa sa dobrze zaprojektowane
>
> interfejsy, ale w wielu wypadkach cena jest taka, ze
>
> system jest duzo bardziej zlozony, niz moglby byc.
>
> (A i tak zawsze bedzie mniej elastyczny niz wowczas,
>
> gdy po prostu udostepni sie dobrze napisany kod zrodlowy
>
> -- bo jego elastycznosc bedzie tylko tak duza, na ile
>
> pozwolila wyobraznia jego tworcow)
>
>
>
> Wydaje mi sie, ze jezeli chce sie stworzyc system bazujacy
>
> na jakiejs persystencji, to stosowanie analizy obiektowej
>
> jest jak najlepszym pomyslem. Jednak jezeli tylko mozna
>
> unikac stanow mutowalnych (przypisan, zmiany wartosci
>
> zmiennych -- you name it), to najlepiej pisac jak najwieksze
>
> polacie systemu czysto funkcyjnie, bo taki kod jest duzo
>
> prostszy w analizie, bo analizujac jego przebieg, nie trzeba
>
> zapamietywac wartosci zmiennych.
>
>
>
> (Mozna tez sie spotkac w srodowiskach funkcyjnych z bardziej
>
> radykalnymi pomyslami. Programisci Haskella, a zdaje sie, ze
>
> rowniez autorzy ksiazki o programowaniu gier w Rackecie
>
> "How to design worlds" prezentuja takie podejscie, ze sercem
>
> projektu gry powinna byc "czysta" funkcja, ktora pobiera biezacy
>
> stan swiata + sterowanie, i zwraca nowy stan swiata. Ciekawy
>
> wydaje sie tez pomysl "functional reactive programming", ale
>
> przyznam, ze jeszcze w calosci go nie zglebilem)
>
>
>
> Tak by wygladal mniej wiecej moj poglad na te kwestie.
>
> Inna rzecz, ze programisci czy projektanci OOP stosuja
>
> rozne wynalazki, ktorych nigdy nie rozumialem, albo ktore
>
> wydawaly mi sie zawsze niepotrzebnym komplikowaniem prostych
>
> rzeczy (jak np. schematy UML czy tzw. "wzorce projektowe").
no dobra widze ze nie jestem rozumiany,
mi chodzilo o to by jakis jaki taki znawca opu
zrozumial to co nazywam wewnetrzna strona opu
(na ktora skladaja sie ciała obiektów polaczonych
wzajemnymi referencjami 'przez wskaznik')
(ta wewnetrzna strona opu przypomina troche system
modułowy) - i to co nazywam zewnetrzna strona opu
(czyli ten smutny fakt ze objektowa siatka
jest jeszcze jakos tam instancjonowana i konfigurowana - ale niewazne, zebym mogl tu
cos
pogadac to chyba musialbym miec wiecej konkretnych
przykladów programow napisanych w oop i popatrzec na
te architektury , moze kiedys popatrze, na razie nie
mam chyba specjalnej checi
Następne wpisy z tego wątku
- 19.02.14 12:01 firr
- 19.02.14 14:32 firr
- 19.02.14 15:51 A.L.
- 19.02.14 16:10 A.L.
- 19.02.14 18:26 g...@g...com
- 19.02.14 20:20 A.L.
- 20.02.14 04:19 A.L.
- 20.02.14 04:27 A.L.
- 20.02.14 04:30 A.L.
- 20.02.14 07:42 toslaw
- 20.02.14 07:58 g...@g...com
- 20.02.14 08:27 g...@g...com
- 20.02.14 10:27 g...@g...com
- 20.02.14 10:30 firr
- 20.02.14 10:43 firr
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2024-12-30 Białystok => Full Stack .Net Engineer <=
- 2024-12-30 Białystok => Analityk w dziale Trade Development (doświadczenie z Po
- 2024-12-30 Gdańsk => Software .Net Developer <=
- 2024-12-30 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-12-30 Białystok => Programista Full Stack (.Net Core) <=
- 2024-12-30 Moduł BT BLE 5.0
- 2024-12-30 Łódź => Application Security Engineer <=
- 2024-12-30 Lublin => Inżynier bezpieczeństwa aplikacji <=
- 2024-12-30 Nowy Outlander PHEV w PL
- 2024-12-30 Warszawa => Key Account Manager <=
- 2024-12-30 Katowice => Key Account Manager (ERP) <=
- 2024-12-28 Śmiechu KOOOOOOPA ;-)
- 2024-12-29 Pomiar amplitudy w zegarku mechanicznym
- 2024-12-28 Antyradar
- 2024-12-28 Deweloper przegral w sadzie musi zwrócic pieniądze Posypia sie kolejne pozwy?