eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingCarnegie-Mellon przestaje uczyc programowania obiektowegoRe: Carnegie-Mellon przestaje uczyc programowania obiektowego
  • Data: 2011-04-04 10:38:11
    Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
    Od: Sebastian Kaliszewski <s...@r...this.informa.and.that.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Norbert wrote:
    > Dnia Sat, 02 Apr 2011 00:49:08 +0200, Michoo napisał(a):
    >
    >>>> Moduly w Javie?... Gdzie?
    >>> A nie ma? Być może zmyliło mnie słowo kluczowe "import". ;)
    >> Import to takie "using (namespace)".
    >>
    >> Moduły to bardziej jar, które niestety mają spore ograniczenia.
    >
    > A taka "prawdziwa" modulowosc to czym sie objawia konkertnie?
    >

    Zobacz sobie jak wygląda rozwiązanie modułów (unit-ów) w Object Pascalu i
    jego poprzednikach jeszcze nie-object (dialekty Pascala wywodzące się
    jeszcze z Trubopascala (bodaj 3.0 lub nawet mniej.zero). Dziś to FPC i
    Delphi (daję ten przykład, bo stosunkowo wiele osób miało/ma styczność,
    łatwo dobrać się do opisów, dokumentacji, literatury i to bez barier
    językowych -- co niektórym rzecz ułatwia[*]).

    unit cośtam;

    interface ....
    implementation ....


    Na poziomie języka przyzwoity moduł ma dobrze określany interfejs i jest
    dobrze oddzielony od reszty kodu, tzn. z reszty kodu może sam z z
    siebie[**] korzystać tylko poprzez interfejsy innych modułów.

    To co nie jest udostępnione w interfejsie nie jest dostępne dla kodu spoza
    modułu (za wyjątkiem jakiś spyficznych tricków, ale nie zajmujemy ani nie
    interesujemy się tu rzeźbiarstwem). To jest podobne do tego, co znamy z OO
    z klasami (jest OO bez klas, gdzie jest już mniej podobne) ale do "nieco"
    czego innego służy i generalnie na innym poziomie struktury kodu działa.

    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

    pzdr
    \SK


    [*] - nieznajomość angielskiego to dla "człowieka programowania"
    upośledzenie, ale w dzisiejszych czasach robimy ułatwienia dla
    niepełnosprawnych :)
    [**] - poza korzystaniem "sam z siebie" może jeszcze korzystać z kodu
    przekazanego z zewnątrz explicite w czasie działania (runtime), czy to w
    postaci parametrów wywołań czy to wewnątrz przekazywanych (bezpośrednio
    lub pośrednio) struktur.


    --
    "Never underestimate the power of human stupidity" -- L. Lang
    --
    http://www.tajga.org -- (some photos from my travels)

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: