PrzemianowanieA. Nico Habermann, Dewayne E. Perry, Ada dla zaawansowanych, Wydawnictwa Naukowo-Techniczne, Warszawa 1989 r., seria: Biblioteka Inżynierii Oprogramowania, w programowaniu to konstrukcja programistyczna dostępna w określonym języku programowania polegająca na przypisaniu pewnemu, wcześniej zdefiniowanemu obiektowiobiektu kodu nie należy mylić z instancją klasy w programowaniu obiektowym, jako obiekty kodu rozumieć tu należy w szczególności nazwane zmienne, pola struktur, podprogramy występującemu w kodzie źródłowym, nowej, dodatkowej nazwy (np. identyfikatora). Stosowanie takiego zabiegu programistycznego ma w szczególności na celu skrócenie odwołań do pól zawartych ze złożonych strukturach danych, takich jak struktury, rekordy, unie, klasy itd., w przypadku zbyt rozbudowanych selekcji. Pozwala na zwiększenie przejrzystości kodu źródłowego i ułatwia pisanie koduMichael Marcotty, Henry Ledgord, W kręgu języków programowania, tłumaczenie: Krystyna Jerzykiewicz, Wydawnictwa Naukowo-Techniczne, Warszawa 1980, Seria: Biblioteka Inżynierii Oprogramowania, .
Przykładem przemianowania jest konstrukcja dostępna w języku Ada: identyfikator:typ renames obiekt_przemianowywany Jeżeli zadeklarowany zostanie rekord: type data is record dzien:INTEGER; miesiac:INTEGER; rok:INTEGER; end record; ... declare zapis:data; ... można zastosować przemianowanie umożliwiające odpowiednie skrócenie zapisu selekcji (np. zapis.dzien) w odwołaniach do pól rekordu: declare dz:INTEGER renames zapis.dzien; begin ... dz:=5; ... end;
Przemianowanie dostępne jest w takich językach jak: Ada, CobolEugeniusz Kurzydrem, Andrzej Macieliński, Urszula Szmidt, Eugeniusz Więcek, COBOL. Język programowania., Państwowe Wydawnictwo Ekonomiczne, Warszawa 1978, wydanie drugie, Euclid.
W Cobolu konstrukcja związana z przemianowywaniem jest rozszerzona w stosunku np. do Ady, o możliwość grupowania sąsiadujących pól. Ma postaćnawiasy klamrowe grupują część opcjonalną konstrukcji i nie są jej częścią, fraza THRU wiąże się ze wspomnianym grupowaniem pól: 66 nazwa_1 RENAMES nazwa_2 [THRU nazwa_3]
Przemianowanie jest więc deklaracją nowej, dodatkowej nazwy, a nie zastąpieniem już istniejącej. Dotychczasowa nazwa danego obiektu jest nadal dostępna. Zawarte w literaturze przedmiotu, m.in. w pracy o Adzie nazewnictwo w odniesieniu do tego pojęcia, wynikające z tłumaczenia angielskiego słowa renamessłowa, które najczęściej jest używane w składniach języków do określenia tej konstrukcji, jest więc nieco mylące i nie odpowiada wprost polskiemu znaczeniu użytego słowa przemianowanie w odniesieniu do znaczenia konstrukcji programistycznej polegającej na dodaniu dodatkowej nazwy.
Efekt identyczny z przemianowaniem można uzyskać stosując nakładanie zmiennych identycznych typów. Przykładowo (Turbo Pascal)Andrzej Marciniak, Borland Pascal 7.0, Wyd. Nakom, Poznań 1994 r., seria: Biblioteka Użytkownika Mikrokomputerów , ISSN 0867-6011: var a : byte; b : byte absolute a;
Uwagi
Przypisy
Kategoria:Konstrukcje programistyczne