Najlepsze pytania
Chronologia
Czat
Perspektywa
Podprogram wbudowany
Z Wikipedii, wolnej encyklopedii
Remove ads
Podprogram wbudowany – podprogram standardowy, dostępny w konkretnym języku programowania do realizacji określonej operacji.
Cechy podprogramów wbudowanych
Podprogram wbudowany jest podprogramem standardowym, który charakteryzuje się w porównaniu podprogramami bibliotecznymi czy definiowanymi przez programistę, następującymi cechami wyróżniającymi:
- podprogram tak jest zdefiniowany przez standard języka programowania i dostępny w każdej jego implementacji (zachowującej zgodność ze standardem), lub ewentualnie może zostać zdefiniowany przez daną implementację,
- podprogram taki nie wymaga deklaracji (ani definicji) przed jego użyciem w kodzie źródłowym[1][2],
Ponadto można zauważyć, że:
- podprogramy wbudowane są zwykle zoptymalizowane przez implementację do danego systemu komputerowego, dla którego tworzony jest kod wynikowy, dzięki czemu użycie takiego programu jest bardziej efektywne[3],
- definiują często zestaw operacji podstawowych dla określonego zagadnienia, np. funkcje matematyczne, operacje we-wy, zarządzenie pamięcią operacyjną, itp.[3].
Remove ads
Stosowanie podprogramów wbudowanych
Podsumowanie
Perspektywa
Użycie podprogramu wbudowanego w kodzie źródłowym, zwykle nie różni się od użycia pozostałych podprogramów (definiowanych, bibliotecznych), jednak jak zaznaczono wyżej, nie wymagają one najczęściej deklarowania przed ich użyciem. Wynika to z faktu, że z pewnym identyfikatorem reprezentującym dany podprogram, kojarzenie atrybutów, listy parametrów i typu ewentualnego rezultatu (w przypadku podprogramów o charakterze funkcji), zapewnione jest przez samą implementację.
W niektórych językach mogą występować pewne wyjątki od zasady braku deklaracji podprogramu wbudowanego. Np. w języku PL/I podprogramy wbudowane mogą być w ogólności stosowane bez ich deklaracji. Jednak jeżeli podprogram, charakteryzuje się tym, że nie posiada parametrów, a tym samym lista argumentów wywołania jest pusta, to albo musi taki podprogram być wywołany – bez deklaracji – z pustą listą, np. TIME(), albo wymaga deklaracji podprogramu z atrybutem BUTLIN, i wtedy wywołanie może zostać uproszczone do postaci identyfikatora, bez pary nawiasów, np. TIME[2].
Należy zauważyć, że zadeklarowanie innego obiektu, w tym innego podprogramu, o identyfikatorze identycznym jak nazwa podprogramu wbudowanego, jest w wielu językach dopuszczalne, ale skutkuje, bądź:
- niedostępnością podprogramu wbudowanego, w zakresie widoczności obiektu definiowanego przez programistę, wystąpienie w kodzie danego identyfikatora, będzie odnoszone do zadeklarowanego przez programistę obiektu, bądź
- wymusi konieczność stosowania nazwy kwalifikowanej lub innej specyficznej konstrukcji, w celu jawnego wskazania, że chodzi o podprogram wbudowany a nie obiekt zdefiniowany przez programistę, język musi dawać w swej składni taką możliwość, ewentualnie
- podprogramy wbudowane mogą być przeciążane i na podstawie listy argumentów taki podprogram zostanie odróżniony przez translator od podprogramów definiowanych.
W pozostałych językach identyfikatory podprogramów wbudowanych są słowami zastrzeżonymi, np. Basic.
Remove ads
Podprogramy wbudowane w językach programowania
Podsumowanie
Perspektywa
Języki programowania, w których występują podprogramy wbudowane to, np.:
- Algol[1]
- AWK[4]
- Basic
- Clipper[5]
- Fortran[6][1]
- Icon[7]
- JEAN[8]
- Modula 2[9]
- PL/I[2]
- PL/M[10][3]
- Snobol[11]
- Turbo Prolog[12]
- Visual Basic
- i inne.
Współcześnie definiowane języki lub implementacje starych języków, zwykle odchodzą od rozwiązania polegającego na definiowaniu podprogramów wbudowanych, na rzecz bibliotek standardowych, jako bardziej elastyczna forma tworzenia zestawu podstawowych operacji. Przykładem może być język Pascal[13], który w standardzie definiował podprogramy dotyczące we-wy, lecz późniejsze implementacje, np. Turbo Pascal[14], przeniosły takie podprogramy ze standardu języka do modułów. Tworzenie podprogramów bibliotecznych, zamiast wbudowanych, umożliwia alternatywnych zestawów podprogramów dla danego zagadnienia. W Tubro Pascalu, udostępniono oprócz modułu System zawierającego m.in. standardowe we-wy, także inne moduły, np. Crt, czy biblioteki Turbo Vision, dające bardziej zaawansowane sterowanie ekranem tekstowym[14].
Pewną specyficzną klasę podprogramów wbudowanych stanową również podprogramy wbudowane w aplikacje takie jak systemy obliczeniowe, projektowe itp., np. aplikacje pakietu MS Office, w których pewne wbudowane w te aplikacje podprogramy mogą być używane w języku VBA[15]. Inne przykłady to systemy takie jak MathCad, AutoCAD, dBase[16] itp.
Zobacz też
Przypisy
Bibliografia
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads