1. ActionScript / Говнокод #8368

    −119

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    switch(budget.statusKey)
    {
    	case BudgetMetadata.STATUS_COMPLETE:
    		enableAccept = true;
    		enablePublish = false;
    		enableExport = true;
    		break;
    	case BudgetMetadata.STATUS_ACCEPTED:
    		enableAccept = false;
    		enablePublish = true;
    		enableExport = true;
    		break;
    	case BudgetMetadata.STATUS_PROGRESS || BudgetMetadata.STATUS_REVIEW || 
    		 BudgetMetadata.STATUS_REJECTED || BudgetMetadata.STATUS_PUBLISHED:
    		enableAccept = false;
    		enablePublish = false;
    		enableExport = true;
    		break;
    	default:
    		enableAccept = false;
    		enablePublish = false;
    		enableExport = false;
    		break;
    }

    Привет ис Сан Диего :) Не знаю, как у них работало, я как ни соберу - VerifyError, но один рабочий экземпляр сохранил.

    Запостил: wvxvw, 31 Октября 2011

    Комментарии (5) RSS

    • не вижу в этом ничего ужасного.
      Косяков в логике нет, ну а архитектура зависит от многих внешних факторов, включая предпочтения автора
      Ответить
      • Тут совсем не в архитектуре дело. Фишка в том, что в третьем кейсе значение получается типа Boolean и у плеера крышу сносит, когда он пытается Boolean и String сравнить (BudgetMetadata.STATUS_* - строки). Но интереснее был бы вариант, при котором код был бы валидным, т.е. BudgetMetadata.STATUS_* были бы типа Boolean :)
        Ответить
        • а, сорь. не заметил.
          Тогда это эпично)
          Ответить
        • Тогда budget.statusKey тоже был бы Boolean, а для него три кейса да ещё и default было бы многовато.
          Ответить
    • >Привет ис Сан Диего
      превед ис шстова бэ
      Ответить

    Добавить комментарий