Od razu zaznaczam, i┐ nie jest to s│ownik dla ludzi, kt≤rzy z nud≤w przerabiaj▒ j▒dro Linuxa. Tylko dla tych, kt≤rzy nie maj▒ pojΩcia co to jest programowanie lub wiedz▒ o tym zagadnieniu bardzo ma│o. Znajdziecie tu s│ownictwo zwi▒zane z programowaniem strukturalnym i obiektowym.

Abstrakcja danych - jest to cecha obiekt≤w. Wewn▒trz obiektu grupowane s▒ wszystkie informacje potrzebne do jego opisu. Za│≤┐my, ┐e obiekt opisuje samoch≤d, wtedy powinien zawieraµ informacje o: kolorze samochodu, numerach seryjnych, numerze rejestracyjnym, modelu auta itp.

Akcja - Patrz => Instrukcja.

Algorytm - regu│y postΩpowania s│u┐▒ce do rozwi▒zania konkretnych zada± dla r≤┐nych zestaw≤w danych. Algorytm zapewnia otrzymanie rozwi▒zania w sko±czonej liczbie krok≤w. Patrz => Program.

Alokacja - np. w C++ nadanie jakiemu╢ obiektowi okre╢lonego miejsca, np. w pamiΩci komputera.

Biblioteka - to jaka╢ ilo╢µ procedur lub funkcji, przewa┐nie ju┐ skompilowana. Do│▒cza siΩ j▒ do jakiego╢ programu. Zawiera r≤┐ne algorytmy.

Blok - np. w Turbo Pascalu instrukcje objΩte s│owami "BEGIN" i "END". Kilka lub kilkadziesi▒t instrukcji zawartych w procedurze.

B│▒d formalny - wystΩpuje podczas kompilacji lub interpretacji. Nie mo┐na w tym przypadku programu skompilowaµ, aby by│ wykonywalny. Jest to przewa┐nie spowodowane niedok│adn▒ znajomo╢ci▒ jΩzyka programowania lub zagapieniem przy pracy programisty. Trudno jest taki b│▒d wykryµ, szczeg≤lnie przez pocz▒tkuj▒cego w du┐ym i d│ugim kodzie. W Turbo Pascalu taki b│▒d jest powodowany w przypadku, gdy zapomni siΩ postawiµ gdzie╢ kropki czy ╢rednika.

B│▒d wykonania - kod jest napisany zgodnie z zasadami jΩzyka programowania. Program mo┐e byµ wykonywalny, jednak nie dzia│aµ prawid│owo - zgodnie z zamierzeniami programisty.

Bug - to czego programi╢ci nie lubi▒ najbardziej, czyli b│▒d w programie (pluskwa). Por. => Debbuger.

Dane - s▒ to: s│owa, obrazy, liczby ca│kowite, liczby rzeczywiste, listy, rekordy, pliki, zbiory, polecenia wydawane komputerowi przez u┐ytkownika oraz zdarzenia.

Debbuger - to "usuwacz" b│Ωd≤w. Znajduje i pomaga zlikwidowaµ r≤┐ne b│Ωdy wystΩpuj▒ce w kodzie ╝r≤d│owym.

Deklaracja - poinformowanie systemu programowania, ┐e nazwa kt≤rej u┐ywasz do czego╢ siΩ odnosi, np. do zdefiniowanej wcze╢niej tablicy.

Destruktor - procedura, wywo│ywana automatycznie przed usuniΩciem obiektu.

Dziedziczenie - to cecha obiekt≤w. Umo┐liwia ona przypisanie pewnych cech jednego obiektu, drugiemu.

Edytor kodu - tu powstaje kod ╝r≤d│owy programu.

Etykieta - ka┐da instrukcja poprzedzona cyframi od 0 do 9999 lub │a±cuchem znak≤w. Umo┐liwia p≤╝niejsze odnoszenie siΩ do danej instrukcji opatrzonej etykiet▒.

Fraktale - tworzy siΩ je przy pomocy rekurencji. Maj▒ bardzo r≤┐ne i ciekawe kszta│ty. Sk│adaj▒ siΩ z krzywych.

Instancja - to konkretny egzemplarz z Klasy, dla uproszczenia zwany obiektem.

Instrukcja - czΩ╢µ wykonawcza programu. Jedna linia. Inaczej: opis akcji, dzia│anie, operacja. Por. => Blok.

Interpreter - to przeciwie±stwo kompilatora. On r≤wnie┐ t│umaczy kod ╝r≤d│owy na maszynowy, ale sprawdza po jednej linii kodu i ka┐d▒ oddzielnie t│umaczy. Czas interpretacji jest szybszy od kompilacji, jednak kod w ten spos≤b wygenerowany jest wolniejszy i wiΩkszy.

Iteracja - jest to pojedynczy obieg pΩtli.

JΩzyk niskiego poziomu - jednemu rozkazowi dla komputera odpowiada jeden rozkaz programisty Polecenia w nim s▒ zapisywane symbolicznie.

