Vad är en partiell klass?

En partiell klass är en funktion i vissa objektorienterade programmeringsspråk som gör att implementeringen av en klass kan delas mellan flera källkodfiler. Partiella klasser, som också kallas partiella typer, finns inte på många programmeringsspråk, särskilt äldre som C ++ och Java. Varje språk som implementerar partiella klasser, som C# och Ruby, hanterar implementeringen lite annorlunda.

I allmänhet använder partiella klasser det "partiella" nyckelordet för att beteckna klassstycken, och om nyckelordet är kapitaliserat beror på det programmeringsspråk som används. Varje bit i 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 för kompilatorn eller tolkaren, beroende på språket, att slå samman alla klasser till en enda stor enhet. Alla de distinkta delarna av klassen måste ha SAJag 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 utsågs som sådana.

Implementeringen av en partiell klass över flera filer har några betydande fördelar både inom programmeringsstil och organisation. Partiella klasser möjliggör uttrycklig separering av relaterade kodstycken i mer specialiserade grupper. Dessutom tillåter en partiell klass flera programmerare att arbeta med specifika delar av koden utan att potentiellt störa de andra och av misstag skriva över revideringar. Även för enstaka programmerare kan partiella klasser vara användbara genom att de kan användas för att skapa mycket stora klasser utan att också skapa en enda svår fil som är svår att organisera och läsa igenom.

Partialklassimplementeringsmönster har också vissa teckenIficant nackdelar. Trots att de är under paraplyen för objektorienterad programmering, bryter partiella klasser faktiskt inkapslingsprinciperna som är centrala för objektorienterad programmering. Vid objektorienterad programmering ska en klass vara en enda enhetlig enhet som har sina egna unika tillstånd och beteenden, är fristående och kan användas som en sammanhängande enhet. Partiella klasser bryter mot denna idé eftersom varje partiell klass fungerar som en enda separat klass. Även om bitarna som utgör en partiell klass slås samman till en stor klass vid körning, är den partiella klassens bitar ofta oberoende enheter som kan användas på egen hand utan att någon form av sammanslagning nödvändig.

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?