1. ActionScript / Говнокод #17517

    −89

    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
    public static function getSourceArray(array: Object): Array
    {
    	if (array is ArrayCollection)
    	{
    		array = ArrayCollection(array).source;
    	}
    
    	if (array is IList)
    	{
    		array = IList(array).toArray();
    	}
    
    	return array as Array;
    }

    Очевидно, опять построчная оплата. ArrayCollection реализует IList... :(

    wvxvw, 25 Января 2015

    Комментарии (0)
  2. Куча / Говнокод #17516

    +132

    1. 1
    2. 2
    https://github.com/stulluk/FFmpeg-Cedrus
    Хотел клонировать реп. Ждал час. Ждал другой. Посмотрел внутрь

    Видимо человек встретился с git впервые.
    Хорошо хоть,что он исходник в .gitignore не хранит.

    mittorn, 25 Января 2015

    Комментарии (24)
  3. ActionScript / Говнокод #17515

    −90

    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
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    public static function padToTwoDigits(value:int):String
    {
    	if(value < 10)
    		return "0" + value.toString();
    	else
    		return value.toString();
    }
    
    /**
     * returns 00:00 format
     * 
     * @param  miliseconds 
     */
    public static function time_format(miliseconds:Number):String{
    	var recorded_time_lbl:String = '';
    	
    	var seconds:Number = miliseconds/1000;
    	var minutes:uint = seconds / 60;
    
    	var seconds_remain:uint = seconds - (minutes*60);
    
    	var sec_lbl:String = '';
    	if(seconds_remain<10){
    		sec_lbl = '0'+seconds_remain;
    	}else{
    		sec_lbl = ''+seconds_remain;
    	}
    	var min_lbl:String = '';
    	if(minutes<10){
    		min_lbl = '0'+minutes;
    	}else{
    		min_lbl = ''+ minutes;
    	}
    	
    	recorded_time_lbl = min_lbl + ':' + sec_lbl;
    	return recorded_time_lbl;
    	//--
    	var recorded_time:String = (miliseconds/100000).toFixed(2) ;
    	
    	if(recorded_time.length == 5) // 23.22
    		recorded_time_lbl = recorded_time.substr(0,2)+':'+recorded_time.substr(3);
    	else if(recorded_time.length == 4) // 4.26
    		recorded_time_lbl = '0'+recorded_time.substr(0,1)+':'+recorded_time.substr(2);
    	
    	return recorded_time_lbl;
    }
    /**
    * limits a string to a specified length and adds '...' at the end of it
    */ 
    public static function trim(s:String,limit:uint):String{
    	if(s.length > limit){
    		s = s.substr(0,limit-4) + '...';
    	}
    	return s;
    }
    
    public static function formatTime(value: Number): String
    {
    	if (isNaN(value) || (value < 0))
    	{
    		return "0:0";
    	}
    	var formatedTime: Array = formateTimeToIntArr(value);
    	var minutes: int = formatedTime[1];
    	if (minutes < 0)
    	{
    		return "0:0";
    	}
    	var seconds: int = formatedTime[0];
    	var timevalue: String = minutes + ":";
    
    	if (seconds < 10)
    	{
    		timevalue += "0";
    	}
    
    	timevalue = timevalue + seconds;
    
    	return timevalue;
    }
    
    public static function formateTimeToIntArr(value: Number): Array
    {
    	var result: Array = [0, 0];
    	if (!isNaN(value))
    	{
    		var minutes: int = value / 60;
    		var seconds: int = value % 60;
    		if (!(minutes < 0))
    		{
    			result = [seconds, minutes];
    		}
    	}
    	return result;
    }

    Я понимаю, что много, но количество тут играет определенную роль. Это только небольшая часть файла вспомогательных функций для форматирования времени, дат и т.п. В какой-то степени удручает еще и неизобретательность автора, последовательно наступающих на те же самые грабли и даже ни на секунду не задумавшегося о предназначении...

    wvxvw, 25 Января 2015

    Комментарии (1)
  4. Куча / Говнокод #17514

    +130

    1. 1
    2. 2
    Я не жду чтобы меня плюсовали, но давайте сделаем небольшую игру, ломающую стереотипы?
    Например рогалик в небольшое кол-во строк. В качестве главного героя можно взять крутого парня ломающего черепа.

    LispGovno, 25 Января 2015

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

    +161

    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
    <?php
    /**
     * Округляет число до заданного количества знаков после запятой.
     * @param float $v	- округляемое число.
     * @param int $prec - количество знаков после запятой (по-умолчанию: 0).
     * @param str $mode - режим округления: ceil | floor | round (по-умолчанию: round).
     * @return float округлённое число.
     */
    function round2($v, $prec = 0, $mode = "round") {
    	for ($k = 1, $i = 0; $i < $prec; $i++, $k *= 10)
    		;
    	switch ($mode) {
    		case "ceil" : $v = ceil($k * $v) / $k;
    			break;
    		case "floor" : $v = floor($k * $v) / $k;
    			break;
    		default : $v = round($k * $v) / $k;
    	}
    
    	return $v;
    }

    kissarat, 24 Января 2015

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

    +141

    1. 1
    strcat(strcpy(malloc(strlen(argv[0]) + sizeof(".track")), argv[0]), ".track")

    LispGovno, 24 Января 2015

    Комментарии (94)
  7. Java / Говнокод #17511

    +72

    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
    public class Командир {
        private String имя;
        private ПоходНаГерманию поход;
    
        public Командир(String имя) {
            this.имя = имя;
            поход = new ПоходНаГерманию();
         }
    
        public Богатство пойтиВпоход()
                             throws НеПолучилосьException {
            return поход.сходить();
        }
    }

    больше русской жабы тут http://www.spring-source.ru/docs_simple.php?type=manual&theme=docs_s imple&docs_simple=chap01_p03

    argamidon, 24 Января 2015

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

    +95

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    static void Main(string[] args)
            {
                Func<int, int> m = delegate(int a)
                {
                    Func<int, int> c = x => x / 2;
                    return a * c(a);
                };
                Console.WriteLine(m(10));
                Console.ReadKey();
            }

    Нестандартный подход

    SharK1870, 24 Января 2015

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

    +94

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    combinations.AddRange(combinations4);
                combinations.AddRange(from combination5 in combinations5
                                      where
                                          (from combination4 in combinations4
                                           where
                                               (from c4class in combination4.Classes
                                                where !combination5.Classes.Contains(c4class)
                                                select c4class).Count() == 0
                                           select combination4).Count() == 0
                                      select combination5);

    Теперь у меня есть ачивка "сделать через LINQ не смотря ни на что".
    Тому, кто поймёт, что же здесь происходит - достанется воображаемый пряник.

    krypt, 24 Января 2015

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    function(dateToAdjust) {
        dateToAdjust = new Date(dateToAdjust);
        var offsetMs = dateToAdjust.getTimezoneOffset() * 60000;
        return new Date(dateToAdjust.getTime() - offsetMs);
    }

    даты в js, люблю их даже больше чем в php

    movaxbx, 24 Января 2015

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