eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingCarnegie-Mellon przestaje uczyc programowania obiektowegoRe: Carnegie-Mellon przestaje uczyc programowania obiektowego
  • Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.PO
    STED!not-for-mail
    From: Paweł Kierski <n...@p...net>
    Newsgroups: pl.comp.programming
    Subject: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Date: Mon, 04 Apr 2011 14:45:10 +0200
    Organization: http://onet.pl
    Lines: 37
    Message-ID: <incegm$64h$1@news.onet.pl>
    References: <1...@4...com>
    <4d9232b8$0$2487$65785112@news.neostrada.pl>
    <o...@4...com>
    <h...@4...com> <imvgi6$3p9$1@news.onet.pl>
    <s...@c...tac>
    <c...@4...com>
    <2...@c...tac> <in5kp4$5r5$1@news.onet.pl>
    <in5ua3$1kk$1@news.onet.pl> <g...@b...softax.pl>
    <inc99j$gra$1@news.onet.pl> <d...@4...com>
    NNTP-Posting-Host: 195.182.34.201
    Mime-Version: 1.0
    Content-Type: text/plain; charset=ISO-8859-2; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: news.onet.pl 1301921110 6289 195.182.34.201 (4 Apr 2011 12:45:10 GMT)
    X-Complaints-To: n...@o...pl
    NNTP-Posting-Date: Mon, 4 Apr 2011 12:45:10 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.15) Gecko/20110303
    Thunderbird/3.1.9
    In-Reply-To: <d...@4...com>
    Xref: news-archive.icm.edu.pl pl.comp.programming:189667
    [ ukryj nagłówki ]

    W dniu 2011-04-04 13:28, Grzegorz Krukowski pisze:
    [...]
    >>> Stąd zarówno rozwiązania z C++ z jednej strony (przestrzenie nazw i
    >>> jednostki kompilacji) jak i z Javy z drugiej (pakiety i jednostki
    >>> kompilacji ograniczone do jednej publicznej klasy) to tylko
    >>> fragmentaryczne, niekompletne kawałki.
    >>>
    >>> Mam nadzieję, że nieco wyjaśniłem
    >>
    >> Pomijając na razie kwestie łatwości zapisu i czytelności - nie widzę tu
    >> niczego, czego nie dałoby się wyrazić w C++ za pomocą przestrzeni nazw
    >> i jednostek kompilacji. Na tej samej zasadzie w C++ nie ma słowa
    >> interface, ale daje się go dobrze wyrazić za pomocą klasy wyłącznie
    >> z metodami tylko abstrakcyjnymi.
    >
    > Tak, ale twoja modularyzacja opiera się na systemie typów: z jednej
    > strony musisz w nim zawrzeć taką strukturę która odzwierciedla logikę
    > modelowanego bytu, z drugiej strony logikę modułów. Obydwie te logiki
    > mogą nie mieć ze sobą nic wspólnego, to raz, dwa że struktura
    > dziedziczenia robi się zbyt skomplikowana.
    > Jeżeli używasz modułów to obie te części są całkowicie niezależne, nie
    > mieszasz ze sobą logiki modelu z logiką konstrukcji programu co jest
    > niebagatelną zaletą.

    Modułem mogę uczynić wiele klas zamykając je w przestrzeń nazw
    i oddzielną bibliotekę. Tak - tu wychodzą "szwy": nie da się zupełnie
    ukryć interfejsów "wewnętrznych" klas modułu, czyli mamy trochę
    obiektowość w C.

    Chyba, że sensowne w ramach modułu jest cięcie "w poprzek" klasy. Wtedy
    istotnie się nie da. Cięcie przez hierarchie dziedziczenia też są
    niezbyt miłe (co przy okazji pokazuje gdzie powinna być agregacja,
    a nie dziedziczenie).

    --
    Paweł Kierski
    n...@p...net

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

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: