-
Data: 2013-02-08 18:14:45
Temat: Re: Jakie typowanie jest najlepsze i dlaczego statyczne?
Od: Andrzej Jarzabek <a...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Feb 8, 4:45 pm, darekm <d...@e...com> wrote:
> W dniu 2013-02-07 23:51, Andrzej Jarzabek pisze:
>
> > A w językach z dynamicznym systemem typów nie trzeba. I na tym polega
> > różnica - w C++ tego po prostu nie zrobisz i tyle, żaden QVariant czy
> > hashmap ci nie pomoże.
>
> To że zawsze możesz użyć wszystko ma swoją drugą stronę: niczego nie
> możesz zabronić. Przy statycznym typowaniu każda funkcja ma
> zdefiniowane dla jakich typów i w jakim kontekście jest poprawna i w
> innych jej nie użyjesz. A wraz ze wzrostem programu liczba kontekstów
> niepoprawnych rośnie szybciej niż tych poprawnych.
Można ograniczyć ten efekt odpowiednio projektując kod.
> > Bo zajmuje czas, bo wprowadza szum do kodu, bo utrudnia refaktoryzację.
> > Może nie zawsze, ale przynajmniej niekiedy.
>
> Co zajmuje czas: wklepanie kodu? Przecież to jest czas pomijalny.
Wymyślenie zestawu typów i relacji między nimi, odpowiadające
problemowi. Przerabianie tego zestawu w miarę jak problem się zmienia.
> Refaktoryzacja: kompilator powie Ci gdzie NIE możesz użyć nowej
> funkcji/struktury
W pewnych sytuacjach tak, ale czasem ci powie, że błąd, bo typ X nie
istnieje i faktycznie, po refaktoryzacji nie istnieje.
> > Wprowadzasz duplikację. No i pojawiają się dalsze problemy, co na
> > przykład, jeśli chcesz skopiować structa i owej kopii dołożyć kilka
> > nowych pól?
>
> Tylko wtedy gdy to ma sens, mogę zawsze przekazywać nie obiekty a pole.
Przykład był przecież uproszczony, jeśli funkcja korzysta z siedmiu
pól, to przekażesz jej siedem argumentów?
> Po drugie to kompilator zabroni mi wywołać
> foo(foo(c))
Nawet jeśli właśnie foo(foo(c)) jest dokładnie tym, co chcesz zrobić.
> > Piszesz konwersję kopiującą wszystkie składowe do hashmapy?
> > I tak dla każdego typu? I nie widzisz w tym nic niewygodnego?
>
> W życiu też możesz używać wygodnego samochodu rodzinnego do którego
> zapakujesz na dowolnym parkingu kilka osób, psa i śniadanie i dojedziesz
> nad (prawie) dowolne jezioro. Z drugiej strony masz tiry, które
> zapakujesz wyłącznie na rampie wyłącznie paletami wyłącznie mechanicznie
> i można jeździć wyłącznie uprawnionymi drogami. Dlaczego tak skoro tak
> niewygodnie i restrykcyjnie?
Nie bardzo rozumiem, jak to się ma do tematu dyskusji. Chcesz
powiedzieć, że samochody rodzinne są niepotrzebne, skoro można rodzinę
zapakować w dwa tiry i wybrac sobie takie jezioro, do którego prawie
dojeżdża uprawniona droga?
Następne wpisy z tego wątku
- 08.02.13 18:52 M.M.
- 08.02.13 18:52 Andrzej Jarzabek
- 08.02.13 19:18 Andrzej Jarzabek
- 08.02.13 21:56 darekm
- 08.02.13 22:11 darekm
- 09.02.13 14:22 Andrzej Jarzabek
- 09.02.13 15:12 M.M.
- 09.02.13 16:29 AK
- 09.02.13 16:31 AK
- 09.02.13 16:35 AK
- 09.02.13 16:37 AK
- 09.02.13 17:01 M.M.
- 09.02.13 18:45 Andrzej Jarzabek
- 09.02.13 19:53 M.M.
- 09.02.13 23:21 Andrzej Jarzabek
Najnowsze wątki z tej grupy
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- 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
Najnowsze wątki
- 2025-06-01 nie ustąpiła moturowi?
- 2025-05-31 Skoro jest tak dobrze i TANIO to dlaczego jeszcze nie jeździmy na takich akumulatorach?
- 2025-05-31 Warszawa => IT Data Analyst (obszar Power BI) <=
- 2025-05-31 Warszawa => IT Hardware Specialist - Wsparcie i Konfiguracja <=
- 2025-05-31 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-05-31 Gdańsk => PHP Developer <=
- 2025-05-31 Lublin => Delphi Programmer <=
- 2025-05-31 co to za obcęgi? [OT]
- 2025-05-30 Rondo :)
- 2025-05-30 Warszawa => Senior Account Manager <=
- 2025-05-30 Warszawa => Senior C++ Developer (analiza numeryczna i modelowanie) <=
- 2025-05-30 Gdańsk => Team Lead Data Engineer (Snowflake) <=
- 2025-05-30 Warszawa => Team Lead Data Engineer (obszar Snowflake) <=
- 2025-05-30 Gdańsk => Programista Delphi <=
- 2025-05-30 Warszawa => Software Engineer .Net <=