-
Data: 2021-03-28 22:40:04
Temat: Re: Narzędzia do wizualizacji systemów Embedded
Od: Maciek Godek <g...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]sobota, 27 marca 2021 o 17:08:22 UTC+1 Maciej Sobczak napisał(a):
> > "Documentation is any communicable material that is used to describe, explain or
instruct regarding some attributes of an object, system or procedure, such as its
parts, assembly, installation, maintenance and use"
> >
> > Kod źródłowy jest komunikowalny i może być użyty do wyjaśnienia pewnych atrybutów
systemu, więc nadal nie rozumiem.
> To jest pomysł tej samej warstwy społecznej, która wymyśliła "Working software over
comprehensive documentation" i ogólnie tej grupy, która systematycznie nie jest w
stanie zrobić sensownej dokumentacji, więc kombinuje jak by tu uzasadnić drobny fakt,
że jej po prostu nie ma.
>
> Kod źródłowy oczywiście, że może być komunikowalny. Ale nie jest w stanie wyjaśnić
"dlaczego" ani "w jakim celu", czyli nie jest w stanie niczego uzasadnić. Właśnie do
tego jest dokumentacja. Oczywiście można zrobić tak:
>
> int maxNumberOfBananasThatTheCustomerXYZAskedForAtTheLas
tMeeting = 12345;
>
> ale chyba rozumiemy, że taka nazwa to nie jest kod, tylko niewłaściwie użyty
komentarz. Czyli dokumentacja. I się pewnie zaraz rozjedzie.
> Można też tak:
>
> int maxNumberOfBananas = 12345;
>
> ale bez (rozjeżdżającej się) dokumentacji nie wiemy, dlaczego akurat tyle. A to
może być bardzo ważne.
> Zrobienie tego samego (w obu wersjach) na diagramie, który posłuży do
automatycznego wygenerowania takiego kodu niczego nie zmienia, tylko przenosi problem
w inne miejsce w procesie produkcyjnym.
>
> Kod programu nie jest dokumentacją. Diagram może być ilustracją w dokumentacji, ale
jeśli diagram służy do generowania kodu, to nie jest. Taki diagram nadal wymaga
dokumentacji.
Nadal nie wyjaśniłeś dlaczego nie jest.
Najpierw jak zapytałem, to wkleiłeś link do artykułu na Wikipedii, który twierdzi, że
dokumentacją jest wszystko, co służy do wyjaśnienia działania jakiegoś systemu.
Teraz drugi raz twierdzisz, że jeżeli diagram posłuży do wygenerowania kodu, to nagle
w jakiś magiczny sposób przestaje być dokumentacją (co w świetle definicji z
Wikipedii oznaczałoby, że nie może już służyć do rozumienia działania systemu, bo
wówczas... byłby dokumentacją).
Z tego co widzę, swoje uzasadnienie opierasz na ad hominem względem jakiejś grupy
ludzi, która kiedyś coś twierdziła, oraz na tym, że kod źródłowy nie dokumentuje
wszystkich aspektów budowy i użytkowania systemów. No to teraz uważaj:
żadna dokumentacja nie dokumentuje wszystkich aspektów budowy i użytkowania systemów.
W szczególności, można znaleźć dużo dokumentacji, która również nie wyjaśnia,
dlaczego albo w jakim celu danego komponentu systemowego można użyć. Weźmy pierwszy z
brzegu przykład - podręcznik do funkcji "memcpy"
https://man7.org/linux/man-pages/man3/memcpy.3.html
Opisuje różne aspekty użycia funkcji `memcpy`, ale nie wyjaśnia, dlaczego ta funkcja
powstała, ani w jakim celu się ją stosuje.
Nie zmienia to jednak faktu, że ta strona manuala jest dokumentacją. (Chyba że zaraz
stwierdzisz, że nie jest)
Twój przykład z "niewłaściwie użytym komentarzem" może też pokazuje gdzie może leżeć
źrodło nieporozumienia.
Bo nie wiem jak Ty, ale ja swoje komentarze do kodu źródłowego zazwyczaj trzymam w
kodzie źródłowym.
One *są częścią* kodu źródłowego, i wyjaśniają rzeczy, których w samym języku
programowania nie mógłbym wyrazić, albo tłumaczą, skąd się wzięły jakieś nieoczywiste
rozwiązania.
Następne wpisy z tego wątku
- 29.03.21 18:39 Maciej Sobczak
- 30.03.21 10:41 Maciek Godek
- 30.03.21 23:00 Maciej Sobczak
- 31.03.21 10:42 Maciek Godek
- 05.04.21 19:10 Maciej Sobczak
- 06.04.21 08:48 Maciek Godek
- 06.04.21 09:21 Maciek Godek
- 06.04.21 18:35 Maciej Sobczak
- 06.04.21 23:46 Maciek Godek
- 07.04.21 22:07 Maciej Sobczak
- 08.04.21 12:57 Maciek Godek
- 09.04.21 16:57 Maciej Sobczak
- 10.04.21 16:26 Maciej Sobczak
- 11.04.21 23:57 Maciek Godek
- 12.04.21 11:45 Maciek Godek
Najnowsze wątki z tej grupy
- 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
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
- Ideologia Polskiego Programisty wer.3
Najnowsze wątki
- 2024-04-27 Nowy, "szybki "komputer AsRock nie posiada modułu TPM
- 2024-04-27 Nowy, "szybki "komputer AsRock nie posiada modułu TPM
- 2024-04-27 Warszawa => Inżynier DevOps (projekt JP) <=
- 2024-04-27 Warszawa => Senior Account Manager (on-site) <=
- 2024-04-27 Wrocław => Dyrektor Sprzedaży (branża usług/produktów IT) <=
- 2024-04-27 Warszawa => Sales Representative for Outsourcing Services <=
- 2024-04-27 Chrzanów => Administrator i wdrożeniowiec Lotus Notes/Domino <=
- 2024-04-27 Ja pierdolę...
- 2024-04-27 Ryby i kawitacja
- 2024-04-27 Zabrze => Junior HelpDesk <=
- 2024-04-27 Katowice => Administrator IT - Wirtualizacja i Konteneryzacja <=
- 2024-04-27 Bażanowice => Inżynier Industrializacji - Elektronik <=
- 2024-04-27 Warszawa => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2024-04-27 Zadaszenie tarasu, a wymagany spadek
- 2024-04-27 Warszawa => Senior Account Manager <=