русский
Germany.ruForen → Архив Досок→ Programmierung

Подарки от программис'тов

22.08.22 15:13
Re: Подарки от программис'тов
 
alex445 коренной житель
in Antwort alex445 22.08.22 14:51, Zuletzt geändert 22.08.22 15:19 (alex445)

Во, ещё нашёл - он обрабатывает это перечисление двумя if:


if(Invisible)

else if(Collapsed)


и в зависимости от этого добавляет стили. Но ниже ещё проверки идут


if(Enabled)

else if(Disabled)


и опять стили применяет. При этом эти две ветки проверок идут независимо поочереди. Но ведь перечисление-то взаимоисключаемое!


Ну это по-моему совсем уже детская ошибка. Тут явно надо разделить на два перечисления (или булевых свойства) или добавить битовые флаги.


Похоже, он использует перечисление просто как хранилище кучи малосвязанных друг с другом значений.


Не говоря уже о том, что такая обработка в разы раздувает код. Было бы два булевых свойства, то все проверки были бы однострочные (через тот же ?: оператор или просто через ==), а так он городит if-else на полэкрана кода.

 

Sprung zu