ДействиеСценарий / Говнокод #5819 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
private function handleApplcationCallback(call:String, params:String = "") : void 
{
	var paramsArr:Array; 
	if(params)
		paramsArr = params.length > 0 ? params.split(",") : [];
	else 
		paramsArr = [];	
	try 
	{
		handleApplicationCalls(call,paramsArr);
	} 
	catch (error : Error)
	{
	}
}

Запостил: wvxvw wvxvw, (Updated )

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

    • Вероятно, тут:

      private function handleApplcationCallback(call:String, params:String = "") : void 
      {
      	if (params != ''){
      		handleApplicationCalls(call, params.split(','));
      	}
      }


      Или, даже, ещё выше. Без всего кода толком не понятно.
      Ответить
      • Ребята, давайте все вместе поможем участникам найти лопату!
        Ответить
    • private function handleApplcationCallback(call:String, params:String = "") : void 
      {
      	var paramsArr:Array = params ? params.split(",") : []; 	
      	try 
      	{
      		handleApplicationCalls(call, paramsArr);
      	} 
      	catch (error : Error)
      	{
      	}
      }

      Потому, что если специально null передать, то будет ошибка (он не заменится на ""). Хотя он никогда туда не передается, но это уже другой вопрос.
      То что там try-catch без вариантов отследить ошибку, я к этому уже привык в этом проекте, просто механически удаляю. Но иногда полет мысли автора заставляет задуматься...
      Ответить
      • Точно, null != undefined. С другой стороны, кто будет писать вызов как "handleApplcationCallback(someCall, null);"?

        В любом случае, создавать лишнюю переменную - не айс, оба условия можно в if запихнуть, если так уж null'а опасаешься.
        Ответить
      • Ну, вы просто сократили запись. Я даже могу представить, почему появился исходный код -- именно потому, что null не передавали. А потом где-то передали, упало, заткнули, обернув в ещё одно условие.

        Это ещё не говнокод (ну разве что слегка хлюпает).
        Ответить
        • Как по мне, говнокод в том, что вещь, которую можно записать короче и понятнее записывается длинно и менее понятно.
          Кроме того расследование показало в итоге, что все-таки туда да передают нулл, при чем явно. Код писан методом последовательных приближений, в смысле человек не понимал, что делает и просто подставлял значения, так и родился этот и еще 90% кода в проекте который надо сейчас поддерживать... Т.е. по-чесному, этой функции не должно было быть, и той, которую она вызывает тоже... потому что человек решил сэкономить на 10 методах и вызвать их через рефлекшн, а когда не получилось - завернул все в try-catch... ну, я думаю, знакомая ситуация, все когда-то с такими деятелями сталкивались.
          Ответить

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

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8