Instrukcja skoku: Różnice pomiędzy wersjami

[wersja przejrzana][wersja przejrzana]
Usunięta treść Dodana treść
Paweł Ziemian BOT (dyskusja | edycje)
m Zamieniam przestarzały tag 'source' na 'syntaxhighlight'
Modrym (dyskusja | edycje)
m →‎Paradygmaty programowania: Poprawiono link do C (język programowania)
Linia 30:
== Paradygmaty programowania ==
{{Zobacz też|paradygmat programowania}}
Instrukcja skoku jest instrukcją [[programowanie imperatywne|paradygmatu imperatywnego]] stosowanego przede wszystkim do nauki [[Programowanie komputerów|programowania]] (np. języki [[BASIC]], [[LOGO]]) oraz w programowaniu niskopoziomowym (np. języki [[asembler]]a i [[C (język programowania)|C]]), które jest wysoce zgodne z rzeczywistymi poleceniami procesora. Choć [[programowanie proceduralne|paradygmat proceduralny]] zachęca do odchodzenia od instrukcji skoku na rzecz [[podprogram|procedur (funkcji)]], to jednak całkowite wyeliminowanie skoków może być nieopłacalne. Pierwszym paradygmatem, którego celem było ograniczenie stosowania instrukcji skoku (poprzez zastąpienie sterowaniem przepływu kodu [[instrukcja warunkowa|instrukcji porównania]] i skoku poprzez [[instrukcja warunkowa|instrukcje warunkowe]] i [[instrukcja wyboru]]), był [[programowanie strukturalne|paradygmat strukturalny]].
 
Istnieją paradygmaty, jak np. [[programowanie obiektowe|obiektowy]], [[programowanie funkcyjne|funkcyjny]], czy [[programowanie sterowane zdarzeniami|zdarzeniowy]], w których instrukcja ta nie występuje, choć mimo wszystko wiele języków realizujących kilka paradygmatów (przede wszystkim opartych na [[C (język programowania)|C]]) ją zawiera. Nie zaleca się mieszania paradygmatów ze względu na możliwość zaciemnienia struktury kodu – często przytaczanym przykładem jest właśnie użycie imperatywnej instrukcji skoku w kodzie obiektowym (zwłaszcza, gdy skok odbywa się między dwoma nie związanymi ze sobą blokami kodu, np. z ciała jednej [[Klasa (programowanie obiektowe)|klasy]] do drugiej). Umiejętnie zastosowana instrukcja skoku może jednak znacząco ułatwić opuszczenie imperatywnej bądź proceduralnej części obiektowego kodu (np. wielokrotnie zagnieżdżone instrukcje warunkowe lub wyboru; należy zauważyć, że często stosowane instrukcje [[instrukcja kontynuacji|kontynuacji]], [[instrukcja opuszczenia|opuszczenia]], czy [[instrukcja powrotu|powrotu]] to w istocie inne formy instrukcji skoku, za jej dość rozwiniętą wersję można uważać [[instrukcja wywołania|instrukcję wywołania]]).