Vad är en delklass?

En delklass är en funktion i vissa objektorienterade programmeringsspråk som gör det möjligt att dela implementeringen av en klass mellan flera källkodfiler. Delklasser, som också kallas partityper, finns inte i många programmeringsspråk, särskilt äldre som C ++ och Java. Varje språk som implementerar delklasser, som C # och Ruby, hanterar implementeringen lite annorlunda.

I allmänhet använder delklasser det "partiella" nyckelordet för att beteckna klassbitar, och huruvida nyckelordet är aktiverat beror på det programmeringsspråk som används. Varje del av klassen initialiseras på samma sätt med identiska klassdeklarationer, och utan dessa "partiella" nyckelord skulle det vara olagligt att skapa flera klasser i flera filer alla med samma namn. Det "partiella" nyckelordet berättar kompilatorn eller tolken, beroende på språk, att slå samman alla klasser till en enda stor enhet. Alla distinkta delar av klassen måste ha samma synlighet, vare sig det är offentligt, privat eller skyddat. Om en del av klassen betecknas som abstrakt, betecknas den sammanslagna klassen också för att vara abstrakt, även om ingen av de andra enskilda delarna betecknades som sådan.

Implementeringen av en delklass över flera filer har några betydande fördelar både i programmeringsstil och organisation. Delklasser möjliggör uttrycklig uppdelning av relaterade kodstycken i mer specialiserade grupper. Dessutom tillåter en delklasse flera programmerare att arbeta med specifika koddelar utan att eventuellt störa de andra och oavsiktligt skriva över revisioner. Även för enstaka programmerare kan partiklasser vara användbara i och med att de kan användas för att skapa mycket stora klasser utan att också skapa en enda besvärlig fil som är svår att organisera och läsa igenom.

Delimplementeringsmönster har också några betydande nackdelar. Trots att de ligger under paraplyet av objektorienterad programmering bryter partiklasser faktiskt med inkapslingsprinciperna som är centrala för objektorienterad programmering. Vid objektorienterad programmering ska en klass vara en enda enhet som har sina unika tillstånd och beteenden, är fristående och kan användas som en sammanhängande enhet. Delklasser bryter mot denna idé eftersom varje delklass fungerar som en separat klass. Även om de bitar som utgör en delklasse slås samman till en stor klass under körning, är delklassens delar ofta oberoende enheter som kan användas på egen hand utan någon form av sammanslagning nödvändigt.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?