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

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

    +86.5

    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
    56. 56
    /**
     * константы платежей
     *
     * @author eav
     */
    public interface PaymentsConstants {
    	// какие-то цифры %)
    	static final String _25 = "25";
    	static final String _21 = "21";
    	static final String _27 = "27";
    	static final String _26 = "26";
    	static final String _93 = "93";
    	static final String _78 = "78";
    	static final String _80 = "80";
    	static final String _98 = "98";
    	static final String _81 = "81";
    	static final String _13 = "13";
    	static final String _12 = "12";
    	static final String _95 = "95";
    	static final String _20 = "20";
    	static final String _23 = "23";
    	static final String _53 = "53";
    	static final String _112 = "112";
    
    	static final String _270900 = "270900";
    	static final String _2710 = "2710";
    	static final String _2711210000 = "2711210000";
    	static final String _4907001010 = "4907001010";
    	static final String _4820409000 = "4820409000";
    	static final String _4907009000 = "4907009000";
    
    	// страны
    	static final String TM = "TM";
    	static final String AM = "AM";
    	static final String TJ = "TJ";
    	static final String UZ = "UZ";
    	static final String KG = "KG";
    	static final String AZ = "AZ";
    	static final String GE = "GE";
    	static final String UA = "UA";
    	static final String MD = "MD";
    	static final String BY = "BY";
    	static final String KZ = "KZ";
    
    	static final String ВРЕМ = "Врем";
    	static final String КОМП = "Комп";
    	static final String ДЕМП = "Демп";
    	static final String АКЦИЗ = "Акциз";
    
    	static final String УН = "УН";
    	static final String ИП = "ИП";
    
    	// импорт/экспорт
    	static final String ЭК = "ЭК";
    	static final String ИМ = "ИМ";
    }

    Тихий ужас...

    ctepx, 11 Ноября 2009

    Комментарии (13)
  3. C++ / Говнокод #2122

    +68.4

    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
    char rc;
    ...
    bool ResourceManager()
    {
    	static TResourceRC r;
    	...
    	delete r;
    	...
    	r=new TResourceRC(rc);
    	...
    	return true;
    	assert(false);
    };
    ...

    От предков проект достался. Я думал, чего он переодически необьяснимо глючит...
    ResourceManager() - вызываеться регулярно в цикле.

    Говногость, 11 Ноября 2009

    Комментарии (13)
  4. Pascal / Говнокод #2111

    +84.7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    const
       found=true;
       false=true;
    //лжи нет, да будет только правда....
    .....

    препод долго немог понять как программа вообще работает
    %DarkSvesh

    darksvesh, 07 Ноября 2009

    Комментарии (13)
  5. Java / Говнокод #2016

    +75.2

    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
    boolean isCustomerWMIDExists = containParameterWithName( request, CUSTOMER_WMID_PARAM_NAME );
    boolean isSellerWMIDExists = containParameterWithName( request, SELLER_WMID_PARAM_NAME );
    boolean isPurseExists = containParameterWithName( request, PURSE_PARAM_NAME );
    boolean isDescriptionExists = containParameterWithName( request, BasePaymentSystem.DESCRIPTION_PARAM_NAME );
    boolean isInvAddressExists = containParameterWithName( request, INVADDRESS_PARAM_NAME );
    boolean isPeriodExists = containParameterWithName( request, PERIOD_PARAM_NAME );
    boolean isExperationExists = containParameterWithName( request, EXPERATION_PARAM_NAME );
    boolean isDateCrtExists = containParameterWithName( request, DATECRT_PARAM_NAME );
    boolean isDateUpdExists = containParameterWithName( request, DATEUPD_PARAM_NAME );
    boolean isWmInvIdExists = containParameterWithName( request, INVID_PARAM_NAME );
    boolean isRequestNExists = containParameterWithName( request, REQUESTN_PARAM_NAME );
    boolean isProjectIdExists = containParameterWithName( request, BasePaymentSystem.PROJECTID_PARAM_NAME );
    boolean isUserIdExists = containParameterWithName( request, BasePaymentSystem.USERID_PARAM_NAME );
    boolean isCurrencyExists = containParameterWithName( request, CURRENCY_PARAM_NAME );
    
    if (isCustomerWMIDExists && isSellerWMIDExists && isPurseExists && isDescriptionExists && isInvAddressExists && isPeriodExists
    		&& isExperationExists && isDateCrtExists && isDateUpdExists && isWmInvIdExists && isRequestNExists && isProjectIdExists
    		&& isUserIdExists && isCurrencyExists)
    {
    	wminfo.setCustomerWMID( request.getParameter( CUSTOMER_WMID_PARAM_NAME ) );
    	wminfo.setSellerWMID( request.getParameter( SELLER_WMID_PARAM_NAME ) );
    	wminfo.setPurse( request.getParameter( PURSE_PARAM_NAME ) );
    	wminfo.setDescription( request.getParameter( BasePaymentSystem.DESCRIPTION_PARAM_NAME ) );
    	wminfo.setInvAddress( request.getParameter( INVADDRESS_PARAM_NAME ) );
    	wminfo.setPeriod( Byte.parseByte( request.getParameter( PERIOD_PARAM_NAME ) ) );
    	wminfo.setExperation( Byte.parseByte( request.getParameter( EXPERATION_PARAM_NAME ) ) );
    	wminfo.setDateCrt( ( getWebMoneyDateString( Long.parseLong( request.getParameter( DATECRT_PARAM_NAME ) ) ) ) );
    	wminfo.setDateUpd( ( getWebMoneyDateString( Long.parseLong( request.getParameter( DATEUPD_PARAM_NAME ) ) ) ) );
    
    	wminfo.setWmInvID( request.getParameter( INVID_PARAM_NAME ) );
    	wminfo.setRequestN( Long.parseLong( request.getParameter( REQUESTN_PARAM_NAME ) ) );
    	wminfo.setCurrency( Currency.getInstance( request.getParameter( CURRENCY_PARAM_NAME ) ) );
    	...
    }

    Разбор параметров GET-запроса, переданных из http://govnokod.ru/2015
    // не дай бог, начальство заметит, что я рабочий код публикую

    spbAngel, 21 Октября 2009

    Комментарии (13)
  6. Objective C / Говнокод #1982

    −109.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    - (void) dealloc
    {
    	NSAssert(NO, @"beda!");
    	[_connection close];
    	...
    }

    @ Objective-C

    parametr, 16 Октября 2009

    Комментарии (13)
  7. C# / Говнокод #1979

    +127.4

    1. 1
    idPlansList = ViewState["idPlansList"] is List<int> ? (List<int>)ViewState["idPlansList"] : new List<int>();

    ilya_lysenko, 14 Октября 2009

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

    +165.2

    1. 1
    2. 2
    3. 3
    function nik_slashes(&$value)     {
         return (stripslashes($value));
    }

    Коллега сделал свою функцию для удаления слэшей с блек джеком и всем прочим.

    Acid Beast, 13 Октября 2009

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

    +153.5

    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
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    /**
    	* Выполняет запрос SELECT
    	*
    	* @param string  $tables      Список таблиц, разделённый запятыми
    	* @param string  $condition   Условие для выборки (WHERE)
    	* @param string  $order       Поля для сортировки (ORDER BY)
    	* @param string  $fields      Список полей для получения
    	* @param int     $lim_rows    Максимльное количество получаемых записей
    	* @param int     $lim_offset  Начальное смещение для выборки
    	* @param string  $group       Поле для группировки
    	* @param bool    $distinct    Вернуть только уникальные записи
    	*
    	* @return array
    	*/
    	function select($tables, $condition = '', $order = '', $fields = '', $lim_rows = 0, $lim_offset = 0, $group = '', $distinct = false)
    	{
    		if (is_bool($fields) || $fields == '1' || $fields == '0' || !is_numeric($lim_rows)) {
    			# Обратная совместимость c 1.2.x
    			$desc = $fields;
    			$fields = $lim_rows ? $lim_rows : '*';
    			$lim_rows = $lim_offset;
    			$lim_offset = $group;
    			$group = $distinct;
    			$distinct = func_num_args() == 9 ? func_get_arg(8) : false;
    			$query = 'SELECT ';
    			if ($distinct) $query .= 'DISTINCT ';
    			if (!strlen($fields)) $fields = '*';
    			$tables = str_replace('`' ,'', $tables);
    			$tables = preg_replace('/([\w.]+)/i', '`'.$this->prefix.'$1`', $tables);
    			$query .= $fields." FROM ".$tables;
    			if (strlen($condition)) $query .= " WHERE $condition";
    			if (strlen($group)) $query .= " GROUP BY $group";
    			if (strlen($order)) {
    				$query .= " ORDER BY $order";
    				if ($desc) $query .= ' DESC';
    			}
    			if ($lim_rows) {
    				$query .= ' LIMIT ';
    				if ($lim_offset) $query .= "$lim_offset, ";
    				$query .= $lim_rows;
    			}
    		} else {
    			$query = 'SELECT ';
    			if ($distinct) $query .= 'DISTINCT ';
    			if (!strlen($fields)) $fields = '*';
    			$tables = str_replace('`','',$tables);
    			$tables = preg_replace('/([\w.]+)/i', '`'.$this->prefix.'$1`', $tables);
    			$query .= $fields." FROM ".$tables;
    			if (strlen($condition)) $query .= " WHERE ".$condition;
    			if (strlen($group)) $query .= " GROUP BY ".$group."";
    			if (strlen($order)) {
    				$order = explode(',', $order);
    				for($i = 0; $i < count($order); $i++) switch ($order[$i]{0}) {
    					case '+': $order[$i] = substr($order[$i], 1); break;
    					case '-': $order[$i] = substr($order[$i], 1).' DESC'; break;
    				}
    				$query .= " ORDER BY ".implode(', ',$order);
    			}
    			if ($lim_rows) {
    				$query .= ' LIMIT ';
    				if ($lim_offset) $query .= "$lim_offset, ";
    				$query .= $lim_rows;
    			}
    		}
    		$result = $this->query_array($query);
    
    		return $result;
    	}

    nbyt, 28 Сентября 2009

    Комментарии (13)
  10. PHP / Говнокод #1868

    +145.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if($record->getTitle()) {
      $request->setAttribute('title', $record->getTitle());
    }else{
      $request->setAttribute('title', $record->getName());
    }

    определение существования метода у объекта $record

    seroy, 18 Сентября 2009

    Комментарии (13)
  11. C++ / Говнокод #1862

    +51.6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    private: System::Void button2_MouseHover(System::Object^  sender, System::EventArgs^  e) {
    				 int x = rand() % 428-75; //минусуем ширину кнопки, посчитать впадлу
    				 int y = rand() % 301-23; // - высоту
    				 this->button2->Location::set(System::Drawing::Point(x,y));
    			 }
    	private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {						
    				 MessageBox::Show("Мы так и считали", "=)", MessageBoxButtons::OK, MessageBoxIcon::Asterisk);
    			 }

    лень

    ChakuZa, 17 Сентября 2009

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