-
X-Received: by 2002:a05:6214:146:: with SMTP id x6mr24659068qvs.232.1570396914623;
Sun, 06 Oct 2019 14:21:54 -0700 (PDT)
X-Received: by 2002:a05:6214:146:: with SMTP id x6mr24659068qvs.232.1570396914623;
Sun, 06 Oct 2019 14:21:54 -0700 (PDT)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.n
et!weretis.net!feeder7.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.
160.216.MISMATCH!o24no3087042qtl.0!news-out.google.com!q23ni170qtl.1!nntp.googl
e.com!o24no3087033qtl.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!
not-for-mail
Newsgroups: pl.comp.programming
Date: Sun, 6 Oct 2019 14:21:54 -0700 (PDT)
In-Reply-To: <qnb1gg$68i$1@dont-email.me>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=213.108.152.51;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
NNTP-Posting-Host: 213.108.152.51
References: <ZFueF.189972$Jh2.55867@fx39.am4>
<b...@g...com>
<5d835054$0$525$65785112@news.neostrada.pl>
<qm5o8c$6mr$1@news.icm.edu.pl>
<5d867c27$0$17361$65785112@news.neostrada.pl>
<qm5va9$c07$1@dont-email.me> <5d86b148$0$520$65785112@news.neostrada.pl>
<qm7c3j$pl6$1@dont-email.me> <5d87968d$0$503$65785112@news.neostrada.pl>
<qm875f$g8o$1@dont-email.me> <5d87b31a$0$522$65785112@news.neostrada.pl>
<qm8e0j$s55$1@dont-email.me> <qmgven$som$1@z-news.wcss.wroc.pl>
<f...@g...com>
<qmnls7$tml$2@news.icm.edu.pl>
<b...@g...com>
<qmtap2$kfe$1@dont-email.me>
<4...@g...com>
<qn5dj9$qh9$3@dont-email.me>
<b...@g...com>
<qn82tb$4uq$1@dont-email.me>
<0...@g...com>
<qnb1gg$68i$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9...@g...com>
Subject: Re: POpularno?? j?zyk?w programowania ??
From: Maciej Sobczak <s...@g...com>
Injection-Date: Sun, 06 Oct 2019 21:21:54 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:214357
[ ukryj nagłówki ]> > No więc - skoro już poprawiliśmy tą naszą funkcję, to jaka jest wartość dodana z
użycia kilku kolejnych kompilatorów?
>
> Bardzo prosta. Twój kompilator w poprawnej funkcji dodawania przypadkiem
> zrobił mnożenie kiedy x=15 i y=90.
To wychodzi w pokryciu kodu obiektowego.
> Shit happens.
Nie, nie happens.
Tzn. może są firmy, gdzie happens i się nie bada pokrycia (tak, tak, teraz ja sobie
dorabiam, dla równowagi do Twoich teorii, że w Ariane 5 nie było testów), ale tam
gdzie widzę, bada się i nie happens.
> Czasem to tylko mignie
> szybciej diodą a czasem wyśle samolot w kierunku gruntowym.
Nie było przypadku, żeby samolot poleciał w kierunku gruntowym przez to, że użyto
jednego kompilatora a nie trzech. Dlatego ten pomysł byłby potraktowany jako koszt
bez wartości dodanej.
> A kod działa przypadkiem tylko dlatego że kompilator w jakimś miejscu
> zamiast referencji użył wartości. W kodzie produkcyjnym użyje referencji
Zaraz, zaraz... Testowałeś nieprodukcyjny kod a produkcyjny były jakiś inny?
Tyle mądrości na temat weryfikacji a tu taki klops. Skup się.
> Aby zweryfikować narzędzia do weryfikacji.
O, tu, widzisz, poruszyłeś ciekawe zagadnienie.
Ale kwalifikację narzędzia robi się przed projektem, bo projekt zaczyna się mając już
zatwierdzone narzędzia. I jeśli do tej kwalifikacji chcesz sobie użyć materiału
testowego pochodzącego z różnych kompilatorów, to właściwie może to mieć sens (ale
nie musi). Tylko że nadal nie ma sensu używać więcej niż jednego kompilatora do
robienia tego właściwego projektu.
> > I tu jest cały trick. Kompilator nie jest celem ani centrum tego ćwiczenia.
>
> Jest narzędziem które odpowiada na pytanie czy kod działa czy nie.
Kompilator? Nie, nie odpowiada na takie pytanie. Właściwie to mogłoby nie być żadnego
kompilatora, można posadzić człowieka z zapasem kawy i herbatników i niech
"kompiluje". I to nawet nie jest fikcja.
> Czasami odpowiada źle.
Nie pokazałeś niczego takiego.
> Nie. Wykazałeś że w jakiś warunkach Twój kod działa. A czy to te same
> warunki kiedy będzie używany produkcyjnie?
I w jaki sposób trzy kompilatory mają coś tu zmienić? Ilość kompilatorów wpływa na
to, jak bardzo zmieniają się warunki w użyciu produkcyjnym?
> Może wyjaśnie na przykładzie. Znam człowieka pracujacego dla poważnej
> instytucji związanej z lotnictwem. Aby ich kod przeszedł certyfikat
> pozwalający na stosowanie w samolotach musieli, poza wykazaniem
> testowania we wszystkich odmianach, zarządzania jakością, weryfikacji
> formalnej również to czy zweryfikowali narzędzia. Ponieważ smutni
> panowie od certyfikowania nie są z kosmosu i znają realia to zapytali w
> ILU różnych symulatorach potwierdzono działanie kodu i czy ich
> producenci sami są certyfikowani do użycia w takiej branży.
Wszystko się zgadza.
Ale nie ma tu ani słowa o użyciu wielu kompilatorów.
I jeśli jesteśmy w temacie samolotów i smutnych panów - standardy lotnicze są tak
napisane, że użycie wielu kompilatorów do kompilowania tego samego kodu w projekcie
nie jest podstawą do dodatkowego uznania (tzw. certification credit) w czasie audytu
certyfikacyjnego a weryfikacji kodu wynikowego nie robi się garścią kompilatorów, bo
kod ma być jeden. Ten sam w testach, co na produkcji.
Dlatego ten pomysł nie ma zastosowania w projektach krytycznych, w szczególności w
lotniczych. Prawie byłeś blisko w temacie kwalifikacji narzędzi (np. narzędzie do
badania pokrycia kodu testami można próbować kwalifikować przy użyciu materiału
testowego z jakiegoś zestawu kompilatorów, ale to i tak niewiele wnosi w konteście
danego projektu, gdzie jest jeden kompilator), ale generalnie mylisz pojęcia.
No i fajnie, że znasz "człowieka pracujacego dla poważnej instytucji związanej z
lotnictwem".
> PS. A zupałnie na marginesie wszelkiej certyfikacji. Odpalam mój kod pod
> trzema kompilatorami.
Ja też - wtedy, gdy piszę biblioteki.
Ale w projekcie krytycznym używa się jednego kompilatora. I testuje się kod
produkcyjny.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 07.10.19 00:50 J-23
- 07.10.19 19:47 heby
- 07.10.19 19:50 heby
- 07.10.19 23:08 J-23
- 08.10.19 08:11 AK
- 08.10.19 08:13 AK
- 08.10.19 08:48 AK
- 08.10.19 09:28 Maciej Sobczak
- 08.10.19 09:34 Maciej Sobczak
- 08.10.19 09:54 AK
- 10.10.19 21:40 heby
- 10.10.19 21:52 heby
- 10.10.19 23:08 AK
- 11.10.19 12:07 g...@g...com
- 12.10.19 16:34 heby
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-02-06 PROGRAM DOPŁAT DO AUT ELEKTRYCZNYCH TO ABSURD. ZA ŚRODKI Z KPO KUPIMY NIEMIECKIE I CHIŃSKIE AUTA
- 2025-02-05 ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-07 Smar do video
- 2025-02-06 Litowe baterie AA Li/FeS2 a alkaliczne
- 2025-02-07 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-07 Warszawa => System Architect (Java background) <=
- 2025-02-07 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-02-07 Warszawa => Solution Architect (Java background) <=
- 2025-02-07 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-02-07 Lublin => Programista Delphi <=
- 2025-02-07 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-07 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-07 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo