-
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
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- 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
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=