Ugh, jak mnie to irytuje. Niestety troszkę czasu spędzonego w C# i C++ dało się we znaki. Tam this
jest implicite.
Ale nie, Javascript a tym bardziej Python upierają się, że trzeba this
(czy tam self
) wstawiać explicite. Ciągle o tym zapominam.
Jeszcze w JS jest pół biedy, jak zapomnę this
to obrywam po prostu wyjątkami. Ale w Pythonie wymagane jest, by nawet każda metoda explicite przyjmowała self
jako pierwszy argument!! Raz mi się zdarzyło zapomnieć o wprowadzeniu self
do listy argumentów. I jak głupi zamiast metoda(self, *args, **kwargs)
dałem metoda(*args, **kwargs)
A potem zupełnie gdzie indziej mi wyjątki leciały, bo args[0]
było czymś zupełnie innym, niż miało być.
!!!
Dlaczego w zasadzie tak wymagają? Co jest złego w domyślnym this
?! Naprawdę nie widzę? Ale może bardziej doświadczeni widzą mankamenty domyślnego this
?