Szukasz kursu specjalistycznego z BHP, SEP lub kursu na wózki widłowe? Kurs edukacyjny!

Samodokumentowanie programów

Najpoważniejsze zastrzeżenie budzi rozbudowanie programu źródłowego do sporych rozmiarów. Ponieważ coraz częściej przechowuje się go w pamięci bezpośredniej, jego wielkość ma duże znaczenie. Zauważyłem, że moje komentarze do programu w APL, który ma być przechowywany na dysku, są krótsze, niż komentarze do programu w PL/I, który ma być przechowywany na kartach.

Jednocześnie przechodzimy też do przechowywania w pamięci bezpośredniej dokumentów tekstowych – ze względu na łatwy do nich dostęp i możliwości aktualizacji drogą komputerowego redagowania tekstu. Jak już wykazałem, połączenie tekstu i programu wpływa na zmniejszenie ogólnej liczby znaków (każdego z nich) do przechowania.

Podobna jest odpowiedź na argument, że programy samodokumen- tujące wymagają więcej naciśnięć klawiszy. W typowym dokumencie potrzeba co najmniej jednego naciśnięcia na znak na wersję. Program samodokumentujący ma mniejszą ogólną liczbę znaków, a także wymaga mniej naciśnięć klawiszy, bo nie przepisuje się kolejnych wersji.

A jak jest ze schematami blokowymi i schematami struktury? Jeśli używa się jedynie schematu struktury najwyższego poziomu, można go przechowywać jako odrębny dokument, bo nie podlega częstym zmianom. Z pewnością jednak można go włączyć do programu źródłowego jako komentarz, co jest mądrym posunięciem.

Czy omówione tu metody da się zastosować do programów w języku asemblerowym? Uważam, że bez problemów da się tworzyć programy samodokumentujące. Ponieważ jednak co do miejsc i formatów są pewne ograniczenia, nie można ich stosować równie elastycznie. Z pewnością można wykorzystać nazwy i deklaraq’e struktur. Bardzo pomocne mogą być makra. W wypadku każdego języka sprawdza się stosowanie komentarzy.

Samodokumentowanie programów jest stymulowane przez użycie języków wysokiego poziomu. Najbardziej przydatne i najbardziej uzasadnione jest w językach wysokiego poziomu stosowanych z systemami dostępnymi bezpośrednio – czy to wsadowymi, czy interakcyjnymi. Jak już mówiłem, takie języki i systemy są programistom bardzo pomocne. Skoro maszyny zostały stworzone dla ludzi, a nie ludzie dla maszyn, korzystanie z nich ma sens zarówno z ekonomicznego punktu widzenia, jak i czysto ludzkiego.

Nie ma takiego indywidualnego osiągnięcia – czy to w technice, czy iv zarządzaniu – które, samo z siebie, w ciągu dekady doprowadziłoby do poprawy efektywności, niezawodności i prostoty o jeden rząd wielkości.

Podobne Artykuły

Zostaw odpowiedź

Twoj adres e-mail nie bedzie opublikowany.