Elemele-dudki czyli HGW

Subskrybuj RSS A A A
14 listopada 2005
Piotr Kowalski

Spoglądając na wytłuszczony tytuł felietonu, jak sądzicie Państwo, o czym dzisiejszy będzie traktował? Wpisując w wyszukiwarce internetowej hasło HGW otrzymujemy głównie odnośniki do wywiadów, polemik oraz innych spisanych materiałów z udziałem Hanny Gronkiewicz-Waltz. Miłośników polityki i finansów muszę rozczarować - niczego w tym klimacie nie będzie, bo się na tym nie znam, jak również nie mam czego pisać o tej pani, której zresztą także nie znam. Domyślnym Czytelnikom do wyboru pozostała więc tylko niezbyt przyzwoita alternatywa dla zastosowań tego skrótu. Czy rzeczywiście?

Spoglądając na wytłuszczony tytuł felietonu, jak sądzicie Państwo, o czym dzisiejszy będzie traktował? Wpisując w wyszukiwarce internetowej hasło HGW otrzymujemy głównie odnośniki do wywiadów, polemik oraz innych spisanych materiałów z udziałem Hanny Gronkiewicz-Waltz. Miłośników polityki i finansów muszę rozczarować - niczego w tym klimacie nie będzie, bo się na tym nie znam, jak również nie mam czego pisać o tej pani, której zresztą także nie znam. Domyślnym Czytelnikom do wyboru pozostała więc tylko niezbyt przyzwoita alternatywa dla zastosowań tego skrótu. Czy rzeczywiście?

W świecie tworzenia oprogramowania, które rozwijało się z początku tyle żywiołowo, co chaotycznie, ktoś wreszcie wypowiedział wojnę anarchii i ustanowiono inżynierię oprogramowania. Miała ona zwiększyć skuteczność procesu wytwórczego poprzez standaryzowanie pewnych metod. Jednym z tego objawów było wprowadzanie notacji nazewnictwa zmiennych, metod itp. Stylów jest wiele - jak zwykle - i tu także panuje moda na Wieżę Babel. Najbardziej specyficzną wydaje się być tzw. notacja węgierska, o ciekawej genezie, jak i nietuzinkowej manierze.

Czytając dokumentację języka C lub funkcji opartych na tym standardzie pochodzących z fabryk Microsoftu, napotykamy nazwy zmiennych w stylu hwndItem, lpszFile i temu podobne dziwolągi. To jest właśnie notacja węgierska, zainicjowana przez Charlesa Simonyi, pracownika tej firmy, a Węgra z pochodzenia. Programiści amerykańscy, patrząc na tak nietypowe nazewnictwo, w dużej mierze okrojone z samogłosek, mniemali, iż musi to chyba być co najmniej w języku greckim, jeśli nawet nie po węgiersku. Intuicyjnie byli niezwykle blisko prawdy. Ten drugi język jest dla naszych zdolnych przyjaciół zza oceanu równie niezrozumiały jak i dla nas. Ale słaba to pociecha. Niektórzy zaś programiści (stamtąd oczywiście) słyszeli uprzednio o notacji polskiej, służącej do zapisu działań arytmetycznych. Z tego konglomeratu skojarzeń urodziło się pojęcie notacji węgierskiej. Jej specyficzną cechą jest to, że każda zmienna ma na początku swej nazwy prefiks określający jej rodzaj. Na przykład "h" oznacza handle, czyli uchwyt, "w" - word, "g" - zmienną globalną, "wnd" - window, czyli okno. Stąd zmienna hwndItem przechowuje uchwyt okna. Oczywiście dalsza część nazwy jest już uznaniowa. Jedną z wad tego stylu jest brak standardów określających kolejność obowiązkowych prefiksów, co powoduje, że z równym powodzeniem można użyć złożenia "hgw", co i "gwh" lub "wgh". Mnie najbardziej wpada w ucho to pierwsze, chyba z oczywistych względów.

