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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
private function fürDieLuLz(event:String, params:StringHash):void
{
	if (ExternalInterface.available)
		ExternalInterface.call(
			"function(){window.fireEvent('" + event + 
			"',JSON.stringify(" + params + "));}");
}

Я долго пытался объяснить человеку пишущему JS часть проекта, что не нужно перекодировать объекты каждый раз из JSON и обратно при общении с Флешем, если они все равно проходят через eval(). Но у человека ЧСВ победил все. В итоге пришел "главный инженер" и "решил", что "если мы раньше так делали, то мы будем так делать и дальше, и не волнует". В итоге родился этот шедевр. Я сегодня с утра для поднятия настроения показал этот код JS кодеру. Долго объяснял, что он делает. После чего он сказал, что больше не будет со мной разговаривать :)
Я счастлив

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

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

    • лучший способ сделать немецких коллег своими вечными врагами - это заставить их думать. ой как они не любят это делать... на первой работе в Германии со мной пара чудаков больше полугода после одного инцедента не разговаривала. а всего то я им пытался объяснить что std::map<>ы можно вложеными делать...

      дипломами своими инженерными размахивать, делать умный вид и кофейные паузы им намного больше по душе. в восточной германии много исключений, но молодое поколение и большинство программистов из западной Германии, им бы только пяткой в грудь постучать.

      ну да это же родина меркантилизма и индивидуализма... такие они немцы.
      Ответить
      • Зато немцы всю технику в Российской Империи делали.
        Ответить
        • ложь, пиздёж и провокация, при алексашке окончательно разосрались и превратились в упоротых англофилов, в итоге трубы до сих пор в сраных дюймах меряют
          Ответить
            • в 2005 и 2006 году в качестве взяток было выплачено около 3 миллионов долларов
              😀

              зингер, кстати, покруче сименса будет, но всё равно, это мелкие частности
              а вот дружили бы с немцами - провели бы метрическую водопроводную реформу
              Ответить
              • что ж Вы так... за чистоту трубических измерений-то...
                Ответить
                • встречный вопрос (понимаю, что зима и на дачу еще не скоро) - вы когда-нибудь видели штангенциркуль со шкалой в дюймах?
                  Ответить
      • История получила продолжение. Этот человек взялся изобретать "фасад" и еще тучу свистоперделок впридачу к уже придуманному. На самом деле диспатчить события там не нужно, все, что нужно сделать, это передать трекеру от Гугл-Аналитикс две строчки. 1: что ввели в поисковую строку, 2: что поиск нашел. Или 1: на какую кнопку нажали, 2: куда перенаправили пользователя.
        И вот во что это выросло:
        /**
        		 * @private
        		 * The whole thing:
        		 *    A. "share" - expects one parameter (called provider) which can be "facebook" or "twitter"
        		 *    B. "track" - expects 2 to 4 parameters:
        		 *         1. "category" - one of the following: { "movies", "keywords", "clicks" }
        		 *         2. "action" - this one depends on the previous one... so:
        		 *               1. (movies) the value should be "view"
        		 *               2. (keywords) value should be "input"
        		 *               3. () if the user clicked on a link to our application then the value should be "company-name", if the user clicked a share link then the value should be "share"
        		 *         3. "label" - this one depends also on the previous parameters:
        		 *               1. (movies, view) - id of the movie that the user saw
        		 *               2. (keywords, input) - the string of words the user entered into the text box
        		 *               3. (clicks, chatrounds) - which one of the links the user clicked (id)
        		 *                  (clicks, share) - "facebook" or "twitter"
         		 *        4. "value" - this parameter is not currently needed so you can ignore it.
        		 */
        		private function fürDieLuLz(event:String, params:StringHash):void
        		{
        			if (ExternalInterface.available)
        				ExternalInterface.call(
        					"function(){window.fireEvent('" + event + 
        					"',JSON.stringify(" + params + "));}");
        		}

        Пункт 4 доставил отдельное удовольствие.
        Ответить

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

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

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


    8