Wednesday 22 December 2021

otępienie, odc. 2

Dziś softłer endżinirink. C#. Ktoś zrobił coś takiego:

public class A1 : B {}
.
.
.
public class An : B {}

(tak, puste). B to klasa dostępna w jakiejś części C#, nie pamiętam teraz, która konkretnie i w ogóle o co poszło. (Poza Schadenfreude, że to niedziałający fragment programu, tj. jakoś działający, ale bezobjawowo - poza iście pomidorowym wyświetlaniem komunikatu "wrong parameters" i absolutnym brakiem instrukcji, jak zrobić "non-wrong"). A później nadziedziczył stado klas, po jednej z A1, . . ., An. Myślałem nad celowością takiego zabiegu kilka minut i mi się odechciało. Na pewno oszczędza objętość kodu, jeśli każda z klas A ma krótszą nazwę niż B i n jest odpowiednio duże.

Po paru miesiącach, kiedy ogarnąłem dekoratory/atrybuty. Owo B było pustą klasą dziedziczącą z Attribute. Dalej nie rozumiem, czemu nie można było dziedziczyć wprost, ale ktoś życzliwy podpowiedział, że mogą to być ślady przejścia (może częściowo automatyzowanego) z C++ na C#. Kto wie?

No comments:

Post a Comment