Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

Procedura z wywołaniem innej procedury

Termin Definicja
Procedura z wywołaniem innej procedury

Procedura z wywołaniem innej procedury to zagnieżdżona logika, w której jeden obiekt korzysta z drugiego.

Na czym polega wywołanie procedury przez inną procedurę

Procedura z wywołaniem innej procedury to fragment programu, w którym procedura nadrzędna uruchamia procedurę podrzędną w celu wykonania określonego zadania. Procedura jest zwykle wydzielonym blokiem instrukcji posiadającym nazwę, własny zakres działania oraz opcjonalne parametry wejściowe i wynik. Zamiast umieszczać wszystkie operacje w jednym długim ciągu kodu, programista dzieli logikę na mniejsze części. Procedura nadrzędna może wtedy przekazać dane do procedury podrzędnej, zaczekać na zakończenie jej pracy i wykorzystać zwrócony wynik w dalszej części działania.

Przykładowy przepływ może obejmować procedurę obsluzZamowienie, która kolejno wywołuje sprawdzDaneKlienta, obliczKoszt oraz zapiszWynik. Każda z procedur podrzędnych ma w takim układzie odrębne zadanie, a procedura główna koordynuje kolejność operacji. Sam mechanizm wywołania nie oznacza konkretnego języka programowania ani konkretnego silnika bazy danych. Sposób przekazywania parametrów, zwracania wartości, obsługi wyjątków i definiowania zakresu zmiennych zależy od użytej technologii.

Parametry, wynik i kolejność wykonania

Podczas wywołania procedury program może przekazać argumenty, czyli konkretne wartości odpowiadające parametrom zdefiniowanym w procedurze podrzędnej. Parametrem może być liczba, tekst, wartość logiczna, struktura danych albo obiekt dostępny w danym środowisku wykonawczym. Ważne jest zachowanie zgodności typu oraz kolejności argumentów, jeżeli dana technologia wymaga przekazywania pozycyjnego. Niektóre rozwiązania pozwalają również używać parametrów nazwanych, wartości domyślnych lub parametrów wyjściowych.

Po wywołaniu procedury podrzędnej wykonanie może zostać wstrzymane do czasu zakończenia jej pracy. Następnie procedura nadrzędna otrzymuje wynik albo informację o błędzie i podejmuje dalsze decyzje. Jeżeli procedura podrzędna sama wywołuje kolejną procedurę, powstaje głębsze zagnieżdżenie. Wykonanie takich wywołań można przedstawić jako stos: ostatnio uruchomiona procedura kończy się jako pierwsza, a po jej zakończeniu sterowanie wraca do miejsca, z którego została wywołana. Błędne założenie dotyczące wyniku lub pominięcie obsługi błędu może przerwać cały łańcuch operacji.

Zagnieżdżenie procedur a czytelność i diagnostyka kodu

Podział programu na procedury ułatwia ponowne wykorzystanie kodu i ogranicza powielanie tych samych instrukcji. Ułatwia także testowanie, ponieważ każdą procedurę można sprawdzać osobno z różnymi wartościami parametrów. Korzyść znika jednak wtedy, gdy wywołania są nadmiernie głębokie, nazwy procedur są niejasne albo jedna procedura modyfikuje dane używane przez wiele innych fragmentów programu. W takiej sytuacji rzeczywisty przepływ danych staje się trudny do odtworzenia, zwłaszcza gdy procedury korzystają ze stanu globalnego, plików, urządzeń lub wspólnego połączenia z bazą danych.

Podczas analizy problemu należy ustalić, która procedura rozpoczęła działanie, jakie argumenty otrzymała oraz jakie wartości przekazała dalej. Przydatne są logi zawierające nazwę operacji, identyfikator żądania, podstawowe parametry i rezultat wykonania, przy czym zakres rejestrowanych danych powinien odpowiadać możliwościom używanego programu. Należy również sprawdzić, czy procedura podrzędna może wywołać procedurę nadrzędną bezpośrednio lub pośrednio. Taka cykliczna zależność może prowadzić do nieskończonych wywołań, przepełnienia stosu albo wielokrotnego wykonania tej samej operacji. Innym błędem jest brak jednoznacznej transakcyjności: część zmian może zostać zapisana, mimo że kolejna procedura zakończyła się niepowodzeniem.

Procedury w aplikacjach używanych na laptopie i komputerze PC

W aplikacjach uruchamianych na komputerach domowych i biurowych procedury z wywołaniami występują między innymi w programach księgowych, narzędziach do obsługi dokumentów, aplikacjach diagnostycznych, sterownikach oraz skryptach automatyzujących pracę systemu. Objawem problemu może być komunikat pojawiający się dopiero po kilku wcześniejszych operacjach, niepełne wykonanie zadania, powtarzające się okno błędu albo zamknięcie programu. Sam komputer nie musi być wtedy uszkodzony. Przyczyną może być nieprawidłowy argument, uszkodzona konfiguracja, brak wymaganego pliku, błąd uprawnień lub nieobsłużony wyjątek zwrócony przez procedurę podrzędną.

Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i podzespołów, a w ramach diagnostyki aplikacji można również prześledzić, czy awaria wynika z działania programu, systemu operacyjnego lub sprzętu. Rzetelne sprawdzenie obejmuje odtworzenie błędu, ustalenie kolejności wywołań, analizę komunikatów programu oraz weryfikację wpływu sterowników, pamięci operacyjnej, dysku i konfiguracji systemu. Dopiero po rozdzieleniu problemu programistycznego od usterki środowiska można dobrać właściwe działanie, takie jak korekta konfiguracji, naprawa instalacji, aktualizacja zgodnego składnika albo naprawa elementu komputera.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę