eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › David West: OOP is Dead
Ilość wypowiedzi w tym wątku: 112

  • 71. Data: 2014-02-19 12:01:39
    Temat: Re: David West: OOP is Dead
    Od: firr <p...@g...com>

    moge ew dodac jeszcze pytanie pomocnicze,

    od jakiegos czasu zaczalem podejrzewac (powiedzmy na 80% powaznie) ze sasada
    designowa oopu dla wielu
    przynajmniej ludzi brzmi "podziel i poopakowywuj kod w klasy po czym zrób zeby to
    jakos działało"

    ten omawiany przyklad moglby na przyklad pod to podchodzic

    - czy jest to prawda czy jednak są tu jakies dodatkowe ale konkretne 'wytyczne'
    (zasady jak ma to wygladac a jak nie) (*) (i czy sa to bardziej calosciowe zasady
    'pozytywne' tj mowiace jak ma to wygladac, czy raczej czesciowe zasady 'negatywne'
    mowiaca tylko czego nie robic, czy tez wogole nie ma zasad i jet to 'wolna
    amerykanka' ? ;D


    (*) JAKIE ?


  • 72. Data: 2014-02-19 14:32:53
    Temat: Re: David West: OOP is Dead
    Od: firr <p...@g...com>

    >
    > 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

    co do tego to jest to nie na temat, ale w c tez tak jest, tj program w c sklada sie z
    galezi i danym galeziom mozna przyporzadkowac dane (ktore tylko ta galaz moglaby
    czytac - mozna zrobic np dane statyczne na jakims poziomie a pzoniej ciagac w dol jak
    amazonke do tych podgalezi do ktorych trzeba (choc byloby to moze dosyc smieszne)) -
    problem jest nawet nie w skutkach ubocznych które mozna wyeliminowac tylko moze w tym
    ze te amazonki nie sa moze zbyt wygodne - tak naprawde wydaje sie ze np nie chodzi o
    to by tylko jedna galaz operowala na danych ale o to by kazda galaz zostawiala je w
    dobrze okreslonym 'zamknietym' stanie - z czym ja raczej nie mam problemu (byc moze
    to wogole moglobybyc podlozem pewnego paradygmatu, skoro te paradygmaty kodowania juz
    tak sie mnoża, paradygmatu fazowego, tj paradygmetu z zamknietymi fazami, a moze jest
    to cos innego niz paradygmat ale to stoi w
    jakims tam sensie u podnoza przyzwoitego programowania, podzial na zamkniete fazy


  • 73. Data: 2014-02-19 15:51:17
    Temat: Re: David West: OOP is Dead
    Od: A.L. <a...@a...com>

    On Wed, 19 Feb 2014 01:58:35 -0800 (PST), g...@g...com
    wrote:

    >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.

    Nie. Komponentyzacja, modularyacja i obiektowosc to deko inne koncpty

    A.L.


  • 74. Data: 2014-02-19 16:10:55
    Temat: Re: David West: OOP is Dead
    Od: A.L. <a...@a...com>

    On Wed, 19 Feb 2014 01:58:35 -0800 (PST), g...@g...com
    wrote:

    >
    >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)
    >

    Sorry, nonsens.

    >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.
    >

    Ze co?..

    >
    >Tak by wygladal mniej wiecej moj poglad na te kwestie.

    Proponuje jescze arz przemyslec.

    >Inna rzecz, ze programisci czy projektanci OOP stosuja
    >rozne wynalazki, ktorych nigdy nie rozumialem,

    No i wlasnei tu jest pogrzebany przyslowiowy pies. Proponuje
    powstrzymac sie od komentowania rzeczy ktorych sie nei rozumie

    A.L.


  • 75. Data: 2014-02-19 18:26:38
    Temat: Re: David West: OOP is Dead
    Od: g...@g...com

    W dniu środa, 19 lutego 2014 16:10:55 UTC+1 użytkownik A. L. napisał:
    > On Wed, 19 Feb 2014 01:58:35 -0800 (PST), g...@g...com
    > wrote:
    > >
    > >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)
    > >
    >
    > Sorry, nonsens.

    http://pl.wikipedia.org/wiki/Nonsens

    Proponowalbym zapoznanie sie ze znaczeniem slowa, ktorego
    chce sie uzyc, zanim zacznie sie nim szafowac na prawo i lewo.
    Sorry.

    > >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.
    > >
    >
    > Ze co?..

    http://mitpress.mit.edu/sicp/full-text/book/book-Z-H
    -10.html#%_sec_1.1.5
    oraz
    http://mitpress.mit.edu/sicp/full-text/book/book-Z-H
    -19.html#%_chap_3

    > >Tak by wygladal mniej wiecej moj poglad na te kwestie.
    >
    > Proponuje jescze arz przemyslec.

    Szanowny Panie.
    Jezeli ma Pan jakies konkretne zarzuty wzgledem tego,
    co napisalem, to prosze je sformulowac. Gdyby zechcial mi
    Pan dowiesc, ze w moich wypowiedziach znajduja sie jakies
    logiczne sprzecznosci albo merytoryczne niescislosci,
    to bylbym naprawde bardzo szczesliwy, gdyby zdolal je Pan
    wypunktowac. Jezeli jednak chce Pan uparcie utrzymywac,
    ze to, co pisze, to jest "kompletna bzdura", nie podajac
    przy tym zadnych uzasadnien, to prosze Pana laskawie o to,
    zeby dodal mnie Pan do swojego "KF" czy jak to Pan nazywa,
    poniewaz wszelka moja dotychczasowa dyskusja z Panem, pomimo
    jak najlepszych checi z mojej strony, jest jedna z najbardziej
    jalowych, w jakich kiedykolwiek mialem okazje uczestniczyc.

    > >Inna rzecz, ze programisci czy projektanci OOP stosuja
    > >rozne wynalazki, ktorych nigdy nie rozumialem,
    >
    > No i wlasnei tu jest pogrzebany przyslowiowy pies. Proponuje
    > powstrzymac sie od komentowania rzeczy ktorych sie nei rozumie

    Zostalem zapytany, wiec udzielilem odpowiedzi.
    Jezeli z czyms sie Pan nie zgadza, to prosze powiedziec,
    z czym konkretnie, a moze wowczas uda sie nam jakos dojsc
    do porozumienia. Niestety nie jestem tak genialny jak Pan
    i nie mam bezposredniego wgladu w istote rzeczy, w zwiazku
    z czym musze sie w swoim poznaniu poslugiwac takimi (zapewne
    Panu obcymi, z tego przynajmniej, co zdazylem zauwazyc)
    ulomnymi technikami, jak rozumowanie czy argumentacja.


  • 76. Data: 2014-02-19 20:20:36
    Temat: Re: David West: OOP is Dead
    Od: A.L. <a...@a...com>

    On Wed, 19 Feb 2014 09:26:38 -0800 (PST), g...@g...com
    wrote:

    >Zostalem zapytany, wiec udzielilem odpowiedzi.
    >Jezeli z czyms sie Pan nie zgadza, to prosze powiedziec,
    >z czym konkretnie, a moze wowczas uda sie nam jakos dojsc
    >do porozumienia. Niestety nie jestem tak genialny jak Pan
    >i nie mam bezposredniego wgladu w istote rzeczy, w zwiazku
    >z czym musze sie w swoim poznaniu poslugiwac takimi (zapewne
    >Panu obcymi, z tego przynajmniej, co zdazylem zauwazyc)
    >ulomnymi technikami, jak rozumowanie czy argumentacja.

    rzeczywiscie, powstrzymam sie od komentowania. Zzajeloby mi zbyt duzo
    czasu ktorego nei mam.

    Proponuje wyjsc poza SICP i poczytac wiecej. N poczatek Clemensa
    Szyperskiego, na przykald

    http://research.microsoft.com/en-us/um/people/cszype
    rs/pub/ecoop92.pdf

    czy tez jego ksiazke na temat komponentyzacji i obiektow.

    SICP jest dsyc zlezala i trudnia ja dzis traktwoac jako solidne
    zrodlo. Zreszta, fragmenty ktore Pan cytowal niespecjalnie maja sie do
    tego co Pan napisal.


    A.L.


  • 77. Data: 2014-02-20 04:19:30
    Temat: Re: David West: OOP is Dead
    Od: A.L. <a...@a...com>

    On Wed, 19 Feb 2014 01:58:35 -0800 (PST), g...@g...com
    wrote:

    >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)

    Zarowno hermetyzacja jai i polimorfizm nic nie maja ze soba wspolnego
    ani nic nie maja wspolnego z obiektowoscia. Owszem, sa w jezykach OO
    uzywane, ale powstaly zupelnie neizaleznie

    "Hermetyzacja" ustala reguly dostepu do zmiennych i procedur. Istnieje
    od dosyc dawna; w pelni uzyta pierwszy raz w jezyku Modula-2 Wirtha.
    Jezyk definiowal "moduly" i reguly dostepu do nich. Pdobnai Ada
    definiwala "packages" - pakiety, i reguly dostepu do nich. Bylo to na
    dlugo pzred OO

    Polimorfizm mowi z grubsza o operacjach ktore moba byc zaaplikowane do
    zmiennych roznych typow, przy czym wlasciwa implementacja wybierana
    jest automatycznie, stosownie do tych typow.

    Operacja + w jezyku takim jak Pascal jest polimorficzna, bo dodawac
    moze zmienne roznych typow, a procedura dodawania bedzie wybrana
    wlasciwie.

    Polimorfizm to rozneiz generics w Javie i templates w C++. Taki
    polimorfizm nazywa sie "polimorfizmem parametrycznym"

    W OO polimorfizm jest taki jak polimorfizm + w Pascalu: metoda moze
    byc deklarowana wielokrotnie w ciagu klas tworzacych ciag
    dziedziczenia; implementacja bedzie wybierana stosownei do
    dynamicznego typu obiektu

    Polimorfizm nic nie mowi o "zastepowaniu klas".

    Tak na marginesie, interfejs nei okrecla calkowicie zachowanai modulu;
    moduly o identycznych interfejsach nie musza byc identyczne

    A.L.


  • 78. Data: 2014-02-20 04:27:59
    Temat: Re: David West: OOP is Dead
    Od: A.L. <a...@a...com>

    On Wed, 19 Feb 2014 01:58:35 -0800 (PST), g...@g...com
    wrote:

    >Wydaje mi sie, ze jezeli chce sie stworzyc system bazujacy
    >na jakiejs persystencji, to stosowanie analizy obiektowej
    >jest jak najlepszym pomyslem.

    Persystencja (persistency) to zdolnosc do zachowanai stanu obiektu
    dluzej niz czas zycia obiektu. Generalnie, przez persistency rozumie
    zsie zdolnosc zachowanai stanu obiektu na mozniku zewnetrznym (baza
    danych).

    Obiekty neispecjalnie dobzre realizujaten koncept - wymagaja
    serializacji oarz pzreksztalcenia do rozmatu dododnego dla bazy danych
    (relacyjnego). Model obiektowy i relacyjny nei bardzo do siebie
    pasuja, i realizacja "persistency" najezona jest trudnosciami. OO
    wcale nie jest do tego najlepsze

    A.L.


  • 79. Data: 2014-02-20 04:30:11
    Temat: Re: David West: OOP is Dead
    Od: A.L. <a...@a...com>

    On Wed, 19 Feb 2014 01:58:35 -0800 (PST), g...@g...com
    wrote:

    >(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)

    Szczegolnie dobrze sie ten postulat realizuje gdy w grupie jest 20
    programistow a system ma 5 milionow linii kodu

    A.L.


  • 80. Data: 2014-02-20 07:42:13
    Temat: Re: David West: OOP is Dead
    Od: toslaw <s...@n...4u.pl>

    A.L <a...@a...com>:
    > On Wed, 19 Feb 2014 01:58:35 -0800 (PST), g...@g...com
    > wrote:
    >
    > >Wydaje mi sie, ze jezeli chce sie stworzyc system bazujacy
    > >na jakiejs persystencji, to stosowanie analizy obiektowej
    > >jest jak najlepszym pomyslem.
    >
    > [...]
    > Obiekty neispecjalnie dobzre realizujaten koncept - wymagaja
    > serializacji oarz pzreksztalcenia do rozmatu dododnego dla bazy danych
    > (relacyjnego). Model obiektowy i relacyjny nei bardzo do siebie
    > pasuja, i realizacja "persistency" najezona jest trudnosciami. OO
    > wcale nie jest do tego najlepsze

    Tak zapytam z ciekawości, jaki jest najlepszy (najwygodniejszy?) sposób na
    zachowywanie obiektów w nośniku stałym (plik, baza danych, etc)?

    Konkretnie pytam o technikę `serializacji' klasy, aby jej stan móc zrzucić, a
    potem przywrócić w późniejszym czasie, który uważany jest za `najbardziej
    poprawny', i jeśli OO nie jest do tego najlepsze, to co jest?

    (nie sugeruję, że uważam, że OO jest do tego najlepsze)

strony : 1 ... 7 . [ 8 ] . 9 ... 12


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: