eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingrzadki bład w programie w C++Re: rzadki bład w programie w C++
  • X-Received: by 2002:ac8:7594:: with SMTP id s20mr570871qtq.381.1630698336113; Fri, 03
    Sep 2021 12:45:36 -0700 (PDT)
    X-Received: by 2002:ac8:7594:: with SMTP id s20mr570871qtq.381.1630698336113; Fri, 03
    Sep 2021 12:45:36 -0700 (PDT)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!1.us.feeder.erj
    e.net!feeder.erje.net!news.misty.com!border2.nntp.dca1.giganews.com!border1.nnt
    p.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postn
    ews.google.com!google-groups.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Fri, 3 Sep 2021 12:45:35 -0700 (PDT)
    In-Reply-To: <3...@g...com>
    Injection-Info: google-groups.googlegroups.com;
    posting-host=2a01:113f:400f:7f00:c919:93a9:e3e1:109f;
    posting-account=f7iIKQoAAAAkDKpUafc-4IXhmRAzdB5r
    NNTP-Posting-Host: 2a01:113f:400f:7f00:c919:93a9:e3e1:109f
    References: <9...@g...com>
    <4...@g...com>
    <2...@m...lan>
    <c...@g...com>
    <2...@m...lan>
    <7...@g...com>
    <6126af7d$0$541$65785112@news.neostrada.pl>
    <f...@g...com>
    <612a9d2f$0$512$65785112@news.neostrada.pl>
    <a...@g...com>
    <612bea2d$0$24048$65785112@news.neostrada.pl>
    <2...@m...lan>
    <a...@g...com>
    <2...@m...lan>
    <8...@g...com>
    <2...@m...lan>
    <3...@g...com>
    <2...@m...lan>
    <5...@g...com>
    <2...@m...lan>
    <3...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <4...@g...com>
    Subject: Re: rzadki bład w programie w C++
    From: Maciek Godek <g...@g...com>
    Injection-Date: Fri, 03 Sep 2021 19:45:36 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Lines: 78
    Xref: news-archive.icm.edu.pl pl.comp.programming:215716
    [ ukryj nagłówki ]

    piątek, 3 września 2021 o 20:21:21 UTC+2 Maciej Sobczak napisał(a):
    > > Wniosek z tego można chyba wyciągnąć taki, że to, co robimy
    > > (programowanie, albo szerzej - tworzenie pionowych dokumentów) jest
    > > wbrew naszej naturze. I jak tu żyć?
    > To zależy. To, że program "wykonuje się" z góry na dół to tylko jedna z możliwych
    konwencji. Dlaczego stała się popularna? No nie wiem, bo np. dawno temu drukowano
    programy na papierze? I to jeszcze takim składanym, na krótszym boku, z dziurkowanym
    marginesem wzdłuż całej paczki?

    W Europejskiej kulturze kierunek tekstu to jest "od lewej do prawej, od góry do
    dołu".
    Są kultury, w których ten kierunek poziomy jest odwrócony, tzn. czyta się "od prawej
    do lewej, od góry do dołu".
    Czasem też w kulturach azjatyckich można się spotkać z taką inwersją, że najpierw
    czyta się w pionie, a potem w poziomie, ale chyba zawsze jest "z góry na dół".

    Może ma to związek z grawitacją, i z tym, że jesteśmy uczeni, że rzeczy "same z
    siebie" raczej ciągnie w dół, niż do góry?

    > Program dla szkolnej maszyny Turinga to cienka długa taśma. Może być poziomo. Albo
    na rolce.
    > Ale już program zapisany jako model w jakiejś graficznej formie bardzo naturalnie
    wygląda od lewej (wejścia) do prawej (wyjścia). To jest też popularna konwencja w
    schematach elektronicznych. Czy taki model będzie bardziej pionowy, czy poziomy,
    zależy od wielu czynników, ale zdecydowanie to, co mamy teraz z kodem źródłowym to
    chwilowa anomalia a nie ponadczasowy pewnik.

    Stosunkowo niedawno natrafiłem na tę prezentację, przedstawiającą środowisko
    programistyczne jako "pochodnię w jaskini", i proponujące dość ciekawą alternatywę:

    https://www.youtube.com/watch?v=Ps3mBPcjySE

    > Albo wyobraź sobie, że plik źródłowy nie leci ciurkiem od góry do dołu, funkcja po
    funkcji, tylko np. ma osobne kolumny. I każdą funkcję w osobnym pliku (to jest nawet
    teraz tu i ówdzie obowiązującym standardem kodowania).

    Albo że nie trzymasz programu w ogóle w plikach, tylko to są obiekty w pamięci, które
    ewentualnie możesz na wiele sposobów zrzutować na system plików. Hmm, brzmi jak
    Smalltalk albo Interlisp, albo "programowanie intencjonalne" :)

    > Niech będzie, że tekstowe, ale w kilku kolumnach. Np. w każdej kolumnie osobno:
    parametry, pre-conditions, zmienne lokalne, reguły przetwarzania, post-conditions.
    Ładnie by to wyglądało.

    Nieco dawniej natrafiłem na tę "rodzinę prezentacji", skupiającą się na typografii
    kodu źródłowego (jak by powiedziała Debbie Reynolds, "if you've seen one, you've seen
    them all")

    https://hilton.org.uk/presentations/beautiful-code

    Ja sam nie jestem do końca przekonany. Moim zdaniem programy powinny wyglądać jak
    instrukcje montażu mebli z Ikei.

    > To, że piszemy kod źródłowy jak by to był papier toaletowy to tylko nasza wina. Nie
    jest to w żadnym razie jakaś inherentna cecha programowania w ogóle.

    Nie wiem, czy jak papier toaletowy.
    Większość środowisk "hipertekstualizuje" programy w tym sensie, że można np. kliknąć
    na symbol, żeby przejść do jego definicji.
    Nie spotkałem się z taką możliwością u swojego papieru toaletowego.

    Ale faktycznie, "programowanie w ogóle" nie ma zbyt wielu silnie określonych cech.
    Większość z nich to raczej nawyki naszych umysłów.

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: