Procedurer mot funktioner i programmering
Procedurer och funktioner vid programmering, gör det möjligt för programmerare att gruppera instruktioner i ett enda block och det kan anropas från olika platser i programmet. Koden blir lättare att förstå och mer kompakt. Genom att utföra ändringarna på en enda plats påverkas hela koden. Med hjälp av funktioner och procedurer; en linjär och lång kod kan delas in i oberoende sektioner. De ger mer flexibilitet för kodning av olika programmeringsspråk och databaser.
Vad är funktioner?
Funktioner kan acceptera parametrar som även kallas argument. De utför uppgifterna enligt dessa argument eller parametrar och returnerar värden för givna typer. Vi kan förklara det bättre med hjälp av ett exempel: En funktion accepterar en sträng som parameter och returnerar den första posten eller posten från en databas. Det tar hänsyn till innehållet för ett specifikt fält som börjar med sådana tecken.
Funktionens syntax är som följer:
SKAPA ELLER Byt ut FUNKTION my_func
(p_name IN VARCHAR2: = 'Jack') returnerar varchar2 som början … slut
Vad är förfaranden?
Procedurer kan acceptera parametrarna eller argumenten och de utför uppgifter enligt dessa parametrar. Om en procedur accepterar en sträng som en parameter och den ger en lista med poster i databasen för vilket innehåll i ett visst fält börjar med sådana tecken.
Syntaxen för procedurer är som följer:
SKAPA ELLER Byt ut förfarande my_proc
(p_name IN VARCHAR2: = 'Jack') som börjar … slut
Huvudsakligen finns det två sätt på vilka en parameter skickas i funktioner och procedurer; efter värde eller genom referens. Om parametern skickas med ett värde; ändringen påverkas inom funktionen eller proceduren utan att det påverkar det verkliga värdet på den.
Å andra sidan, om parametrarna skickas med referenser; det faktiska värdet på denna parameter kommer att ändras var som helst det kallas inom koden enligt instruktionerna.
• När parametern överförs till proceduren; det returnerar inget värde medan en funktion alltid returnerar ett värde. • En av de stora skillnaderna i båda är att procedurer inte används i databaser medan funktioner spelar en viktig roll för att returnera värden från en databas. • Procedurer kan returnera flera värden och funktionerna kan returnera begränsade värden. • DML-operationer kan användas i lagrade procedurer; de är dock inte möjliga i funktioner. • Funktioner kan bara returnera ett värde och det är obligatoriskt medan procedurer kan returnera n eller noll värden. • I funktioner kan felhantering inte göras medan den kan utföras i lagrade procedurer. • In- och utmatningsparametrar kan skickas i procedurer medan det gäller funktioner; endast ingångsparametrar kan skickas. • Funktioner kan anropas från procedurer medan det inte är möjligt att anropa en procedur från en funktion. • Transaktionshantering kan övervägas i procedurer och det kan inte övervägas vid funktioner. |