1. Лучший говнокод

    В номинации:
    За время:
  2. C++ / Говнокод #18402

    +145

    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
    25. 25
    26. 26
    union Viewport
    {
    private:
      D3D10_VIEWPORT  viewport;
    public:  
      struct {
        INT    x;
        INT    y;
        UINT  width;
        UINT  height;
        FLOAT  minDepth;
        FLOAT  maxDepth;
      };
    
      Viewport(){}
      Viewport(const Viewport& viewport)
        :viewport(viewport.viewport) {}
      Viewport(D3D10_VIEWPORT viewport)
        :viewport(viewport) {}
      Viewport(INT x, INT y, UINT width, UINT height, FLOAT minDepth, FLOAT maxDepth)
        :x(x), y(y), width(width), height(height), minDepth(minDepth), maxDepth(maxDepth){}
      
      FLOAT GetAspectRatio();
      Vector3 Unproject(Vector3 source, Matrix projection, Matrix view, Matrix world);
      
    };

    LispGovno, 25 Июня 2015

    Комментарии (23)
  3. JavaScript / Говнокод #18094

    +146

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    var returnValue = false;
    
    bool result = doSomething();
    if (!result)
    {
    return returnValue;
    }
    
    returnValue = true;
    return returnValue;

    kuznetps, 30 Апреля 2015

    Комментарии (23)
  4. JavaScript / Говнокод #17996

    +147

    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
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    $(function() {
    	// Калькулятор
    	function calculate(el,btn){
    
    		// Запоминаем данные
    		//-----------------------------------------------------------------------------------------------------------------									
    		var priceAtribut = 'data-val';			// Атрибут с ценами у блоков
    		var cartTotal = $('.total_price p');	// Елемент
    		
    		var elem = {
    			parentModule 	   : $(el).parents('cart'),						// Родительский блок корзины
    			btn         	   : $(btn),									// Текущая кнопка которая была нажата
    			inpt        	   : $(el).find('.input-counts'),				// Инпут с колличеством
    			priceBase    	   : $(el).find('.string-elem-price-base'),		// Базовая цена товара
    			priceTotal         : $(el).find('.string-elem-price-total')		// Общая сумма товара
    		};
    
    		//функция: проверка колличества товаров, если к-во = 0, прекращаем работу скрипта
    		//-----------------------------------------------------------------------------------------------------------------
    		(function checkCounts () {
    			var thisCounts = (elem.inpt.val() - 0) + (elem.btn.attr(priceAtribut) - 0);
    			if(thisCounts != 0) {goCheck(thisCounts)}
    		}());
    
    		//функция: Калькуляции и пересчета!
    		//-----------------------------------------------------------------------------------------------------------------
    		function goCheck (counts) {
    
    			// Запись колличества в инпут текущего товара
    			elem.inpt.val(counts);				
    			// Запись общей суммы текущего товара, исходя из количества 												
    			elem.priceTotal.html( counts * (elem.priceBase.attr(priceAtribut) - 0) );	
    			// Запись общей суммы текущего товара, исходя из количества в атрибут datavalue	
    			elem.priceTotal.attr( priceAtribut, counts * (elem.priceBase.attr(priceAtribut) - 0) ); 
    
    			checkTotalSumm();		
    		}
    
    		// Функция которая делает общий пересчет общей суммы каждого товара, и записывает результат.
    		//-----------------------------------------------------------------------------------------------------------------
    		function checkTotalSumm () {
    			var totalSumm = 0;	
    			$('.'+elem.priceTotal.attr('class')).each(function(){
    				totalSumm += $(this).attr(priceAtribut) - 0;
    				
    			});
    			cartTotal.html(totalSumm);
    		}
    	}
    
    	// Запуск функции калькулятора
    	$('.number button').click(function() {
    		calculate($(this).parents('.item'),this);
    	});
    });

    Я только начинаю углубляться в JS, хотелось бы узнать мнение профи, насколько это говнокод!

    0whitewolf0, 15 Апреля 2015

    Комментарии (23)
  5. JavaScript / Говнокод #17898

    +157

    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
    var times, source_date,
          date = "20.11.2014";
    
    if (date) {
                times = date.split('.');
    
                source_date = new Date();
                source_date.setFullYear(parseInt(times[2]));
                source_date.setMonth(parseInt(times[1]) - 1);
    
                source_date.setDate(parseInt(times[0]));
    }
    
    return source_date ;

    darkartur, 31 Марта 2015

    Комментарии (23)
  6. PHP / Говнокод #17855

    +160

    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
    abstract class class_getset {
    	protected $vars;
    	
    	public function get($name = "%all%") {
    		if($name == "%all%") {
    			return $this->vars;
    		}
    		else {
    			return $this->vars[$name];
    		}
    	}
    	
    	/* тут второй метод, угадай его название */
    }

    Старый код из 2012, интересное решение ...

    volter9, 25 Марта 2015

    Комментарии (23)
  7. PHP / Говнокод #17742

    +147

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    <?
    
    // Код от блондинки
    $moya_peremennaya = 0;
    for ($moya_drugaya_peremennaya = 0; $moya_drugaya_peremennaya < 100; $moya_drugaya_peremennaya += $moya_drugaya_peremennaya) {
    
    $moya_peremennaya = $moya_drugaya_peremennaya; 
    // У меня не работало $moya_peremennaya = 100  
    
    }
    ?>

    Код одной блондинки

    mikamika83, 06 Марта 2015

    Комментарии (23)
  8. PHP / Говнокод #17703

    +159

    1. 1
    if (strlen($PARAM)<=0) $PARAM = " class=\"inputselect\" ";

    Если длинна строки меньше нуля? Битрикс, ты серьёзно?

    Happinness_Cookie, 27 Февраля 2015

    Комментарии (23)
  9. PHP / Говнокод #17461

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if($locale == 'en') {
        $client->ios_in_app_purchase_id = 0; //1
    } else {
        $client->ios_in_app_purchase_id = 0;
    }

    безысходность

    DemoniacDeath, 17 Января 2015

    Комментарии (23)
  10. C++ / Говнокод #17427

    +55

    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
    else if(block->o_type == O_else)
        {
          block->o_type = O_else;
        }
      else if(block->o_type == O_endif)
        {
          block->o_type = O_endif;
        }
      else if(block->o_type == O_break)
        {
          block->o_type = O_break;
        }
      else if(block->o_type == O_continue)
        {
          block->o_type = O_continue;
        }
      else if(block->o_type == O_endwhile)
        {
          block->o_type = O_endwhile;
        }

    Lavir_the_Whiolet, 11 Января 2015

    Комментарии (23)
  11. Си / Говнокод #17270

    +139

    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
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    char* xml_compose_simple_response(char* response, int code, char* description, char* additional_data)
    {
    	size_t resp_length = 0;
    	char* buff = NULL;
    
    	resp_length += strlen(RESPONSE_HEADER_PREFIX);
    	resp_length += strlen(session_type);
    	resp_length += strlen(transaction_id);
    	resp_length += strlen(response) + strlen(EMPTY_TAG);
    	if(NULL != additional_data)
    	{
    		resp_length += strlen(additional_data);
    	}
    	resp_length += strlen(description) + strlen(RESULT_INT) + sizeof(int) * 8;
    	resp_length += strlen(RESPONSE_HEADER_SUFFIX);
    
    	resp_length += 1;
    
    	if(NULL != (buff = malloc(resp_length)))
    	{
    		buff[0] = '\0';
    
    		sprintf(buff, RESPONSE_HEADER_PREFIX""EMPTY_TAG, session_type, transaction_id, response);
    
    		if (additional_data != NULL)
    		{
    			char tmp_desc[_2K];
    			sprintf(tmp_desc, description, additional_data);
    
    			sprintf(&buff[strlen(buff)], RESULT_INT, code, tmp_desc);
    		}
    		else
    		{
    			sprintf(&buff[strlen(buff)], RESULT_INT, code, description);
    		}
    		strcat(buff, RESPONSE_HEADER_SUFFIX);
    	}
    	else
    	{
    		mng_report_memory_failure_location_and_exit();
    	}
    	return buff;
    }

    XML вручную собирай @ на кавычкай падай. Никакого АПИ, только хардкор.

    codemonkey, 07 Декабря 2014

    Комментарии (23)