Ostatnio czytałem oryginalną i grubą jak cegła dokumentację producenta dotyczącą obiektowości w Visual Basicu 6.0. Firma nie dość, że nie zrezygnowała z notacji węgierskiej, to jeszcze posługiwała się - chyba złośliwie - przykładami, gdzie długość nazw zmiennych przekracza wszelką percepcyjną przydatność w warunkach polskich.

Dobrnąwszy do końca nazwy, zapomina się jej początek. Bo czy z dydaktycznego punktu widzenia zmienne noszące nazwy mintWithdrawalsMonthToDate lub mstrMothersNaidenName są dobrze zaimplementowanymi przykładami? Zamiast skupić się na meritum sprawy, człowiek zmaga się z rozszyfrowywaniem takich tworów językowych. Bywają książki, które w oryginale czyta się nie najlepiej, nawet jeśli nie są po węgiersku.

Oceń artykuł

średnio: 0 liczba ocen: 0

Komentarze (0)

Najnowsze

MAC, czyli ministerstwo reformowania rządzenia

Premier wspiera lojalnie w kryzysie najbliższego współpracownika, Michała Boniego, przyjmując na siebie atak oburzonych internautów podczas debaty o ACTA.

Nowe, unijne zamówienia publiczne

Komisja Europejska proponuje ważne zmiany prawa wspólnotowego w obszarze zamówień publicznych. Warto im się przyjrzeć bo to jeden z elementów nowej perspektywy finansowej UE. Warto zatem przyjrzeć się owej propozycji bliżej.

Bezpieczeństwo rządowych stron - analiza

Zespół zadaniowy ds. ochrony portali rządowych opublikował wytyczne. Trudno stwierdzić, że to najlepsze rekomendacje, jakie można było przy okazji zaistniałych ataków wypracować.

DEBATA: Kiedy walka polityczna w sieci przemienia się w cyberterroryzm?

Skuteczny atak cybernetyczny przyniesie opłakane skutki dla państwa i gospodarki. Boleśnie się o tym przekonaliśmy, gdy nie można było dostać się na strony internetowe najważniejszych instytucji w Polsce.

Czy MSW chce unieważnienia przetargu na pl.ID?

Rośnie ryzyko całkowitego unieważnienia przetargu na nowe dowody osobiste. Krajowa Izba Odwoławcza odrzuciła odwołanie firmy Sygnity, która nie zgadzała się na wydłużenie o trzy miesiące terminu składania ofert na dostawę blankietów nowych dowodów osobistych. Wydłużenie całego postępowania o trzy miesiące może spowodować skargi uczestniczących w nim firm, a w konsekwencji unieważnienie przetargu.

Garść rad dla roztropnego szefa IT

Trudne czasy w gospodarce to okres, kiedy szczególnego znaczenia nabiera hasło: Jak cię widza, tak cię piszą. Osłabienie rynku przekłada się na oszczędności w przedsiębiorstwie, a oszczędności najłatwiej szukać w działach, które, w opinii zarządu, nie są bezpośrednio związane z prowadzoną działalnością - czyli również w dziale IT.

Sprzeczne wizje e-dowodu

Koncepcja elektronicznego dowodu osobistego powstała w Polsce wiele lat temu. Starsze są koncepcje elektronicznego systemu świadczeń ochrony zdrowia. Mimo to, nadal są w trakcie budowy.

Rekomendacje

Serwisy IDG - Warunki obsługi - Kontakt - Redakcja - Regulamin - O nas - Polityka prywatności - Serwis zgodny z ASME
Reklama - Licencjonowanie treści
Computerworld Polska i Computerworld Polska online są znakami towarowymi IDG Poland SA.
© Copyright 2012 International Data Group Poland S.A. 04-204 Warszawa ul. Jordanowska 12 tel.(+4822)321-78-00 fax(+4822)321-78-88