-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
0.net!news.mixmin.net!aioe.org!.POSTED!not-for-mail
From: AK <n...@n...net>
Newsgroups: pl.comp.programming
Subject: Re: Niezmienniki pętli
Date: Sun, 18 Nov 2018 09:58:56 +0100
Organization: Aioe.org NNTP Server
Lines: 42
Message-ID: <psr9kf$16l1$1@gioia.aioe.org>
References: <8...@g...com>
<7...@g...com>
<d...@g...com>
<psp6q7$97o$1@node2.news.atman.pl>
<6...@g...com>
NNTP-Posting-Host: 8qtlLyVN3OnGA+76ZQ/E1Q.user.gioia.aioe.org
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Complaints-To: a...@a...org
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101
Thunderbird/52.9.1
Content-Language: en-GB
X-Notice: Filtered by postfilter v. 0.8.3
Xref: news-archive.icm.edu.pl pl.comp.programming:212922
[ ukryj nagłówki ]On 2018-11-18 00:10, Maciej Sobczak wrote:
>> Zasada jest taka że jeśli kod
>> kontrolujący stan miałbym mieć więcej linijek niż goły algorytm to
>> *zaciemnia* kod
>
> Tak, to ważna obserwacja. Może da się te rzeczy rozdzielić? Tak jak rozdziela się
interfejs
> od implementacji? Zwłaszcza wtedy, gdy jakieś warunki faktycznie należą do
interfejsu? Akurat
> niezmienniki pętli należą do implementacji (i potrafią pięknie zaciemnić kod), ale
takie rzeczy
> jak "parametr powinien być między 0 a 20" albo "wartość zwracana powinna być w
zakresie indeksów
> tablicy" to intefejs. I może da się to wtedy zapisać gdzieś w okolicy deklaracji
tak, żeby
> użytkownik to widział (i mógł się pod to sprawdzić)? Tak działa SPARK i przyznam,
że podoba
> mi się.
Np. w Pythonie do takich rzeczy (DBC) dobrze nadają sie dekoratory
funkcji/metod/klas (ich dzialanie jes o wiele szersze/bardziej
dynamiczne niz dekoratory/annotacje z innych jezykow programowania
np.Javy).
>> 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.
>
> Nie zawsze sama koncepcja programistyczna musi ją przekreślać.
> Tzn. to nie musi być wina DbC, że kod jest nieczytelny.
Racja.
> A może wtedy należy odwrócić kolejność i zamiast szukać języka, gdzie to jest
> czytelne (albo zamiast doklejać DbC do używanego języka), można taki język zrobić?
> W sensie - zamiast rezygnować z DbC, bo jest nieczytelny, zróbmy język tak,
> żeby to było czytelne. To nie są zupełnie teoretyczne pytania.
..czasem wystarczy w danym jezyku dobrze to zaiplementowac.
Np. w Pythonie "od lat" stosuję zope.interface i bardzo sobie chwalę
https://pypi.org/project/zope.interface/
https://zopeinterface.readthedocs.io/en/latest/
np.
https://zopeinterface.readthedocs.io/en/latest/READM
E.html#invariants
AK
Następne wpisy z tego wątku
- 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
- 19.11.18 21:44 Queequeg
- 19.11.18 22:10 fir
- 19.11.18 22:16 fir
- 19.11.18 23:12 g...@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ą