En subrutin i datorprogrammering är en mindre del av en större kodmodul som har sina egna interna operationer utformade för att tjäna det övergripande programmet. En subrutin kallas ibland en funktion eller en metod eftersom den returnerar ett specifikt kodresultat som används av programmet. Funktionell programmering ger mångsidig kod som är upplagd i bitar. Programmerare väljer sedan händelser som initierar de funktioner som ”driver” användarens upplevelse.
Olika datorspråk använder subrutinfunktioner på olika sätt. Vissa datorprogrammeringsspråk använder en ”stack”-modell, där funktioner eller subrutiner är ordnade i ett linjärt format och används i enlighet med deras omedelbara relevans. Andra språk använder fackindelade format för att isolera funktioner och skilja dem från varandra.
Att använda en subrutin korrekt är en del av vad en programmerare lär sig när han eller hon tittar på sätt att hålla datorkod tillgänglig. Kritiska strategier som effektiv användning av en subrutin går tillsammans med andra mer allmänna strategier som hur man använder blanksteg i kod, eller hur man lämnar anvisningar för programändringar med kommentarer. Att ordna datorkoden på rätt sätt gör det mycket lättare för andra programmerare och ingenjörer att ”läsa” den och förstå vad som händer i programmet.
All kod som består av subrutiner och andra kodmoduler görs ofta till ett ”körbart” program. Att anropa ett program som körbar relaterar till idén att köra eller ”köra” ett program. I många fall består det körbara programmet helt enkelt av en samling subrutiner. När någon ”kör” programmet, börjar datorn med en första rad kod och pekas sedan vidare till andra på varandra följande rader med kod av anvisningarna som skrivits in i programmet.
En annan huvudsaklig fördel med subrutiner är uppgiften att felsöka ett program. Om det finns ett problem med programmet kan ingenjörer gå in i koden och titta igenom kodraderna sekventiellt för att se var problemet började. Med subrutiner kan programmerarna titta på varje kod separat och ”rensa” de delar som är felfria för att fokusera på var fel uppstod.
Subrutinanvändning är en integrerad del av att lära sig datorprogrammering. Subrutiner kommer ofta att vara en del av akademiska datavetenskapskurser. Programmerare lär sig dessa färdigheter i skolan, eller på fältet, för att skapa program med bättre övergripande funktion och transparens.