JΩzyk problemowy - jest przeznaczony do okre╢lonych zada±. Do tworzenia program≤w powi▒zanych czym╢ ze sob▒. Jego przeciwie±stwo to jΩzyk uniwersalny, taki jak np. Pascal, kt≤ry mo┐e byµ zastosowany praktycznie do wszystkiego.

JΩzyk programowania - zapewnia │▒czno╢µ (dialog) miΩdzy programist▒, a komputerem. Na pocz▒tku program ma postaµ kodu ╝r≤d│owego, nastΩpnie jest t│umaczony przez kompilator lub interpreter.

JΩzyk wysokiego poziomu - jednemu rozkazowi programisty mo┐e odpowiadaµ kilkadziesi▒t polece± dla komputera. Polecenia bardziej przypominaj▒ normalny jΩzyk (przewa┐nie angielski). S▒ niezale┐ne od komputera i systemu operacyjnego.

Klasa - to po prostu obiekt.

Kod maszynowy - jest to ci▒g zer i jedynek, powsta│y po procesie kompilacji lub interpretacji kodu ╝r≤d│owego. Jest on zrozumia│y tylko dla procesora.

Kod ╝r≤d│owy (zwany r≤wnie┐ listingiem) jest zrozumia│y dla programisty, mo┐e on dowiedzieµ siΩ na podstawie listingu danego programu, jak wygl▒da i do czego s│u┐y ten program.

Komentarze - to takie teksty, kt≤re programi╢ci umiejscawiaj▒ w kodzie ╝r≤d│owym programu, aby wygl▒da│ ja╢niej i przejrzy╢ciej. S▒ to np. opisy jakich╢ funkcji czy procedur. Kompilator nie bierze ich pod uwagΩ.

Kompilator - t│umaczy kod ╝r≤d│owy na kod maszynowy (ci▒g zer i jedynek). Kompilator na pocz▒tku sprawdza ca│y kod ╝r≤d│owy, po czym nastΩpuje proces translacji (t│umaczenia). Ka┐dy jΩzyk programowania ma sw≤j kompilator, a czasem nawet kilka. Por. => Interpreter.

Konstruktor - procedura wywo│ywana automatycznie przed utworzeniem obiektu.

Metoda - procedura, kt≤ra wykonuje dzia│anie na obiekcie, np. sortowanie tablicy.

Modu│ - stanowi opis okre╢lonego dzia│ania (zadania) na okre╢lonych obiektach. Wydzieleniem w algorytmie modu│≤w nazywamy modularyzacj▒ algorytmu.

Obiekt - to dane, kt≤re mog▒ byµ zmiennymi lub sta│ymi, jakimi╢ parametrami. Inaczej klasa.

Parametry aktualne - s▒ to konkretne warto╢ci przypisane parametrom formalnym, np. tablicy.

Parametry formalne - s▒ to nazwy obiekt≤w, np. tablic.

PΩtla - jest to polecenie, kt≤re ma na celu wykonanie jakiej╢ czynno╢ci, np. 5 razy lub powtarzanie jej bez przerwy, dop≤ki u┐ytkownik nie naci╢nie, np. ESC. Powtarzane s▒ jakie╢ instrukcje, dop≤ki nie zostanie spe│niony jaki╢ warunek.

Polimorfizm - to cecha obiekt≤w. Za│≤┐my, ┐e mamy klasΩ ZwierzΩ i obiekty Krowa oraz Wilk, kt≤re s▒ dziedziczone z klasy ZwierzΩ. Klasa ZwierzΩ ma metodΩ ha│asuj. Krowa muczy, a Wilk wyje. Je┐eli zrobimy tablicΩ obiekt≤w ZwierzΩ to ka┐demu elementowi z tablicy bΩdzie mo┐na przypisaµ warto╢µ typu Krowa, Wilk lub ZwierzΩ. Dla ka┐dego z element≤w tablicy mo┐na wywo│aµ metodΩ ha│asuj.

Poprawno╢µ - inaczej sko±czono╢µ, sprawno╢µ algorytmu (programu). Program nie ma b│Ωd≤w wykonania.

Procedura - inaczej podprogram, blok. Stosowane s▒ w programowaniu strukturalnym. Daj▒ przejrzysto╢µ w kodzie ╝r≤d│owym i odpowiednio pouk│adane - rozwi▒zanie jakiego╢ problemu.

Program - to skompilowany jaki╢ kod ╝r≤d│owy, kt≤ry jest wykonywalny. Ma rozszerzenie "exe". Przeznaczenie program≤w komputerowych jest nie do okre╢lenia, przydaj▒ siΩ one dos│ownie w ka┐dej dziedzinie ┐ycia.

Programista - to taki cz│owiek, kt≤ry zna wiele jΩzyk≤w programowania, tworzy z ich pomoc▒ wiele r≤┐nych aplikacji (program≤w komputerowych).

