Program, to lista poleceń zapisana w jednym języku programowania
zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie
danych w określonym przez twórcę zakresie.
Programy (zwane Oprogramowaniem)
tworzą programiści w procesie programowania.
Programowanie to modyfikowanie, rozszerzanie, naprawianie,
ale przede wszystkim tworzenie oprogramowania.
Kod źródłowy (również źródło lub źródła) to program komputerowy
napisany w jednym z języków programowania (np. Delphi, C++Builder itp.).
Kod źródłowy jest zazwyczaj w postaci tekstu, który zrozumiały jest dla
danego kompilatora języka programowania, jak i dla programisty piszącego
program. Kod źródłowy jest przetwarzany na kod maszynowy zrozumiały dla
maszyny (procesora), przez translator lub jest analizowany i wykonywany
przez specjalny program zwany interpreterem.
Interpreter to rodzaj programu komputerowego (translatora),
który analizuje kod źródłowy dowolnego języka programowanie
(np. BASIC), a przeanalizowane fragmenty (zazwyczaj
jedna instrukcja) są wykonywane.
W przypadku napotkania błędu
interpreter nie musi ponownie tłumaczyć kodu od początku do miejsca
jego wystąpienia (tak jak to robi kompilator), tylko kontynuuje od
linii zawierającej błąd. W efekcie czas potrzebny na interpretację
całego kodu jest mniejszy niż przy kompilacji. Wygenerowany kod jest
jednak mniej efektywny (większy i wolniejszy).
Kompilator (ang. compiler) to program służący do automatycznego
tłumaczenia kodu źródłowego dowolnego języka programowanie (np. Delphi,
C++Builder ) na język maszynowy. W przypadku wystąpienia błędu,
kompilacja zostaje wstrzymana. Po poprawieniu błędu kompilacja kodu
źródłowego rozpoczyna się od początku. Stosowanie kompilatorów ułatwia
programowanie (programista nie musi znać języka maszynowego) i pozwala
na większą przenośność kodu pomiędzy platformami.
Kompilacja to proces tłumaczenia kodu źródłowego na kod maszynowy,
dokonywany przez kompilator. Kompilacja jest swego rodzaju tłumaczeniem
pomiędzy językami zrozumiałymi dla człowieka i maszyny. Polega na zamianie
ciągu znaków, którego używa człowiek do reprezentacji jakiejś operacji na
odpowiadający mu ciąg instrukcji.
W zależności od złożoności języka,
proces ten jest mniej lub bardziej skomplikowany.
Biblioteka (w informatyce) – to zbiór klas, funkcji
(i ew. innych konstrukcji programistycznych), z których korzystają
programiści piszący program.
Konsolidator (linker) - jeden z programów składowych kompilatora.
Konsolidator łączy biblioteki z plikami zawierającymi kody źródłowe,
które korzystają z dołączanych bibliotek.
Kod maszynowy to postać programu komputerowego
(zwana postacią wykonywalną lub binarną) przeznaczona do
bezpośredniego lub prawie bezpośredniego wykonania przez
konkretny typ procesora, wyrażona w postaci kodów rozkazów
procesora i ich argumentów, praktycznie nieczytelna dla człowieka.
Kod pośredni to skompilowany program najczęściej w języku
JAVA z rozszerzeniem „class”, który może być wykonany na wirtualnej
maszynie JAVY (VM). W przeciwieństwie do zwykłych kompilatorów,
które produkują
kod (w języku maszynowym) możliwy do wykonania
na określonym typie komputera, kompilator JAVY tworzy kod pośredni,
który może być wykonany na dowolnym komputerze wyposażonym w jego
interpreter (zwany maszyną wirtualną). Ponieważ kod ten interpretowany
jest przez maszynę wirtualną, powoduje to, że działa on wolniej niż
program napisany dla danego typu komputera.
Maszyna wirtualna (ang. Virtual Machine, VM) to ogólna nazwa
programów tworzących środowisko uruchomieniowe dla innych programów.
Maszyna wirtualna kontroluje wszystkie odwołania uruchamianego programu
bezpośrednio do sprzętu lub systemu operacyjnego i zapewnia ich obsługę.
Dzięki temu program uruchomiony na maszynie wirtualnej "myśli", że działa
na rzeczywistym sprzęcie, podczas gdy w istocie pracuje na sprzęcie
wirtualnym (udawanym).
Plik wykonywalny – plik, który może być uruchomiony bezpośrednio
w środowisku systemu operacyjnego. Najczęściej zawiera binarną
reprezentację instrukcji konkretnego typu procesora. Oprócz tego
znajdują się w nim zwykle wywołania systemowe, dlatego pliki
wykonywalne zazwyczaj są specyficzne nie tylko dla danego procesora,
ale też dla danego systemu operacyjnego. Nie dotyczy to sytuacji,
kiedy zawierają formę pośrednią, która do uruchomienia wymaga
interpretera lub maszyny wirtualnej – takie pliki mogą być zwykle
uruchamiane na różnych systemach.
Algorytm - w matematyce oraz informatyce to skończony, uporządkowany
zbiór jasno zdefiniowanych czynności koniecznych do wykonania pewnego
zadania, w ograniczonej liczbie kroków. Algorytm ma przeprowadzić system
z pewnego stanu początkowego do pożądanego stanu końcowego.
Rysunek 1. Przedstawia przykładowy schemat blokowy ilustrujący dzielenie dwóch liczb.

