Ogólnie
Każdy program ma swoją strukturę. Dzięki niej wiemy w jakiej kolejności wykonuje się kod i co za co odpowiada. Weźmy na warsztat kilka języków programowania i przykładowe programy w nich napisane.
Każdy program ma swoją strukturę. Dzięki niej wiemy w jakiej kolejności wykonuje się kod i co za co odpowiada. Weźmy na warsztat kilka języków programowania i przykładowe programy w nich napisane.
Programy w BASIC-u składają się z kolejno wykonywanych instrukcji, które zebrane są w wiersze. Wszystkie dialekty oprócz najprymitywniejszych dopuszczają kilka instrukcji w jednym wierszu, rozdzielonych zazwyczaj znakiem dwukropka. Starsze wersje wymagały numerowania wierszy (maksymalny numer wynosił zwykle 9999, 16384, 32767, czasami 65535 co miało miejsce w Meritum).
Zmienne mogą mieć dowolnie długie nazwy zaczynające się od litery. Nazwy zmiennych łańcuchowych zakończone są znakiem dolara, np. x$, zmienna$. Tablice mogą mieć dwa lub więcej wymiarów (w niektórych dialektach tablice znakowe służą do wskaźnikowego dostępu do łańcuchów, jak w C).
BASIC w sprowadzonej do wspólnego mianownika wersji posiada bardzo proste mechanizmy sterowania przebiegiem programu - instrukcję skoku bezwarunkowego GOTO, wywołania podprogramu GOSUB (kończonego instrukcją RETURN) oraz warunkową IF..THEN (oraz ELSE w niektórych dialektach). Za pomocą konstrukcji FOR..NEXT można powtarzać określone fragmenty programu w pętli iteracyjnej.
10 PRINT "Witaj" 20 INPUT "Ile gwiazdek mam wydrukowac"; ile 30 PRINT "*"; 40 LET ile = ile -1 50 IF ile > 0 THEN GOTO 30Powyższy program to klasyczny, niestrukturalny BASIC. Linie są w nim numerowane a pętle uzyskuje się używając instrukcji skoku GOTO. Duża liczba skoków powodowała, że kod wczesnego BASIC-a był często trudny do odczytania i zrozumienia, powstał nawet termin spaghetti code określający taki sposób tworzenia programów.
Program w języku C składa się ciągu funkcji. Jedna funkcja jest wyróżniona i nosi nazwę main. Pełni ona rolę programu głównego w innych językach. Od niej zawsze zaczyna się wykonywanie programu.
Poniżej przedstawiono przykład prostego programu w języku C:
/* Program wyświetla komunikat na ekranie */ #include <studio.h> main () { printf(„c – kolejny jezyk programowania \n”); }Pierwszy wiersz jest komentarzem opisującym działanie programu. Komentarz rozpoczyna się znakami /* i kończy znakami */. Może on być umieszczony w dowolnym miejscu programu.
Cechą wyróżniającą Pythona spośród innych języków jest stosowanie wcięć do wydzielania bloków kodu. Jest to cecha unikalna wśród powszechnie stosowanych języków programowania, jako pierwsza rzucająca się w oczy programistom nie piszącym w Pythonie.
W językach programowania wywodzących strukturę blokową od Algola (niekoniecznie bezpośrednio) – np. Pascalu, C, czy Perlu – bloki kodu zaznaczane są klamrami lub słowami kluczowymi (C i Perl używają { }, Pascal używa begin i end). Jednakże we wszystkich tych językach programiści tradycyjnie stosują wcięcia by wyróżnić bloki w otaczającym kodzie.
Natomiast Python dziedziczy cechę mniej znanego języka ABC – zamiast interpunkcji czy słów kluczowych używa samych wcięć do zaznaczania bloków. Wyjaśnić to można na prostym przykładzie zamieszczonym poniżej. Przedstawiona jest w nim funkcja licząca silnię w C i w Pythonie:
silnia w C: int silnia(int x) { if (x == 0) return 1; else return x * silnia(x-1); } silnia w Pythonie: def silnia(x): if x == 0: return 1 else: return x * silnia(x-1)Dla niektórych programistów przyzwyczajonych do języków stylistycznie wzorowanych na Algolu, gdzie spacja nie ma znaczenia składniowego, może to być mylące. Spotyka się czasem niepochlebne porównanie do sztywnego systemu kolumnowego stosowanego w czasach fortranowych kart perforowanych.
W Javie każdy program posiada pewną sztywną strukturę. Nie proszę, abyś ją zrozumiał (jeszcze nie teraz), ale żebyś po prostu zapamiętał ją i przyjął, że taka jest (z czasem wszystko stanie się dla Ciebie jasne).
public class NazwaPliku { public static void main (String [] args) { } }Jeżeli chciałbyś uruchomić ten program, musiałbyś go zapisać w pliku NazwaPliku.java. Po prostu w miejscu gdzie widnieje NazwaPliku musisz wpisać nazwę pliku, w którym zapisujesz swój program.
public class Pusty { public Pusty() { // Tutaj kod programu } public static void main(String [] args) { new Pusty(); } }Powyższy kod tworzy obiekt klasy, którą projektujemy - dzięki temu ograniczenia związane z pisaniem kodu w metodzie statycznej znikają. Zastanawiać może jeszcze fragment kodu String [] args - jest to nic innego jak przekazanie do programu listy (tutaj tablicy) stringów (łańcuchów znaków czy jak wolisz napisów), będących parametrami wywołania Twojego programu. To właśnie poprzez zmienną args (arguments) otrzymujesz dostęp do wszystkich parametrów z jakimi została uruchomiona twoja aplikacja. Przekazanie parametrów od wersji Java SE5 może wyglądać również tak:
public static void main(String ... args) {