eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingAda Tutorial - w Instytucie LotnictwaRe: Ada Tutorial - w Instytucie Lotnictwa
  • X-Received: by 2002:ac8:1c53:: with SMTP id j19mr22559719qtk.152.1557729648209; Sun,
    12 May 2019 23:40:48 -0700 (PDT)
    X-Received: by 2002:ac8:1c53:: with SMTP id j19mr22559719qtk.152.1557729648209; Sun,
    12 May 2019 23:40:48 -0700 (PDT)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!c48no1586111qtc.0!news-out
    .google.com!b26ni415qtp.1!nntp.google.com!c48no1586104qtc.0!postnews.google.com
    !glegroupsg2000goo.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Sun, 12 May 2019 23:40:47 -0700 (PDT)
    In-Reply-To: <qb4hnr$eqn$1@dont-email.me>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=165.225.84.71;
    posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
    NNTP-Posting-Host: 165.225.84.71
    References: <c...@g...com>
    <btKtE.25850$wd2.16727@fx24.fr7>
    <9...@g...com>
    <qasr5t$7i2$1@dont-email.me>
    <0...@g...com>
    <qav4vb$87q$1@dont-email.me>
    <d...@g...com>
    <qb1kr4$nqn$1@dont-email.me>
    <c...@g...com>
    <qb4hnr$eqn$1@dont-email.me>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <3...@g...com>
    Subject: Re: Ada Tutorial - w Instytucie Lotnictwa
    From: Maciej Sobczak <s...@g...com>
    Injection-Date: Mon, 13 May 2019 06:40:48 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Xref: news-archive.icm.edu.pl pl.comp.programming:213504
    [ ukryj 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

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: