Cześć, piszę właśnie program, w którym mam klasę abstrakcyjną, z której dziedziczy kilka klas, z takimi samymi zmiennymi, jednak każda przypisuje im różne wartości. Klasa bazowa jest abstrakcyjna i ma metody korzystające z tych zmiennych. Zastanawiam się teraz jaki jest poprawny sposób podejścia do napisania takich zmiennych:
- napisanie ich w klasach dziedziczących, bez wspominania o nich w bazowej
- napisanie ich w konstruktorze klasy bazowej, bez przypisywania im żadnej wartości (zauważyłem, że bonusem jest fakt, że jakbym zapomniał o napisaniu jakiejś w klasie potomnej, to kompilator krzyczy przy kompilacji)
- napisanie ich w konstruktorze klasy bazowej i przypisanie im wartości None (kod będzie bardziej czytelny, bo nie trzeba szukać po klasach żeby ogarnąć wszystkie zmienne, ale za to jak o którejś zapomnimy, to błąd wyskoczy dopiero jak jej użyje jakaś funkcja, która nie spodziewa się wartości None)
czy jest do tego jakaś szerzej stosowana konwencja (w sumie sam nic takiego nie znalazłem)? Jak wy robicie?