Tworzenie programów#

Języki takie jak Fortran, C, C++ i Java, żeby wymienić tylko kilka, dzielą wspólne cechy: piszesz kod w swoim wybranym języku, ale później musisz stworzyć program wykonywalny do twojego kodu źródłowego. Inne języki są interpretowane - kod źródłowy jest analizowany przez specjalny program i rozumiany jako bezpośrednie instrukcje. Dwa bardzo proste przykłady takich języków to pliki wsadowe Windows (Windows batch files) oraz skrypty powłoki Linux (Linux shell scripts).

W tym poradniku koncentrujemy się na pierwszym typie języków, z Fortranem jako głównym przykładem. Jedną z zalet języków kompilowanych jest to, że proces kompilacji potrzebny do stworzenia programu wykonywalnego służy przekształceniu zrozumiałego dla człowieka kodu źródłowego w wydajny program, który można uruchomić na komputerze.

Uwaga: ten poradnik daje przykłady dla systemów operacyjnych Windows oraz Linux, jednak przepływ pracy oraz główne zasady obowiązują również w macOS.

Języki kompilowane#

Spójrzmy na prosty przykład:

program hello
    write(*,*) 'Hello!'
end program hello

Jest to jeden z najprostszych programów jakie możesz napisać w języku Fortran i jest jedną z wariacji jednego z najbardziej popularnych programów. Pomimo tego, że wydaje się prosty do napisania, wiele rzeczy dzieje się, kiedy plik wykonywalny stworzony z tego kodu jest uruchamiany:

  • Proces jest uruchamiany na komputerze w taki sposób, że może on zapisywać dane w konsoli — oknie (DOS-box, xterm, …), w którym wpisujesz nazwę programu.

  • Zapisuje on tekst „Hello!” w konsoli. Aby to zrobić musi poprawnie współpracować z konsolą.

  • Kiedy to jest zrobione, kończy swoje działanie czyszcząc wszystkie zasoby (pamięć, połączenie z konsolą etc.).

Na szczęście, jako programista języka wysokiego poziomu nie musisz brać pod uwagę tych wszystkich detali. Właściwie, są to rzeczy, którymi będzie się zajmował proces kompilacji: kompilator oraz program łączący.