Programowanie - to inaczej tworzenie program≤w komputerowych za pomoc▒ r≤┐nych jΩzyk≤w programowania. Programista wpisuje kod zrozumia│y dla niego, a maszyna t│umaczy go dla siebie na tzw. kod zerojedynkowy. Wyr≤┐niamy programowanie strukturalne: nadawanie programom okre╢lonej struktury, za pomoc▒ funkcji i procedur; a tak┐e obiektowe: nadawanie struktury za pomoc▒ funkcji, procedur oraz obiekt≤w, z kt≤rymi s▒ powi▒zane.

Programowanie wstΩpuj▒ce - w programowaniu strukturalnym rozwi▒zywanie problemu za pomoc▒ wydzielonych prostszych zada±.

Programowanie zstΩpuj▒ce - w programowaniu strukturalnym rozwi▒zywanie problemu w jednym og≤lnym, dobrze przemy╢lanym planie.

Programy wykonywalne - zawieraj▒ bezpo╢rednio wykonywane przez procesor rozkazy komputerowe.

Przypisanie - przypisanie np. warto╢ci zmiennej.

Rekord - jest to z│o┐ona struktura danych, zawiera ona zbi≤r element≤w. Elementy nie musz▒ byµ tego samego typu.

Rekurencja - procedura, kt≤ra wywo│uje sama siebie.

Sekwencja - instrukcje wykonywane w kolejno╢ci, w jakiej zosta│y zdefiniowane.

Sko±czono╢µ - patrz => poprawno╢µ.

Sprawno╢µ - oznacza, ┐e dany algorytm (program) ma mniejsz▒ z│o┐ono╢µ czasow▒ (jest szybszy) i z│o┐ono╢µ pamiΩciow▒ (zajmuje mniej miejsca w pamiΩci).

Sta│a - ma z g≤ry okre╢lon▒ warto╢µ w przeciwie±stwie do zmiennej nie mo┐na jej zmieniaµ.

System programowania - oprogramowanie s│u┐▒ce do opracowywania i u┐ywania program≤w zapisanych zgodnie z regu│ami danego jΩzyka programowania.

Tablica - to z│o┐ona struktura danych, kt≤ra zawiera zbi≤r element≤w tego samego typu. Wyr≤┐niamy tablice jednowymiarowe i wielowymiarowe.

Translator - np. kompilator lub interpreter.

Tryb tekstowy - w programie nie wystΩpuje grafika, tylko sam tekst. Jest jednak tzw. pseudografika stworzona ze znak≤w ASCII.

W│a╢ciwo╢µ - to taka procedura, kt≤ra zmienia jak▒╢ cechΩ obiektu np. nazwΩ rekordu czy warto╢µ zmiennej. Sprawdza czy dana zmiana cechy jest dozwolona.

Wska╝nik - adres w pamiΩci zmiennej dynamicznej.

Wynik - to wykonanie akcji na obiektach.

Zbi≤r - jest to z│o┐ona struktura danych.

Zmienna - posiada nazwΩ i warto╢µ, mo┐e to byµ znak, liczba, │a±cuch (ci▒g znak≤w). W danym jΩzyku programowania mog▒ byµ inne rodzaje zmiennych. Zmienne:
lokalne: deklarowane w procedurze;
globalne: deklarowane w programie g│≤wnym;
logiczna: ma warto╢ci - prawda (true) i fa│sz (false);
proste: pojedyncze warto╢ci np. liczby, tekst;
z│o┐one: np. rekordy, tablice;
statyczna: istnieje przez czas wykonywania tej czΩ╢ci programu, w kt≤rej zosta│a wprowadzona;
dynamiczna: pamiΩµ jest przydzielana i zwalniana na okre╢lone ┐▒danie;

ReV

Ksi▒┐ki:

Je╢li chcecie wiΩcej informacji o samym programowaniu (+ praktyka) w r≤┐nych jΩzykach, to polecam:
- "Elementy Informatyki " - Grzegorz P│oszajski [WSiP S.A. 1999]
Co prawda ta ksi▒┐ka nie dotyczy tylko i wy│▒cznie programowania (s▒ tam podstawy og≤lnej informatyki), ale pocz▒tkuj▒cy mo┐e siΩ z niej dowiedzieµ wielu ciekawych rzeczy i spr≤bowaµ swoich si│ w Turbo Pascalu, QBasic, dBase, SQL, Visual Basic. Og≤│em - dobre wprowadzenie w ╢wiat programowania. Cena oko│o 30 PLN.
- "Informatyka bez tajemnic" - Zdzis│aw Nowakowski, Witold Sikorski [Mikom 1999] CzΩ╢µ III programowanie mikrokomputer≤w. Wydanie V - rozszerzone.
Ksi▒┐ka godna uwagi. Jest po╢wiΩcona tylko programowaniu, wiΩc bardziej zag│Ωbia siΩ w ten temat. Mo┐emy nauczyµ siΩ z niej podstaw jΩzyka: Logo Komeniusz, Turbo Pascal, Visual Basic, jΩzyka C. Cena oko│o 15 PLN.

Mam nadziejΩ, ┐e zainteresowa│em Ciebie chocia┐ trochΩ tym niespotykanie ciekawym i ogromnym tematem, jakim jest programowanie...

Artyku│ pochodzi z magazynu Ready ( http://www.ready.gery.pl )