1. 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) RSS

    • Удивлен! Это не китайсо! Это японцы. Слова японские слова. KAKKO_MAE - "перед какко", KAKKO_ATO - "после какко"
      Ответить
      • Слова то может и японские, но сий шедевр изготовлен дешевыми китайцами. Японя очень любят економить, нанимая дишовых кетайцев из Шанхая. Текст взят из первоисточника.
        Ответить
    • Добавлю - какко значит скобка, их у японцев до черта разных, и тут написано автозакрывание к ним. Конечно, табличками бы -_- Но написан код японцем, гарантию даю.
      Ответить
      • Забавно, то что у нас фекалии, у японей скобки. Но повторю, код писан дишевыми китайцами, он у меня из первоисточника, т.е. от тех кто их нанимал. Проблема китайцев в том, что исчо на японском они кое как могут(у меня есть опыт взаимодействия с дишовыми китайцами нанятыми японями), а вот по английски, совсем никак. У них там не так просто найти того, кто хотя бы слышал о Spring к примеру. Поентому они пишут кучу своих фреймворков, в которых методы называются транслитом с китайско-японского. Например ldSyainInf.getGenzaiSyokusyu(), и что бы сие означало. Есть классы Cmoag1000Helper(что за бред?).
        Ответить
        • аы, сферический китайский говнокод в вакууме
          Ответить
          • зато как философски выглядят имена, наводят на размышлении о вечном
            Ответить
        • Учи китайский. Скоро все там будем - пригодится :)
          Ответить
    • Ну а что вы предлагаете делать с константами?
      Ответить
      • Завести какие нибудь классы холдеры с осмысленными названиями, а не хештейблы переопределять, например. У меня ведь есть примеры такого добра, где класс наследуется от хештейбла только для добавления констант. А ваще, специалистам по переопределению хештейблов надо бы вставлять клизму кой-куда. Рассказывали мне об одних кадрах, которых не устаивала производительность стандартного хештейбла в джаббе, поентому они написали свой, который в итоге оказался в 20 раз медленнее.
        Ответить
    • От Hashtable оно унаследовано, потому так учили в книжках по Java, написанных в незапамятные времена Java 1.1. Это неистребимо.
      Ответить
      • Есть такая беларуская поговорка: "Людзей слухай ды свой розум май." Книжки ето конечно хорошо, но их могут писать обкуренные аффторы(был у на в свое время препод по джаве, так я у него спросил както как осуществляется конвертация из чисел в строки и обратно. так его ето очень сильно озадачило и он отправил меня читать доки. а вот теперь представим, что такой напишет книжку...). А в добавок к ентому - осмысливать же надо прочитанное.:)
        Ответить

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