Podprogram (inaczej funkcja lub procedura) - termin związany
z programowaniem proceduralnym. Podprogram to wydzielona część programu
wykonująca jakieś operacje. Podprogramy stosuje się, aby uprościć program
główny
i zwiększyć czytelność kodu.
W pewnych językach programowania dzieli się podprogramy na funkcje i procedury:
- Funkcja zwraca wynik wykonanego zadania (np. funkcja obliczająca pierwiastek kwadratowy);
- Procedura natomiast nie zwraca żadnego wyniku, a zamiast tego wykonuje pewne działania
(np. procedura czyszcząca ekran);
Podział ten występuje w językach takich jak Pascal i ADA
(język wykorzystywany w lotnictwie i wojsku).
W pozostałych językach
(m. in. w C i C++) nie ma już takiego rozróżnienia i funkcją jest
każdy podprogram, niezależnie od tego czy zwraca jakieś wartości
i czy ma wpływ na program.
Typ danych - w językach programowania opis rodzaju, struktury
i zakresu wartości, jakie może przyjmować stała, zmienna i argument
(funkcji lub procedury).
Stała - to wartość (liczbowa, tekstowa, itp.), która nie zmienia
się w trakcie działania programu. Stałą zawsze umieszczamy przed
zmienną, która będzie wykorzystywała stałą.
Na przykład:
const iIloscElementow = 9;
var Elementy :
array[0..numIloscElementow]
of string;
begin { TODO -oUser -cConsole Main : Insert code here }
end.
Zmienna to obszar pamięci przechowujący jakieś dane.
O rodzaju i sposobie prezentacji tych danych decyduje typ zmiennej.
Rozróżniamy następujące zmienne:
- Zmienna lokalna to zmienna widoczna tylko w obrębie danej procedury lub bloku, tworzona
w momencie inicjowania bloku i niszczona w momencie kończenia bloku;
- Zmienna globalna to zmienna widoczna w obrębie całego programu;
Zmienna tablicowa to (w informatyce) zmienna, która może
przechowywać wiele wartości tego samego typu jednocześnie
(w postaci tablicy). Taką zmienną jest np. tablica liczb
a = [1, 2, 3, 4], ponieważ przechowuje ona
4 wartości na raz.
Tablica kodów ASCII
(ang. American Standard Code for Information Interchange)
stanowi zestaw kodów używanych do reprezentacji znaków
(liter, cyfr, znaków specjalnych np. @, $, # itp.).
Każdy znak w tabeli ma przyporządkowaną wartość liczbową,
np. litera „A” ma numer 65.
Tablica ASCII składa się 255 znaków,
które podzielone są na kilka grup:
- Od 0 do 31 – znaki sterujące np. drukarką;
- Od 32 do 126 – znaki podstawowe;
- Od 127 do 255 – znaki dodatkowe (zawierają znaki graficzne, oraz znaki polskie itp.).
Podstawowa tabela ASCII (tj. od 0 do 127) nie podlega wymianie,
natomiast rozszerzona tablica (tj. od 128 do 255) może ulegać
zmianie np. w celu zakodowania polskich znaków.

W związku z niewystarczającą ilością znaków, tabela ASCII została zastąpiona inną tabelą znaków zwaną UNICODE.
Unicode (zwany czasem po polsku Unikod) to komputerowy
zestaw znaków mający w zamierzeniu obejmować wszystkie pisma
używane na świecie.