-
Data: 2011-04-14 09:01:42
Temat: Re: Carnegie-Mellon przestaje uczyc programowania obiektowego
Od: Michal Kleczek <k...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]A. L. wrote:
> On Wed, 13 Apr 2011 00:08:15 -0700 (PDT), Mariusz Marszałkowski
> <m...@g...com> wrote:
>>
>>Dobrze powiedziane. Z tym ze "cos" to chyba zawsze techniki
>>obiektowe wnasza? Chocby szybsze odszukanie fragmentu kodu
>>do poprawki po dlugiej przerwie?
>>Pozdrawiam
>>
>
> Niekoniecznie. Prosze sobie wyobrazic aplikacja ktora ma 2 tysiace
> klas. Czy obiektowosc "ulatwia odnaleznienie kodu" raczej watpie.
> Uklul sie termin "spaghetti objects". Przedtem tzrena zrozumiec te 2
> tysiace klas - co one robie i jak ze soba wspolpracuja, zarowno
> statycznie jak i dynamicznie.
>
Zgadza sie, tyle ze to nie jest przypadlosc systemow OO - kazdy duzy system
jest trudny do ogarniecia niezaleznie od paradygmatu uzytego do jego budowy.
> Proponuje sie zastanowic skad sie wzial model obiektowy: wzial sie w
> jezyku Simula 67 ktory byl (mimo ze uniwersalny) przede wszystkm
> przeznaczony do SYMULACJI, a wiec strukturalnego odwzorowania
> rzecywiscosci w postaci programistycznych obiektow, oraz z metodologii
> "frames" w AI, gdzie motywacja byla podobna. I dzisiaj model
> obiektowy sprawdza sie doskonale gdy tzreba miec w komputerze
> odwzorowana sytuacje rzeczywiscta, a wiec wszelkiego rodzalu
> modelowaniu procesow, optymalizacji itede.
>
> Tym niemniej sa sytuacje gdy model obiektowy poasuje jak przyslowiowy
> "garbaty do sciany" - znajomy czlowiek stracil duzo czasu usilujac
> "obiektowo" napisac biblioteke do analizy sygnalow przy pomocy
> "wavelets" ("falek" po naszemu), skonczylo sie to wielkim wyrzucaniem
> do smeici i powrotem do czystego C. Nawet nie C++.
>
> Podwumowujac, obiektowosc to nie "silver bullet" ani kamien
> filozoficzny ale jedno z narzedzi w "toolboksie". Tzreba go uzywac
> wteny gdy sie nadaje, a nie uzywac jak sie nie nadaje. Podobnie jak
> budowniczy wie kiedy uzyc wietrarki a kiedy mlotka. Wiertarka, mimo ze
> bardziej elegancka niz mlotek, slabo nadaje sie do wbijania gwozdzi.
>
Wszystko to prawda, mysle jednak, ze trzeba wziac pod uwage jeszcze jeden
aspekt przy wyborze paradygmatu.
OO jest obok podejscia proceduralnego jedynym (?) paradygmatem, ktory
dorobil sie ogolnie znanych metodyk obejmujacych _pelny_ cykl zycia systemu.
Stad jego "oczywisty" wybor. Nie deprecjonujac innych paradygmatow - nie
spotkalem sie z odpowiednikiem np. metody Shlaer-Mellor (xtUML) lub SADT dla
paradygmatu funkcyjnego czy tez "logic programming". A juz tym bardziej
brakuje takich, ktore integrowalyby wiele paradygmatow w jedena spojna
calosc.
Jest nawet gorzej - nie istnieja nawet (w kazdym razie nie ogolnie
przyjete/znane) notacje graficzne pozwalajace opisywac systemy tworzone w
paradygmacie funkcyjnym czy logicznym (takie jak np. DFD, czy UML - przy
wszystkich wadach UMLa).
Dopoki takie metodyki, notacje i narzedzia sie nie pojawia inne paradygmaty
pozostana czysto akademickie lub moga stanowic jakies (inna sprawa - jakie)
uzupelnienie OO.
--
Michal
Następne wpisy z tego wątku
- 14.04.11 09:29 Michal Kleczek
- 14.04.11 10:39 Andrzej Jarzabek
- 14.04.11 12:41 p...@p...onet.pl
- 14.04.11 13:13 A.L.
- 14.04.11 13:14 Michal Kleczek
- 14.04.11 13:19 Michal Kleczek
- 14.04.11 13:50 kenobi
- 14.04.11 14:04 Paweł Kierski
- 14.04.11 14:21 Michal Kleczek
- 14.04.11 14:28 kenobi
- 14.04.11 14:55 A.L.
- 14.04.11 14:58 kenobi
- 14.04.11 15:12 Michal Kleczek
- 14.04.11 15:38 A.L.
- 14.04.11 16:49 jfs/fir
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 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
Najnowsze wątki
- 2025-01-08 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-08 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-08 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-08 Katowice => Key Account Manager (ERP) <=
- 2025-01-08 Warszawa => Programista Full Stack .Net <=
- 2025-01-08 Podłączenie DMA 8257 do 8085
- 2025-01-08 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-01-08 Warszawa => Solution Architect (Java background) <=
- 2025-01-08 Wrocław => Application Security Engineer <=
- 2025-01-08 Warszawa => International Freight Forwarder <=
- 2025-01-08 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-01-08 Lublin => Inżynier Serwisu Sprzętu Medycznego <=
- 2025-01-08 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-01-08 Gliwice => Business Development Manager - Network and Network Security
- 2025-01-08 Warszawa => Spedytor Międzynarodowy <=