-
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)
Następne wpisy z tego wątku
- 04.04.11 11:02 Sebastian Kaliszewski
- 04.04.11 11:05 Sebastian Kaliszewski
- 04.04.11 10:57 Sebastian Kaliszewski
- 04.04.11 11:15 Paweł Kierski
- 04.04.11 11:28 Grzegorz Krukowski
- 04.04.11 12:37 Maciej Sobczak
- 04.04.11 12:45 Paweł Kierski
- 04.04.11 12:56 Maciej Sobczak
- 04.04.11 13:01 Paweł Kierski
- 04.04.11 14:53 A.L.
- 05.04.11 06:20 Andrzej Jarzabek
- 05.04.11 07:41 Sebastian Kaliszewski
- 05.04.11 07:52 Paweł Kierski
- 06.04.11 14:14 Andrzej Jarzabek
- 06.04.11 17:31 Zbigniew Malec
Najnowsze wątki z tej grupy
- 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
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-24 Czy Sejm RP zahamuje proceder zabijania dla organów?
- 2024-11-24 Aby WKOOOORWIĆ ekofaszystów ;-)
- 2024-11-22 OC - podwyżka
- 2024-11-22 wyszedł z domu bez buta
- 2024-11-22 Bieda hud.
- 2024-11-24 DS1813-10 się psuje
- 2024-11-23 Białystok => Inżynier bezpieczeństwa aplikacji <=
- 2024-11-23 Szczecin => QA Engineer <=
- 2024-11-23 Warszawa => SEO Specialist (15-20h tygodniowo) <=
- 2024-11-22 Warszawa => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-11-22 Warszawa => Senior Account Manager <=
- 2024-11-22 Warszawa => Key Account Manager <=
- 2024-11-22 Warszawa => DevOps Specialist <=
- 2024-11-22 Kraków => IT Expert (Network Systems area) <=
- 2024-11-22 Warszawa => Infrastructure Automation Engineer <=