-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
OSTED!not-for-mail
From: Sebastian Biały <h...@p...onet.pl>
Newsgroups: pl.comp.programming
Subject: Re: Niezmienniki pętli
Date: Sat, 17 Nov 2018 14:58:33 +0100
Organization: ATMAN - ATM S.A.
Lines: 15
Message-ID: <psp6q7$97o$1@node2.news.atman.pl>
References: <8...@g...com>
<7...@g...com>
<d...@g...com>
NNTP-Posting-Host: 176.115.86.239
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node2.news.atman.pl 1542463112 9464 176.115.86.239 (17 Nov 2018 13:58:32
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Sat, 17 Nov 2018 13:58:32 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101
Thunderbird/60.3.0
In-Reply-To: <d...@g...com>
Content-Language: en-US
Xref: news-archive.icm.edu.pl pl.comp.programming:212918
[ ukryj nagłówki ]On 16/11/2018 23:55, Maciej Sobczak wrote:
> Spotkałem się z opinią (i się z nią zgadzam), że wtedy rolę niezmienników pełnią
pre- i post-conditions w tych rekurencyjnych funkcjach. Pytanie, któro z nich jest
łatwiej wyrazić. I nadal, czy się to stosuje.
Ja stosuje asercje i to raczej proste acz często sprawdzam stany z
gatunku "kontener musi być wypełniony" czy "indeks nie przekracza max
element", "liczba musi być ujemna" itd. Zasada jest taka że jeśli kod
kontrolujący stan miałbym mieć więcej linijek niż goły algorytm to
*zaciemnia* kod, dodatkowo niektóre checkery powodują wzrost złożoności
co może doprowadzić w końcowym efekcie do wzrostu czasu wykonania poza
rosądek (np. uniemożliwić debug). Po jakiś 20 latach stukania w klawisze
widziałem kod opakowany DbC po brzegi i wymagał on niesłychanie dużo
czasu aby zorientować się gdzie jest algorytm a gdzie checkery. Znacznie
bardziej ufam unit testom i coverage niż ręcznie pisanym DbC. Być może
to jednak efekt języka, czyi w moim przypadku C++, nie wykluczam że
można to czytelniej zapisać gdzie indziej.
Następne wpisy z tego wątku
- 17.11.18 16:59 s...@g...com
- 18.11.18 00:10 Maciej Sobczak
- 18.11.18 01:02 Queequeg
- 18.11.18 09:58 AK
- 18.11.18 10:10 fir
- 18.11.18 10:28 fir
- 18.11.18 17:35 Sebastian Biały
- 19.11.18 08:14 Maciej Sobczak
- 19.11.18 09:22 Roman Tyczka
- 19.11.18 10:37 Queequeg
- 19.11.18 10:45 Queequeg
- 19.11.18 17:15 g...@g...com
- 19.11.18 19:45 g...@g...com
- 19.11.18 19:49 g...@g...com
- 19.11.18 21:18 s...@g...com
Najnowsze wątki z tej grupy
- Xiaomi [Chiny - przyp. JMJ] produkuje w całkowitych ciemnościach i bez ludzi
- Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- 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
Najnowsze wątki
- 2026-01-29 KSeF - 13 wątpliwości
- 2026-01-29 A ja się pochwalę
- 2026-01-29 Warszawa => Mid/Senior IT Recruiter <=
- 2026-01-29 Warszawa => Senior Java Developer <=
- 2026-01-29 Warszawa => IT Recruiter <=
- 2026-01-28 Degradacja
- 2026-01-28 Wysoki Sąd poinstruował czego unikać wyzywając Owsiaka "Równiejszego"
- 2026-01-28 Białystok => Solution Architect (Workday) - Legal Systems <=
- 2026-01-28 Białystok => Preseles Inżynier (background baz danych) <=
- 2026-01-28 Wrocław => Konsultant wdrożeniowy ERP <=
- 2026-01-28 Łódź => Microsoft Engineer <=
- 2026-01-28 Białystok => Tester manualny <=
- 2026-01-27 Tradycja ciągania posłów po sądach za wystąpienia w Sejmie będzie kontynuowana [Lepper 2]
- 2026-01-27 Pierwszy raz sprzedano więcej samochodów zeeletryfikowanych niż ice
- 2026-01-27 Elektryczny Kałasznikow




Jak kupić pierwsze mieszkanie? Eksperci podpowiadają