1. PHP / Говнокод #1505

    +158.1

    1. 1
    2. 2
    3. 3
    4. 4
    function fDim($m){
        $vDim = array(1, 3, 5, 7, 8, 10, 12);
        return (in_array($m, $vDim) ? 31 : ($m == 2? 28 : 30));
    }

    Функция возвращает количество дней в месяце. Очень забавный пассаж, ага?

    sharpstream, 10 Августа 2009

    Комментарии (9)
  2. C# / Говнокод #1504

    +137.1

    1. 1
    2. 2
    3. 3
    if (Skin == null || ((Skin != null && Skin.Value == null) || (Skin != null && Skin.Value != null && Skin.Value.Length == 0))) {
    				Skin = new LocalString("...");
    			}

    проверочко.. ^_^

    fade, 10 Августа 2009

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

    +70.9

    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
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    public class SHcoGlobalInf extends Hashtable {
    	//много-много констант, но в силу ограничений обьема я их сокращаю
    	public static final String KEY_KAKKO_MAE   = "KEY_KAKKO_S";
        public static final String KEY_KAKKO_MAE_0 = "KEY_KAKKO_S0";
        // ..... исчо набор "как"
    	public static final String KEY_KAKKO_MAE_K = "KEY_KAKKO_SK";
    	public static final String KEY_KAKKO_ATO   = "KEY_KAKKO_E";
    	public static final String KEY_KAKKO_ATO_0 = "KEY_KAKKO_E0";
    	//набор "каков-атов"
    	public static final String KEY_KAKKO_ATO_K = "KEY_KAKKO_EK";
    	public static final String KEY_HATUHENDEN_CD = "KEY_HATUHENDEN_CD";
    	public static final String KEY_SODEN_CD = "KEY_SODEN_CD";
        public static final String KEY_BUTTON_W = "KEY_BUTTON_W";
        public static final String KEY_BUTTON_H = "KEY_BUTTON_H";
        public static final String KEY_TOTAL     = "KEY_TOTAL";
        public static final String KEY_BUNRUI_CD = "KEY_BUNRUI_CD";
        public static final String KEY_SIZAI_SVR_URL = "comSizaiSvrUrl";
        public static final String KEY_BIZ_LIMIT_RANGE_MINUTE = "KEY_BIZ_LIMIT_RANGE_MINUTE";
        public static final String KEY_SIZAI_SVR_DIRECT_URL = "comSizaiSvrDirectUrl";
        public static final String KEY_DOMAIN_MOBILE = "comPsmoDomainMobile";
        public static final String KEY_TRAINING_MODE = "comTrainingMode";
        public static final String KEY_BATCH_HOME = "comBatchHome";
    
        public String getKakkoStart(String strShuyakuCd) {
            StringBuffer strAttributeName = new StringBuffer();
            strAttributeName.append(KEY_KAKKO_MAE);
            strAttributeName.append(strShuyakuCd);
            Object obj = this.get(strAttributeName.toString());
            if(obj instanceof String) {
                return (String) obj;
            } else {
                return "";
            }
        }
    
        public String getKakkoEnd(String strShuyakuCd) {
            StringBuffer strAttributeName = new StringBuffer();
            strAttributeName.append(KEY_KAKKO_ATO);
            strAttributeName.append(strShuyakuCd);
            Object obj = this.get(strAttributeName.toString());
            if(obj instanceof String) {
                return (String) obj;
            } else {
                return "";
            }
        }
    
        public String parseKakko(String strValue, String strShuyakuCd) {
            String strResult = "";
            if(strValue instanceof String) {
                if(!strValue.equals("")) {
                    StringBuffer outValue = new StringBuffer();
                    outValue.append(this.getKakkoStart(strShuyakuCd));
                    outValue.append(strValue);
                    outValue.append(this.getKakkoEnd(strShuyakuCd));
                    return outValue.toString();
                }
            }
            return strResult;
        }
    
        public String getCodeSet(String strKey) {
            Object obj = this.get(strKey);
            return (String) obj;
        }
    
        public String getHostUrl() {
            StringBuffer sbHostUrl = new StringBuffer();
            
            sbHostUrl.append((String)this.get("KEY_PROTOCOL"));
            sbHostUrl.append((String)this.get("comHstAplSvr"));
            sbHostUrl.append(".");
            sbHostUrl.append((String)this.get("comPsmoDomain"));
    
            return sbHostUrl.toString();
        }
    }

    Пример, как нельзя подходящий местному сайту. Почему? Обратите внимание на названия констант и методов. Они берут "каки", т.е. говно.
    Ето чудо наваяно дишовыми китайцами, мною сокращено ибо со всеми константами занимало 500 строк. Также важно заметить, что етот какоед наследуется от хештейбла, по видимому в целях поднятия производительности:)

    cheap_chinese, 10 Августа 2009

    Комментарии (12)
  4. C# / Говнокод #1502

    +126.2

    1. 1
    2. 2
    3. 3
    if (myBool.ToString() == "true")
    {
    }

    62316e, 10 Августа 2009

    Комментарии (37)
  5. PHP / Говнокод #1501

    +154

    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
    if ( isset( $criterias['name'] ) && ($criterias['name'] = trim( $criterias['name'] )) )
    {
    	$conditions .= empty( $conditions ) ? '(' : ' AND ';
    	$conditions .= "name LIKE '%".addslashes( $criterias['name'] )."%'";
    }
    
    if ( isset( $criterias['address'] ) && ($criterias['address'] = trim( $criterias['address'] )) )
    {
    	$conditions .= empty( $conditions ) ? '(' : ' AND ';
    	$conditions .= "address LIKE '%".addslashes( $criterias['address'] )."%'";
    }
    
    // если условие непустое, то закрываем скобку
    $conditions .= empty( $conditions ) ? '' : ')';

    Вместо использования массива для условий и последующего его объединения

    wunge, 10 Августа 2009

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

    +157.1

    1. 1
    return strtoupper(strtr($str, "йцукенгшщзхъэждлорпавыфячсмитьбюё", "ЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮЁ"));

    1C-Bitrix, вот говнищще-то!

    xEviL, 10 Августа 2009

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

    +129.4

    1. 1
    (string) $def == (string) $value

    Видимо о том, что == сравнивает строковые представления программист не знал.

    guest, 09 Августа 2009

    Комментарии (12)
  8. C++ / Говнокод #1498

    +24.3

    1. 1
    2. 2
    3. 3
    bool TimeSpan::operator != (const TimeSpan & tvalue) const {
    	return *this != tvalue;
    }

    Веселый код в одной либе. То то я удивился, откуда у меня stack owerflow там где его быть не может.

    Автор виддимо хотел написать !(*this == tvalue) но протупил. =)

    guest, 09 Августа 2009

    Комментарии (4)
  9. SQL / Говнокод #1497

    −867.6

    1. 1
    SELECT SQL_CALC_FOUND_ROWS *,cached_login as login,cached_name as uname,comment_count as ccount FROM posts p WHERE exists (select * from tags tg, tegi_zapisi tx where tg.alt_title like 'post' and tg.id_tag=tx.id_tag and tx.id_post=p.id_post) and exists (select * from tags tg, tegi_zapisi tx where tg.alt_title like 'opentomsk' and tg.id_tag=tx.id_tag and tx.id_post=p.id_post) and hide<>1 ORDER BY p.date desc, p.time desc LIMIT 210,10

    выбираем все посты с определёнными тегами или без них
    удивляемся, почему тормозит пропорционально количеству тегов

    guest, 08 Августа 2009

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

    +132.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
    public Image ResultImage
            {
                get
                {
                    return GetCut();
                }
            }
    
            private Image GetCut()
            {
                Bitmap b1 = new Bitmap(border.Width, border.Height);
    
                Bitmap b = new Bitmap(pictureBox1.Image.GetThumbnailImage(pictureBox1.Width, pictureBox1.Height, new Image.GetThumbnailImageAbort(fff), IntPtr.Zero));
                int x = border.Location.X;
                int y = border.Location.Y;
    
                int x1 = border.Location.X + border.Width;
                int y1 = border.Location.Y + border.Height;
    
                for (int i = x; i < x1; i++)
                {
                    for (int j = y; j < y1; j++)
                    {
                        b1.SetPixel(i - x, j - y, b.GetPixel(i, j));
                    }
                }
                return b1;
            }
    
            public bool fff()
            {
                return false;
            }

    Вырезка прямоугольника из битмапа.

    guest, 08 Августа 2009

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