-
Data: 2019-05-13 08:40:47
Temat: Re: Ada Tutorial - w Instytucie Lotnictwa
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> > A co jest złego w MISRA-C++?
>
> Nikt go nie używa.
Właśnie pytam, dlaczego.
> Po prostu jest niekoszerny.
Ciekawa obserwacja. Ale w takim razie ogólnie jesteśmy w lesie, bo to nie powinno być
kryterium wyboru metod albo technologii.
Niemniej, jeśli nikt nie używa C++, to po co dyskutujemy o wyjątkach w C++?
> Ktoś napisał w języku z
> silnym typowaniem i fikuśnymi wyjątkami kod w asemblerze który przedarł
> się przez code review, weryfikację i był sterowany przez księgowych.
Co trzeba poprawić?
> Zaznaczam że gdyby ktokolwiek obecnie zapytał mnie jak to zrobic to w
> przypływie mojej ignorancji napisałbym klasę do obsługi arytmetyki z
> saturacją, być może z możliwością wymiany jej na bezpośrednie wsparcie
> hardware co przecież dziwne nie jest.
I w jaki sposób by to pomogło rakiecie Ariane?
Ona rozwaliła się nie przez to, że ktoś napisał brzydki kod, tylko przez to, że
bezrefleksyjnie złożono do kupy moduły z nowej i starej rakiety.
Twoja klasa nie pomogłaby dokładnie tak samo, jak Ada nie pomogła. Przez tych samych
księgowych.
Tu widać, że programiści, nawet jeśli czasem są problemem, to zwykle nie są
rozwiazaniem. Sorry.
> > Są też systemy pisane w niebezpiecznych językach w niebezpieczny sposób.
>
> Tak. Na przykład Verilog.
No właśnie. Czemu nie VHDL?
> Na codzień mam do czynienia z VHDL. To taka ada + troche ekstra składni.
> Pisanie bezpieczne w tym języku polega głównie na obchodzeniu przez
> programistów silnego typowania chałupniczymi workaroundami. Stąd
> popularnośc Veriloga, można tam pisać co się chce a i tak sie jakoś
> skompiluje. Ludzie nie potrzebują bezpicznych jezyków i ograniczeń.
> Ludzie są leniwi i potrzebują dodawać inta do stringa a wynik ma być
> taki jak ma być i już.
Bardzo ciekawa obserwacja.
I jak to można naprawić?
Tylko nie pisz, że "gdyby zatrudnili porządnych programistów...", bo to jest argument
od czapy.
> >>> Unit testy nie wykrywają wyjątków. Chyba że mamy inne rozumienie tego terminu.
> >> ASSERT_THROW. ASSERT_NO_THROW. Całkiem fajnie wykrywają.
> > Ale to nie są unit testy.
>
> To są narzędzia do wykrywania wyjątków w unit testach co oznacza że za
> ich pomocą można pisać unit testy testujące wyjątki.
Nie, bo unit testy nie testują wyjątków. Chyba że mamy inne rozumienie tego terminu.
> Powtarzam, wyjątek czy nie, nie jest kwestią funkcji generycznych jego
> obsługa.
Ale one nie muszą go obsługiwać (pojęcie "obsługi wyjątków" jest w ogóle słabe, bo
nie wskazuje, co się do tej obsługi zalicza; zwijanie stosu i omijanie istniejącego
kodu to obsługa czy nie?). Ważne, żeby te wszystkie rozgałęzienia były pokryte
testami. A nie są. Więc jest źle.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 13.05.19 09:27 AK
- 13.05.19 12:05 g...@g...com
- 14.05.19 00:53 AK
- 14.05.19 08:51 g...@g...com
- 14.05.19 09:55 Maciej Sobczak
- 14.05.19 15:25 Adam M
- 15.05.19 08:09 Maciej Sobczak
- 15.05.19 21:25 AK
- 16.05.19 08:55 g...@g...com
- 04.08.19 18:11 Borneq
Najnowsze wątki z tej grupy
- "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
- 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?
Najnowsze wątki
- 2025-03-31 Kraków => IT Expert (Network Systems area) <=
- 2025-03-31 Białystok => NMS System Administrator <=
- 2025-03-31 Częstochowa => Product Manager - Systemy infrastruktury teleinformaty
- 2025-03-31 Sąd/Sędzia odrzuca wniosek o 30d aresztu Ziobry i jedzie po PO-Komisji Sroki [i Ziobrze w GW wersji]
- 2025-03-31 Warszawa => Sales Executive / KAM <=
- 2025-03-31 Warszawa => International Freight Forwarder <=
- 2025-03-31 Re: Państewko prawka Rumunia czyli pokaz UE leworządności - lider unieważnionych wyborów niedopuszczony do powtórki
- 2025-03-31 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-03-31 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-31 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-31 Wrocław => Senior Backend Developer <=
- 2025-03-31 Białystok => Generative AI Engineer <=
- 2025-03-31 China-Kraków => Key Account Manager IT <=
- 2025-03-31 Prawne ciekawostki: Ksiądz KRK wygrał ze swoim biskupem sprawę o "naruszenie dóbr osobistych" [SN oddalił kasacje]
- 2025-03-31 Podatek od "konta wspólnego"