-
Data: 2019-09-04 09:31:04
Temat: Re: Jak to robią w NASA
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> > Tak. Można stwierdzić, że w ogóle nie powinno być żadnych asercji w kodzie
programu, bo w systemie krytycznym one nie pełnią tam żadnej sensownej roli.
>
> Co za bzdura.
>
> Równie dobrze mógłbyś powiedzieć, że w kodzie programu nie powinno być żadnych
komentarzy, bo w systemie krytycznym one nie pełnią tam żadnej sensownej roli.
Ale nie równie dobrze, bo komentarze są pożyteczne.
Natomiast asercje to tzw. dead code. Z założenia. To jest kod źródłowy, który
pozostawia ślad w kodzie maszynowym, ale którego nie da się pokryć testami. Taki kod
jest zabroniony w procesach krytycznych. I tyle.
Powtórzę dla skupienia: MISRA-C i AUTOSAR w ogóle nie poruszają tematu asercji. Co
biorąc pod uwagę ilość innych rzeczy, które poruszają, jest co najmniej interesujące.
Otóż rozwiązanie tej zagadki jest bardzo proste: w kodzie krytycznym asercji się nie
używa. Bo one stoją w konflikcie z innymi celami, które należy osiągnąć.
> Albo że funkcje i zmienne mogą być nazwane byle jak, bo w systemie krytycznym one
nie pełnią tam żadnej sensownej roli.
Dryfujesz. Komentarze i nazwy są istotne dla czytelności. Mogą być nawet istotne dla
śladowania (ang. traceability), wiec czasami nawet nie są sprawą wolnej woli kodera.
Bo jest jeszcze taka możliwość, że potraktujesz asercje jak komentarz. To bardzo
dobry pomysł, ale komentarze piszemy w komentarzach.
> Wygląda na to, że wśród programistów szeroko jest rozpowszechnione błędne
przekonanie, że asercja to "sprawdzenie czegoś w runtimie".
Dla pewności sprawdziłem jak to opisuje standard C. Otóż właśnie dokładnie tak.
Oczywiście możesz sobie wyobrazić (albo nawet mieć) narzędzie, któro statycznie
skanuje kod i sprawdza asercje (efektywnie traktując je jako static_assert), ale
takie narzędzie potrafi też wyłuskać adnotacje z komentarzy. Więc nadal twierdzę, że
te asercje nie powinny być w kodzie.
Natomiast ja chętnie stosuję asercje w skryptach testowych. Nie chce mi się używać
wydumanych frameworków do unit testów a w testach asercje pasują idealnie.
Ale nie w kodzie.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 04.09.19 09:53 g...@g...com
- 04.09.19 16:39 bartekltg
- 04.09.19 18:43 AK
- 04.09.19 18:52 AK
- 04.09.19 19:00 AK
- 04.09.19 19:04 AK
- 04.09.19 19:07 AK
- 04.09.19 19:10 AK
- 04.09.19 19:54 g...@g...com
- 04.09.19 21:07 AK
- 04.09.19 23:05 g...@g...com
- 04.09.19 23:49 Maciej Sobczak
- 05.09.19 09:20 M.M.
- 05.09.19 13:37 M.M.
- 06.09.19 07:31 AK
Najnowsze wątki z tej grupy
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- 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
Najnowsze wątki
- 2025-07-20 Absurdalny zakaz fotografowania będzie nowelizowany
- 2025-07-20 Takie tam...
- 2025-07-20 https://newsgrouper.org/pl.soc.prawo blokuje posty: 154 posts blocked.
- 2025-07-20 Bateria 9V 6F22, alkaliczna v cynkowa, samorozładowanie, bateria wysokiej trwałości do miernika
- 2025-07-20 Tani zakup z ali?
- 2025-07-19 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-07-19 Chiny => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu <
- 2025-07-19 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-19 China => Production Coordinator / Representant Product Dev <=
- 2025-07-19 Warszawa => Specjalista wsparcia IT - analiza techniczna sprzętu IT <
- 2025-07-19 Warszawa => Strategic Account Manager <=
- 2025-07-19 Warszawa => Key Account Manager IT <=
- 2025-07-19 Skazany za zabójstwo a ofiara żyje
- 2025-07-19 Zakrzewo => SAP HCM Consultant <=
- 2025-07-19 Poznań => Konsultant SAP HCM <=