Skip to main content

Hva er en delvis klasse?

En delvis klasse er en funksjon i noen objektorienterte programmeringsspråk som gjør at implementering av en klasse kan deles mellom flere kildekodefiler.Delvis klasser, som også kalles delvise typer, eksisterer ikke på mange programmeringsspråk, spesielt eldre som C ++ og Java.Hvert språk som implementerer delvise klasser, for eksempel C# og Ruby, håndterer implementeringen litt annerledes.

Generelt bruker delvise klasser det delvise nøkkelordet for å betegne klassestykker, og om nøkkelordet er kapitalisert avhenger av at programmeringsspråket blir brukt.Hver del av klassen initialiseres på samme måte med identiske klasse erklæringer, og uten disse delvise nøkkelordene, ville det være ulovlig å lage flere klasser i flere filer alle med samme navn.Det delvise søkeordet forteller kompilatoren eller tolk, avhengig av språket, å slå sammen alle klassene til en enkelt stor enhet.Alle de forskjellige delene av klassen må ha samme synlighet, det være seg offentlig, privat eller beskyttet.Hvis en del av klassen er utpekt som abstrakt, er den sammenslåtte klassen også utpekt til å være abstrakt, selv om ingen av de andre individuelle delene ble utpekt som sådan.

Implementering av en delvis klasse på tvers av flere filer har noen betydelige fordeler beggei programmeringsstil og organisering.Delvis klasser tillater eksplisitt separasjon av relaterte kodestykker i mer spesialiserte grupper.I tillegg tillater en delvis klasse flere programmerere å jobbe med spesifikke deler av koden uten potensielt å forstyrre de andre og tilfeldigvis overskrive revisjoner.Selv for enkeltprogrammerere kan delvise klasser være nyttige ved at de kan brukes til å lage veldig store klasser uten også å lage en enkelt uhåndterlig fil som er vanskelig å organisere og lese gjennom.

Delvis klassemplementeringsmønstre har også noen betydelige ulemper.Til tross for at de er under paraplyen til objektorientert programmering, bryter delvis klasser faktisk innkapslingsprinsippene som er sentrale for objektorientert programmering.I objektorientert programmering er det meningen at en klasse er en enkelt enhetlig enhet som har sine egne unike tilstander og atferd, er selvstendig og er i stand til å brukes som en sammenhengende enhet.Delvis klasser krenker denne ideen fordi hver delvis klasse fungerer som en enkelt separat klasse.Selv om brikkene som utgjør en delvis klasse blir slått sammen til en stor klasse ved kjøretid, er de delvise klassene ofte uavhengige enheter som kan brukes på egen hånd uten noen form for sammenslåing nødvendig.