Zawartość
- Czas budowy
- Runtime
- Różnica
- Błędy w czasie kompilacji
- Katastrofalne błędy w czasie wykonywania
- Błędy logiczne czasu wykonywania
Sposób działania programu komputerowego jest tajemnicą dla typowego użytkownika, który ufa pracy programistów. Programista musi zrozumieć, w jaki sposób komputer spodziewa się otrzymywać polecenia w dwóch etapach wykonywania (czas kompilacji i czas wykonania), oprócz innych koncepcji.
Czas budowy
Pierwszy etap wykonywania programu, czas kompilacji, polega na przetłumaczeniu języka zrozumiałego dla ludzi, czyli „kodu źródłowego” na język zrozumiały dla komputera, czyli „kod maszynowy”. Kod źródłowy zawiera słowa, które rozpoznajesz, liczby w formacie dziesiętnym i zorganizowane struktury, które ułatwiają zrozumienie przepływu instrukcji. Krok kompilacji kończy się, gdy nowy program jest plikiem wykonywalnym.
Runtime
Komputer używa instrukcji wyświetlanych w czasie kompilacji do uruchomienia programu. W czasie wykonywania komputer odczytuje tłumaczenie kodu źródłowego w celu wykonania zadań włączonych przez programistę. Za każdym razem, gdy ktoś uruchamia program, robi to w czasie wykonywania.
Różnica
Czas kompilacji jest przekraczany tylko raz, aby przetłumaczyć kod źródłowy na plik wykonywalny, który można wywołać tyle razy, ile potrzeba, bez ponownej kompilacji, chyba że program wymaga zmian. Większość użytkowników używa tylko środowiska wykonawczego.
Błędy w czasie kompilacji
Błędy mogą wystąpić na obu etapach wykonywania programu. W kodzie źródłowym występują błędy czasu kompilacji lub błędy składniowe. Przykładami tego są błędnie napisane polecenia, problemy z kolejnością operacji, niekompatybilne kombinacje typów zmiennych i pominięcia niezbędnych elementów. Programista może łatwo wykryć błędy w czasie kompilacji, ponieważ są one raczej syntaktyczne niż logiczne. Kompilator zwykle znajduje błąd w czasie kompilacji i wyjaśnia lub podaje wskazówki dotyczące jego rozwiązania. Jeśli kompilator tworzy plik wykonywalny z kodu, program nie ma błędów w czasie kompilacji.
Katastrofalne błędy w czasie wykonywania
Błędy w czasie wykonywania mogą spowodować awarię programu i jego wcześniejsze zakończenie. Przykładami takich błędów są dostęp do ograniczonej pamięci i dzielenie przez zero. Instrukcja „x / y” jest poprawna składniowo, ale jeśli „y” zawiera wartość 0 w czasie wykonywania, program zakończy się niepowodzeniem. Programista może mieć trudności ze znalezieniem błędów w czasie wykonywania, ponieważ zwykle występują one w określonych warunkach.
Błędy logiczne czasu wykonywania
Błąd logiczny nie powoduje awarii programu, ale powoduje, że działa on w sposób, którego programista nie chce. Rozważ program z menu opcji, które oczekuje od użytkownika wprowadzenia żądanego numeru opcji. Jeśli użytkownik wpisze literę, program czekając na liczbę, może przekształcić ją w wartość liczbową i wysłać użytkownika do jednej z opcji, wyglądając, jakby nic się nie stało, zamiast poinformować, że użytkownik wpisał nieprawidłową opcję.