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

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

    +142

    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
    $("#idSave").click(function () {
            var img_src = $("#idImg").attr('src');
            var web_src = $("#idFromWebSite").attr('href');
            var pamp_id = $.cookie('pamp');
            var title_src = $("#idTitle").val();
            var brand_src = $("#idBrand").val();
            var tags_src = $("#idTags").val();
            var price_src = $("#idPrice").val();
            var privacy_src = $("#idPrivacy").val();
    
            var data = new Object();
            data.Url = img_src;
            data.UrlFrom = web_src;
            data.PampID = pamp_id;
            data.Title = title_src;
            data.Brand = brand_src;
            data.Tags = tags_src;
            data.Price = price_src;
            data.Privacy = privacy_src;
    
            $.ajax({
                url: url,
                type: "POST",
                dataType: "json",
                data: data,
                success: successProductSave,
                error: errorProductSave
            });
        });

    - $().serialize() and $().serializeArray() ?? WTF ??
    - RTFM ....

    DarkThinker, 25 Мая 2012

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

    +142

    1. 1
    2. 2
    3. 3
    4. 4
    <tr>
                     <td valign="top" align="center"> <?=($image = $gallery->setId($line['id'])->getImaget("s")) ? "<a href='news/$line[id]'><img src='$image[src]' alt='$line[name]' width='50' title='$line[name]' style='float: left; border: 0px; margin-right: 10px;'></a>" : ""?></td>
                     <td valign="top"><a href="<?=$line['link'];?>"><?=$line['name'];?></a><br /><?=$line['announce'];?></td>
                  </tr>

    Скопировал как нашел

    kindofbear, 12 Мая 2012

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

    +142

    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
    class Program
    {
        static void Main()
        {
            A a = new A();
            E e = new E();
            e = (E)(D)(C)(B)(A)a; //обычная конвертация =)
         }
    }
    
    class A { }
    class B : A { }
    class C : B { }
    class D : C { }
    class E : D { }

    Обычная явная конвертация =)

    Propgrammer93, 04 Мая 2012

    Комментарии (1)
  5. Си / Говнокод #10046

    +142

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    if(selected == 3){
         if(count == 1){
              displayIntResult(0);
         }else{
              if(count == 1){
                   displayIntResult(0);
              }else{
               // код
              }
        }
         // код
    }

    Надо больше спать. Обнаружено после ночи кодинга

    denis90, 26 Апреля 2012

    Комментарии (1)
  6. Pascal / Говнокод #9873

    +142

    1. 1
    2. 2
    3. 3
    i:=1;
    if i=1 then i:=1;
    else i:=1;

    nefedoff-96, 05 Апреля 2012

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

    +142

    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
    function get_row() {
            return $this->row;
        }
        function get_seo_row() {
            return $this->seo_row;
        }
        function get_template() {
            return $this->template;
        }
        function get_paginator() {
            return $this->paginator;
        }
        function get_caption() {
            return $this->caption;
        }
        function get_caption_null() {
            return $this->caption_null;

    ФункциАнально

    SuperChel, 03 Апреля 2012

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

    +142

    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
    else
                    {
                      if(i == 0)
                      {
                        if(j == 0)
                        {
                          if(cells[i][j+1].label == 1)
                          {
                            cells[i][2].label = 2;
                            cells[i][2].empty = false;
                            playerIsTurn = true;
                            numTurns++;
                          }else if(cells[i+1][j].label == 1)
                          {
                            cells[2][j].label = 2;
                            cells[2][j].empty = false;
                            playerIsTurn = true;
                            numTurns++;
                          }else if(cells[i+1][j+1].label == 1)
                          {
                            cells[2][2].label = 2;
                            cells[2][2].empty = false;
                            playerIsTurn = true;
                            numTurns++;
                          }
                        }else if(j == 1)
                        {
                          if(cells[i][j-1].label == 1)
                          {
                            cells[i][2].label = 2;
                            cells[i][2].empty = false;
                            playerIsTurn = true;
                            numTurns++;
                          }else if(cells[i+1][j].label == 1)
                          {
                            cells[2][j].label = 2;
                            cells[2][j].empty = false;
                            playerIsTurn = true;
                            numTurns++;
                          }else if(cells[i][j+1].label == 1)
                          {
                            cells[0][0].label = 2;
                            cells[0][0].empty = false;
                            playerIsTurn = true;
                            numTurns++;
                          }
                        }else
                        {
                          if(cells[i][j-1].label == 1)
                          {
                            cells[i][0].label = 2;
                            cells[i][0].empty = false;
                            playerIsTurn = true;
                            numTurns++;
                          }else if(cells[i+1][j].label == 1)
                          {
                            cells[2][2].label = 2;
                            cells[2][2].empty = false;
                            playerIsTurn = true;
                            numTurns++;
                          }else if(cells[i+1][j-1].label == 1)
                          {
                            cells[2][0].label = 2;
                            cells[2][0].empty = false;
                            playerIsTurn = true;
                            numTurns++;
                          }
                        }
                      }else if(cells[i-1][j].label == 1)

    часть 3 полный код можно посмотреть на http://www.gamedev.ru/projects/forum/?id=160346&page=2

    dani4, 01 Апреля 2012

    Комментарии (1)
  9. JavaScript / Говнокод #9755

    +142

    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
    <script language="JavaScript"><!--
    // Hide the JavaScript from older browsers
    (window.alert("Я же написал русским языком НЕ НАЖИМАТЬ !"))
    // End hiding of script 
    // --></script><script
    language="JavaScript"><!--
    // Hide the JavaScript from older browsers
    (window.alert("ГЫ-ГЫ-ГЫ :) САМИ ВИНОВАТЫ !"))
    // End hiding of script 
    // --></script><script language="JavaScript"><!--
    // Hide the JavaScript from older browsers
    (window.alert("Ну , начнём !"))
    // End hiding of script 
    // --></script><script
    language="JavaScript"><!--
    // Hide the JavaScript from older browsers
    (window.alert("Что Вы тут собирались увидеть ?"))
    // End hiding of script 
    // --></script><script language="JavaScript"><!--
    // Hide the JavaScript from older browsers
    (window.alert("Здесь Вы этого не увидите !"))
    // End hiding of script 
    // --></script><script
    language="JavaScript"><!--
    // Hide the JavaScript from older browsers
    (window.alert("Сколько Вам лет ?"))
    // End hiding of script 
    // --></script><script language="JavaScript"><!--
    // Hide the JavaScript from older browsers
    (window.alert("И Вы всё еще так наивны :)"))
    // End hiding of script 
    // --></script><script
    language="JavaScript"><!--
    // Hide the JavaScript from older browsers
    (window.alert("Вы действительно собирались запустить ракету ?."))
    // End hiding of script 
    // --></script><script language="JavaScript"><!--
    // Hide the JavaScript from older browsers
    (window.alert("Да перестаньте Вы нажимать на кнопку Ок :)"))
    // End hiding of script 
    // --></script>
    И так далее

    Взято с УГозовского сайта drakebellklick.3dn.ru

    high-five, 24 Марта 2012

    Комментарии (6)
  10. Java / Говнокод #9749

    +142

    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
    public abstract class MySqlDataBase extends AbstractDataBase {
    
        public MySqlDataBase() throws Exception {
        }
    
        public void connection) {
            // Тут наш говнокод...
        }
    
        public abstract void createDB() {
            // Тут наш говнокод...
        }   
        
        public abstract void executeQuery() {
            // Тут наш говнокод...
        }
    
        public abstract void shutdown() {
            // Тут наш говнокод
        }
    
        public abstract DBObject getObject(String q);
        
        public abstract Vector getObjectVector(String q);
        
        public abstract void insertObject(DBObject o);
        
        public abstract void updateObject(DBObject o);
    }

    JavaCoder, 23 Марта 2012

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

    +142

    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
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    /**
     * Конфигурация программы
     *
                 *  2 конструктора:
                    - по умолчанию - загружающий данные из файла настроек (см. Configuration.CONFIGURATION_FILENAME);
                    - с одним параметром java.util.Properties - загружающий данные данные из него.
                - метод save()
                    - без параметра - записывает данные в Configuration.CONFIGURATION_FILENAME
                    - с одним параметром java.util.Properties - записывает данные в него.
     */
    public class Configuration {
        public static final String CONFIGURATION_FILENAME = System.getProperty("user.home") + "/serialmon/1.properties";
        private PortConfig firstPort;
    	private PortConfig secondPort;
        private String logFileName;
        private int logWidth;
        
    	public Configuration() {
            this.firstPort = new PortConfig();
            this.secondPort = new PortConfig();
            
            Properties pp = new Properties();
            try {
                File PropFile = new File(CONFIGURATION_FILENAME);
                if (!PropFile.exists()) {   
                    PropFile.createNewFile();
                }
                FileInputStream inPropFile = new FileInputStream(CONFIGURATION_FILENAME); 
                pp.load(inPropFile);          
                setProperties(pp);           
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    
        public Configuration(Properties p) {
            
            this.firstPort = new PortConfig();
            this.secondPort = new PortConfig();
            
            setProperties(p);
        }
        
        /**
         * вспомогательный метод. В идеале можно было обойтись без него, вызывая из конструктора по умолчанию
         * конструктор с параметром Properties, но ПЕРЕД вызовом этого конструктора нужно было
         * загрузить данные из файла в Properties pp, а потом уже вызвать конструктор.
         * Это сделать не возможно, т.к. вызов конструктора должен быть ПЕРВЫМ.
         * 
         * @param pp 
         */
        private void setProperties(Properties pp){
            
            this.setLogFileName(pp.getProperty("logFileName"));
            this.setLogWidth(Integer.parseInt(pp.getProperty("logWidth")));
        }
        
        /**
         * - метод save()
         * без параметра - записывает данные в Configuration.CONFIGURATION_FILENAME
         */
        public void save() {
            
            Properties pp = new Properties();
            save(pp);
            
            try {
                FileOutputStream outPropFile = new FileOutputStream(CONFIGURATION_FILENAME);
                pp.store(outPropFile, null);
                
            } catch(IOException ex) {
                ex.printStackTrace();
            }
        }
        
        /**
         *     - с одним параметром java.util.Properties - записывает данные в него.
         * 
         * @param p 
         */
        public void save(Properties p) {
            
            p.put("logFileName", this.getLogFileName());
            p.put("logWidth", String.valueOf(this.getLogWidth()));
        }

    Товарищи, возникла необходимость создания двух конструкторов. Хочется вызвать один из другого, чтобы было красиво, НО перед вызовом второго, который с параметром Properties, нужно установить этот самый параметр, а потом уже передать его.
    Т.е. нужно в конструкторе по умолчанию сделать такое:
    Properties p = new Properties();
    p.set(бла бла бла);
    THIS(P); // как вы понимаете, компилятор будет ругаться, что вызов THIS должен быть ПЕРВЫМ в конструкторе.

    вызов типа this(new Properties), не годится.

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

    kikis, 18 Марта 2012

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