Vad är polymorfism?
I programvaruprogrammering är objektorienterad programmering (OOP) ett ramverk som försöker skapa objekt ur verkliga saker. Teorin och praktiken av polymorfism uppmuntras starkt inom OOP-principerna. I allmänhet bör ett objekt skapas för att ha basfunktioner och beteenden med förståelsen att dessa kommer att förändras när det blir en specifik typ.
Polymorfism är förmågan att ha en variabel, funktion eller ett objekt med mer än en mening inom programmet. Det finns flera arkitekturmönster som visar polymorfism. Dessa mönster beskriver hur ett objekt kommer att återanvändas inom en applikation för flera syften.
Många programmeringsspråk stöder användningen av polymorfism. Denna process möjliggör återanvändning av affärsregler och mjukvarukod i en applikation. Inte alla programmeringsspråk stöder fullt polymorfiskt beteende men de flesta stöder det grundläggande konceptet. Alla riktiga OOP-språk inklusive Java®, .net och C ++ ® stöder mer avancerade metoder och tekniker.
Ett bankkonto är ett bra exempel på basobjekt som kan stödja polymorfism. Alla bankkonton har kontonummer, namn och saldo. Det som gör ett konto unikt är kontotypen. Några exempel på typer är sparkonton, kontrollkonton eller pengemarknadskonton. Inom polymorfism skulle ett bankkonto vara basobjektet med de mer specifika kontona genom att använda funktionerna i basbankkontot. Varje konto kan då ha ytterligare beteenden för att stödja räntesatser eller återkallelser vid återanvändning av informationen om ett bankkonto.
Att använda teorierna om polymorfism sparar utvecklare tid genom att minska bortkastad kod. Det gör koden lättare att skriva och lättare för andra att förstå. Dessutom gör det mjukvaran utsträckbar, eftersom framtida typer kan läggas till senare med basfaderobjektet i den befintliga koden. I allmänhet är applikationer utvecklade på detta sätt mer flexibla och lättare att utöka genom att kräva mindre kod för framtida modifieringar
Teorierna om polymorfism gäller också för funktioner. En funktion är en mjukvarukod som utför en specifik uppgift. Funktioner kan också skrivas på ett polymorft sätt. Detta tillvägagångssätt gör koden mer flexibel eftersom funktionerna kan återanvändas för andra affärsregler inom programvaran.
Ett bra exempel på polymorfism med en funktion skulle vara en sorteringsfunktion. Denna typ av funktion sorterar en lista med siffror. En polymorf funktion kan inte bara sortera siffror utan kan också sortera alla typer av objekt. Detta gör funktionen effektivare eftersom den fungerar på flera typer av data.