-
Data: 2013-02-13 10:29:37
Temat: Re: Jakie typowanie jest najlepsze i dlaczego statyczne?
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu środa, 13 lutego 2013 06:31:15 UTC+1 użytkownik Andrzej Jarzabek napisał:
> Chodzi o to, że użyjesz kontenerów asocjacyjnych?
Będzie to jakiś słownik.
> Większe problemy masz
> takie:
>
> * używasz dwóch konstrukcji językowych (struct/class lub hashtable) do
> tego samego celu
To nie jest ten sam cel - obiekty istniejące na granicy modułów (podobnie na granicy
z DB) to inne cele i w tych miejscach jestem gotowy na inne konwencje.
> >> Nie jest. Prosty przykład - w C++ nawet niewielka zmiana definicji
> >> typu danych między biblioteką a programem z niej korzystającym
> >> może spowodować spektakularne wylecenie wszystkiego w powietrze.
>
> > Na moim komputerze kompilator pokaże, gdzie nastąpiła niezgodność.
>
> Naprawdę? Jak nowa wersja execa spróbuje załadować starą DLL-kę?
Nie wierzę, że sobie takiego gola strzelasz.
DLL-ki nie są częścią C++ a ich wsparcie to trick ze strony systemu operacyjnego.
Jeżeli wychodzisz poza język po to, żeby nie korzystać z jego zalet, to nie miej
pretensji, że coś nie działa.
DLL-ki to właśnie metoda na dynamiczność w programie. Czy sugerujesz, że języki
statyczne są do dupy, bo jak się je omija i używa dynamicznych tricków, to nie
działają dobrze?
No, nie działają.
> > class CannotCompare {}
>
> > TreeSet s = new TreeSet(); // 1
> > s.add(new CannotCompare()); // 2 s.add(new CannotCompare()); // 3
>
> > W języku statycznym powyższe nie ma prawa się skompilować. W Adzie
>
> Bzdura. Język statycznie typowany może w ogóle nie mieć generyków.
Tym bardziej się nie skompiluje... :-p
> W
> języku statycznie typowanym możesz mieć nawet:
>
> TreeSet s = new TreeSet();
> s.add(new CannotCompare());
>
> [...]
To nie jest język statycznie typowany, nawet jeśli tak ma napisane na pudełku.
> > W tym przykładzie Java zachowuje się dokładnie jak skryptowy język
> > dynamiczny.
>
> int i=3;
> i=5;
>
> W tym momencie C++ zachowuje się dokładnie jak skryptowy język
> dynamiczny. Zatem jest językiem dynamicznym.
Nie. Nie mógłbyś zrobić i="x"; Zatem słaby argument.
> Dodatkowo od dynamicznego języka wymagałbym
Ale ja nie twierdzę, że Java ma wszystkie cechy takich języków.
Natomiast od języka statycznego wymagam, żeby kod, który nie może się poprawnie
wykonać ze względu na *nieistnienie jakiejś funkcji*, która na pewno będzie zawołana,
się nie kompilował. Java tego wymagania nie spełnia.
--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com
Następne wpisy z tego wątku
- 13.02.13 14:00 Michal Kleczek
- 13.02.13 14:56 Piotr Chamera
- 13.02.13 16:50 AK
- 13.02.13 18:55 Andrzej Jarzabek
- 13.02.13 19:09 AK
- 13.02.13 23:25 Maciej Sobczak
- 14.02.13 09:18 Andrzej Jarzabek
- 14.02.13 10:22 Maciej Sobczak
- 14.02.13 11:11 firr kenobi
- 14.02.13 23:57 Andrzej Jarzabek
- 15.02.13 01:08 Andrzej Jarzabek
- 15.02.13 09:20 firr kenobi
- 15.02.13 10:37 Maciej Sobczak
- 15.02.13 10:59 Maciej Sobczak
- 15.02.13 11:20 AK
Najnowsze wątki z tej grupy
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
Najnowsze wątki
- 2025-05-18 Wiceminister "sprawiedliwości" A. Myrcha złamał ciszę wyborczą [rzepa]
- 2025-05-17 Głosowanie na prezydenta mDowód
- 2025-05-17 Karol i Patrycja - a może wielka miłość jak Romeo i Julia
- 2025-05-17 Re: Pamientajta, aby zamknÄ Ä ryje, bo jest cisza wyborcza, a co powiecie
- 2025-05-17 Phishing obok nas.
- 2025-05-17 poznaj siłe swoich pieniędzy
- 2025-05-17 Warszawa => Senior IT Recruitment Consultant <=
- 2025-05-17 Warszawa => DevOps Engineer <=
- 2025-05-17 Warszawa => Junior Account Manager <=
- 2025-05-17 Warszawa => Senior Programmer C <=
- 2025-05-17 Polska => Senior Key Account Manager <=
- 2025-05-17 Migracje i przestępczość
- 2025-05-16 czy Seba naprawdę wróci do macierzy?
- 2025-05-15 coś pustawo u mechaników
- 2025-05-16 Warszawa => IT Data Analyst (obszar Power BI) <=