Przekazywanie przez wartość: Parametr: Kopia argumentu. Skutki: Zmiany w parametrze nie wpływają na oryginał. Przekazywanie przez referencję: Parametr: Odniesienie do argumentu. Skutki: Zmiany w parametrze wpływają na oryginał.
Zmienne globalne: dostępne w całym programie, istnieją przez cały czas, modyfikowane przez każdą funkcję Zmienne lokalne: ograniczone do bloku kodu, istnieją tylko podczas działania funkcji, niedostępne poza blokiem
dlaczego parametry funkcji przekazywane przez wartosc sa jej zmiennymi lokalnymi
Modularność: Programy powinny być podzielone na niezależne moduły. Kontrola przepływu: Używanie jasno określonych struktur sterujących. Zasada jednego wejścia/wyjścia: Każda funkcja powinna mieć jedno miejsce na argumenty i jedno na zwrot.