eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingCo dolega programowaniu obiektowemu › Re: Co dolega programowaniu obiektowemu
  • X-Received: by 2002:a05:620a:16c6:: with SMTP id a6mr24464023qkn.140.1576443918437;
    Sun, 15 Dec 2019 13:05:18 -0800 (PST)
    X-Received: by 2002:a05:620a:16c6:: with SMTP id a6mr24464023qkn.140.1576443918437;
    Sun, 15 Dec 2019 13:05:18 -0800 (PST)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!goblin2!goblin1
    !goblin.stu.neva.ru!g89no6556895qtd.0!news-out.google.com!w29ni1543qtc.0!nntp.g
    oogle.com!g89no6556888qtd.0!postnews.google.com!google-groups.googlegroups.com!
    not-for-mail
    Newsgroups: pl.comp.programming
    Date: Sun, 15 Dec 2019 13:05:18 -0800 (PST)
    In-Reply-To: <4...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: google-groups.googlegroups.com; posting-host=5.172.255.2;
    posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
    NNTP-Posting-Host: 5.172.255.2
    References: <5df64b3a$0$505$65785112@news.neostrada.pl>
    <8...@g...com>
    <0...@g...com>
    <4...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <3...@g...com>
    Subject: Re: Co dolega programowaniu obiektowemu
    From: fir <p...@g...com>
    Injection-Date: Sun, 15 Dec 2019 21:05:18 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Xref: news-archive.icm.edu.pl pl.comp.programming:214563
    [ ukryj nagłówki ]

    W dniu niedziela, 15 grudnia 2019 21:57:06 UTC+1 użytkownik fir napisał:
    > W dniu niedziela, 15 grudnia 2019 21:29:46 UTC+1 użytkownik fir napisał:
    > > W dniu niedziela, 15 grudnia 2019 19:36:12 UTC+1 użytkownik M.M. napisał:
    > > > On Sunday, December 15, 2019 at 4:03:24 PM UTC+1, Borneq wrote:
    > > > > Yegor Bugayenko - What's Wrong with Object-Oriented Programming?
    > > > > https://www.youtube.com/watch?v=GMrjuuczZkQ
    > > > > EO, the Programming Language: https://github.com/yegor256/eo
    > > >
    > > > Myślałem że programowanie obiektowe to sam lukier. Mogę poprosić o kilka
    > > > zdań skrótu z sedna tych materiałów?
    > > >
    > >
    > > rzucilem na to okiem ale te argumenty tam nie sa nieststy zbyt kluczowe, sa to
    pewne dalsze argumenty opowiadajace jak praktyczny OOP rozmija sie z teoretycznym OOP
    (zakladajac troche blednie ze teoretyczne oop jest dobre - zalezy co by to mialo byc)
    i jest kilka smiesznych cytatow znanych figur, ze np OOP jest solidnym sposobem do
    pisania sphagetti code, czy tez jest sposobem na pisanie solidnego sphagetti (co jest
    prawdą jesli rozumiec solidny dosyc metaforycznie)
    > >
    > > bardziej poprawnym argumentem na krytykowanie dlaczego opp to szit jest moim
    zdaniem powiedzenie ze oop to sposob na tworzenie 'boilerplate' code i ze nie
    upraszcza tylko gmatwa - a jeszze dokladniej mowiac to w OOP jest zle co oddziela go
    od programowanie modulowego i hipermodulowego (hipermodulowe to moj wlasny wynalazek)
    bo modulowosc (taka jak np w postaci .dll jest pozbawiona tych fundamentalnych wad)
    > >
    > > [jeszcze dopowiadajac co jest zle w OOP wiaze sie z ciaganiem wskaznikow bo
    normalnie jesli chcesz dzilic kod na jednostki (metodami modulowymi i
    hipermodulowymi) nei potrzebujesz ciagac zadnych wskaznikow i wtedy jest ok)
    >
    > kiedys podawalem jak rozne rzeczy wygladaja w paradygmacie ktory nazywam
    hipermodulowym (mojego autorstwa/odkrycia/wymyslu):
    >
    >
    >
    >
    > void main()
    > {
    > Character alan, barry; //dwa moduly
    >
    > alan.hp = 100; //zdrowie potaci
    > alan.hit_strength = 10; //sila ciosu
    >
    > barry .hp = 110;
    > barry.hit_strenght = 9;
    >
    > alan hit barry;


    przy okazji tutaj wyzej to allan hit barry jak ktos by sie upieral moglby zapisac

    alan.hit(barry)

    (w poprawionym c przekazujesz struktury moduly przez adres implicite, tak ze barry
    nie idzie przez wartosc) ale tez w poprawionym c doszedlem do koncepcji ze
    te kropki nawiasy i przecinki mozna dawac opcjonalnie do wyboru dla programisty
    n zamiast pisac

    print(1,2,3);
    moze alternatywnie pisac
    print 1,2,3
    print(1 2 3)
    albo
    print 1 2 3

    tak ze z tego wynika ze mozna pisac najprawdopodobniej w uproszczeniu

    barry hp = 110
    barry hit_strenght = 9

    alan hit barry

    jak ktos chce porownac roznice miedzy tym a jakims OOPem w jawie czy c++ to moze
    sobie porownac w tym alebo w bardziej skomplikowanych wypadkach

    (dodam ze w u mnie mozna z modulow robic tablice np

    Character soldier[100];

    soldier[3] hit soldier[4];

    i reszte sztuczek z traktowaniem modulow w pelni jak typy wbudowane (np int i reszta)




    > //spowoduje barry.hp-=alan.hit_strength
    >
    > }
    >
    > gdzie definicja modulu Charater
    >
    >
    > module Character
    > {
    > int hp;
    > int hit_strenght;
    >
    > void hit(Charater whom)
    > {
    > whom.hp -= hit_strength;
    > }
    > }
    >
    > roznice miedzy OOP 'niby nie takie duze' ale jednak ogromne...

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

  • 15.12.19 22:13 fir
  • 16.12.19 23:51 M.M.

Najnowsze wątki z tej grupy


Najnowsze wątki

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: