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

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

    +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
    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
    struct ServiceProvider1
    {
      ServiceProvider1(Service2& service1, Service3& service2, Service3& service3, Service4& service4, Service5& service5):
        service1(service1),
        service2(service2),
        service3(service3),
        service4(service4),
        service5(service5),
     {}
    
      fun<Service1> service1;//fun - функциональный объект (operator() перегружен), хранящий ссылку на сервис, чтобы не писать кроме членов ещё и две функции - константную и не константную.
      fun<Service2> service2;
      fun<Service3> service3;
      fun<Service4> service4;
      fun<Service5> service5;
    };
    
    class Service1
    {
    public:
      template<class ServiceProvider> 
      Service1(ServiceProvider serviceProvider):
        service2(serviceProvider.service2()),//Ссылки на сервисы получаем.
        service3(serviceProvider.service3()),
        myMember1(serviceProvider),//эти мемберы сами внутри воспользуются провайдерами зависимостей
        myMember2(serviceProvider),
        myMember3(),
        myMember4(myServiceProviderGeter<ServiceProvider>()),//Этому мембору понадобились новые зависимости, часть тех, что хранятся в ServiceProvider, а часть новых среди членов Service1.
        myMember5(myServiceProviderGeter<ServiceProvider>())
        myMember6(myServiceProviderGeter<ServiceProvider>())
      {}
      ...
    private:
      template<class BaseServiceProvider>
      struct MyServiceProvider: BaseServiceProvider
        {
           MyServiceProvider(BaseServiceProvider baseServiceProvider, Service6& service6, Service7& service7):
             BaseServiceProvider(baseServiceProvider),
             service6(service6),
             service7(service7)
           {}
           
           fun<Service6> service6;
           fun<Service7> service7;
        };
    
      template<class BaseServiceProvider> MyServiceProvider<BaseServiceProvider> myServiceProviderGeter(BaseServiceProvider baseServiceProvider) const
      {
        return MyServiceProvider<BaseServiceProvider>(baseServiceProvider, this->myMember2, this->myMember3);
      }
    };
    ...
    ServiceProvider1 sp(...);
    Servive1 service1(sp);
    Service8 service8(sp);
    Service9 service9(sp);
    ...

    оттуда

    LispGovno, 31 Января 2014

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

    +25

    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
    template <typename T> struct Pool { static std::vector<T> data; };
    
    std::vector<tbphys::Body> Pool<tbphys::Body>::data;
    std::vector<Ball>         Pool<Ball>        ::data;
    std::vector<Wall>         Pool<Wall>        ::data;
    std::vector<Bat>          Pool<Bat>         ::data;
    std::vector<Brick>        Pool<Brick>       ::data;
    
    template <typename T, typename U> struct List
    {
    	typedef T Head;
    	typedef U Tail;
    };
    
    struct End {};
    
    typedef List<tbphys::Body, List<Brick, List<Bat, List<Ball, List<Wall, End> > > > > Components;
    typedef List<Brick, List<Bat, List<Ball, List<Wall, End> > > > DrawableComponents;
    typedef List<Brick, List<Ball, List<Bat, End> > > MovableComponents;
    
    const size_t badindex = size_t(-1);
    
    struct GameBody
    {
    	size_t self,body,bat,brick,wall,ball;
    
    	template <typename T> size_t& IndexOf ();
    	template <> size_t& IndexOf <tbphys::Body> () {return body;}
    	template <> size_t& IndexOf <Bat  >        () {return bat;}
    	template <> size_t& IndexOf <Brick>        () {return brick;}
    	template <> size_t& IndexOf <Wall >        () {return wall;}
    	template <> size_t& IndexOf <Ball >        () {return ball;}
    
    	template <typename T>
    	T& AddComponent ()
    	{
    		size_t index = Pool<T>::data.size();
    		Pool<T>::data.resize(index+1);
    		T& result = Pool<T>::data[index];
    
    		result.hostIndex = self;	
    		IndexOf<T>() = index;
    		return result;
    	}
    
    	template <typename T> void SetBadIndex ()
    	{
    		IndexOf<T::Head> () = badindex;
    		SetBadIndex<T::Tail> ();
    	}
    	template <> void SetBadIndex <End> () {}
    };

    Сколько тут говнопаттернов крестоблядского крестоязыка?

    TarasB, 22 Октября 2012

    Комментарии (146)
  4. PHP / Говнокод #1946

    +158

    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
    <?if($addrs):?>
    	  <?$i=0?>
    	  <?foreach($addrs as $item):?>
    	  
    		  <? $f = GetFields('slon_text', 43, $item['Id']) ?>	
    		  
    		  <address class="vcard">
    			<span class='org hidd'><?=$MG['Site_name']?></span>
    			<span class="adr work">
    				<?if(!empty($f['Город'])):?><span class="locality<?if($i!=0):?> hidd<?endif?>"><?=$f['Город']?></span><br/><?endif?>
    				<?if(!empty($f['Адрес'])):?><span class="street-address"><?=$f['Адрес']?></span><?endif?>
    				<?if(!empty($f['Страна'])):?><span class="country-name hidd"><?=$f['Страна']?></span><?endif?>
    			</span><br/>
    			<?if(!empty($f['Телефон 1'])):?>
    			<span class="tel">
    				Тел.: <span title="+38044<?=str_replace('-','',$f['Телефон 1'])?>" class="value"><?=$f['Телефон 1']?></span><?if(!empty($f['Телефон 2'])):?>, <span title="+38044<?=str_replace('-','',$f['Телефон 2'])?>" class="value"><?=$f['Телефон 2']?></span><?endif?>
    			</span><br/>
    			<?endif?>
    			<?if(!empty($f['E-mail'])):?><a class="email" href="mailto:<?=$f['E-mail']?>"><?=$f['E-mail']?></a><?endif?>
    		  </address>
    		  <?$i++?>
    	  <?endforeach?>
    	  <?endif?>

    Говно-синтаксис

    dobs2005, 07 Октября 2009

    Комментарии (146)
  5. Python / Говнокод #26782

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    import json
    a = {}
    b = {}
    for i in xrange(128): a[str(i)] = i
    for i in a: b[i] = a[i]
    print a == b
    print json.dumps(a) == json.dumps(b)

    Результат:
    True
    False

    Почему не True True ?

    a02810, 30 Июня 2020

    Комментарии (145)
  6. Куча / Говнокод #25588

    −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
    * * u n s k i l l * * u n s k i l l * * u n s k i l l * *
    u                                                       u
    n                   _,,,-------,, ,-----,,_             n
    s                ,''             `         ``,          s
    k              ,'               /\           ',         k
    i            ,'             ,-''  ``-,          \       i
    l           /          ,,--'          `-,        |      l
    l          /      ,--''                  `-,      |     l
    *         |      |   -,___          ___,-  |     |      *
    u        |      |    _____`-,    ,-'____    |     |     u
    n        |     |    /     \        /    \   |     |     n
    s        |     |   |    O  |   \  |   O  |  |     |     s
    k       |      |    \_____/     \  \____/   |     |     k
    i       |      |                 \          |     |     i
    l      |       |                  \         |     |     l
    l     /         |              ---`         |      |    l
    *    |           \     `:---______---:`     |      |    *
    u    |            \     `,| |  |  | |'     |       |    u
    n   |              \      ``''''''''      /         |   n
    s   |               ',,                ,,'          |   s
    k  |                   ''------------''              |  k
    i  |                     |          |                |  i
    l |                      |          |                 | l
    l |                     |            |                | l
    * * u n s k i l l * * u n s k i l l * * u n s k i l l * *

    AHCKujlbHblu_netyx, 04 Мая 2019

    Комментарии (145)
  7. Куча / Говнокод #25037

    0

    1. 1
    Не нужно было меня банить. Я ничего не нарушал.

    BUTTHURT, 29 Октября 2018

    Комментарии (145)
  8. Куча / Говнокод #17889

    +129

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    #widgetu2272.frm-sub-st #u2283-4,#widgetu2272.frm-subm-err-st #u2284-4,#widgetu2272.frm-subm-ok-st #u2282-4,#widgetu2293.frm-sub-st #u2304-4,#widgetu2293.frm-subm-err-st #u2305-4,#widgetu2293.frm-subm-ok-st #u2303-4,#widgetu2575.frm-sub-st #u2586-4,#widgetu2575.frm-subm-err-st #u2577-4,#widgetu2575.frm-subm-ok-st #u2576-4,#widgetu2608.frm-sub-st #u2619-4,#widgetu2608.frm-subm-err-st #u2610-4,#widgetu2608.frm-subm-ok-st #u2609-4,#widgetu2641.frm-sub-st #u2652-4,#widgetu2641.frm-subm-err-st #u2643-4,#widgetu2641.frm-subm-ok-st #u2642-4,#widgetu2471.frm-sub-st #u2472-4,#widgetu2471.frm-subm-err-st #u2483-4,#widgetu2471.frm-subm-ok-st #u2477-4,#widgetu2772.frm-sub-st #u2778-4,#widgetu2772.frm-subm-err-st #u2779-4,#widgetu2772.frm-subm-ok-st #u2777-4,#widgetu2706.frm-sub-st #u2712-4,#widgetu2706.frm-subm-err-st #u2713-4,#widgetu2706.frm-subm-ok-st #u2711-4,#widgetu2404.frm-sub-st #u2405-4,#widgetu2404.frm-subm-err-st #u2419-4,#widgetu2404.frm-subm-ok-st #u2414-4,#widgetu2674.frm-sub-st #u2685-4,#widgetu2674.frm-subm-err-st #u2676-4,#widgetu2674.frm-subm-ok-st #u2675-4,#widgetu2197.frm-sub-st #u2200-3,#widgetu2197.frm-subm-err-st #u2209-4,#widgetu2197.frm-subm-ok-st #u2198-4
    {
    	opacity: 1;
    	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    	filter: alpha(opacity=100);
    	min-height: 51px;
    }

    Сайты, который продают (с)
    Основной хардкор не влез.
    По ссылке вся прелесть бытия:
    http://www.nextpage.com.ua/css/index.css

    thereiter, 30 Марта 2015

    Комментарии (145)
  9. Java / Говнокод #15567

    +73

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    private boolean isAuthorized( ExecutionResult result )
    {
        Iterator<Long> accessCountIterator = result.columnAs( "accessCount" );
        while ( accessCountIterator.hasNext() )
        {
            if (accessCountIterator.next() > 0L)
            {
                return true;
            }
        }
        return false;
    }

    Человек написал книжку по програмированию :(
    isbn:1449356265/9781449356262

    wvxvw, 24 Марта 2014

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

    +106

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    $items = array('palto','noski','shapki');
        $colors = array('red','black','white');
        $materials = array('kozha','meh','aluminij');
    
        foreach($items as $item) {
          foreach($colors as $color) {
            foreach($materials as $material) {
              echo $item.'-'.$color.'-'.$material;
              echo '</br>';
            }
          }
        }

    Задача:
    Группа 1.
    Пальто, Шапки, Носки
    Группа 2.
    Красный, Синий, Зеленый
    Группа 3.
    Мех, Кожа

    Необходимы комбинации следующего вида, пример:
    1) Пальто - красный - мех
    2) Пальто - красный - кожа
    3) Пальто - синий - мех
    ....
    N) Носки - зеленый - кожа

    При том условии, что группа занимает только свое место в порядке. Т.е. пальто не может быть 2-ым или 3-им словом в комбинации.

    Vasiliy, 15 Июля 2013

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

    +17

    1. 1
    2. 2
    3. 3
    4. 4
    int a=0; 
    while (a<=1 && a>=0) { 
      a--; 
    }

    Я даже хз, что тут автор делает...

    kostoprav, 19 Июня 2013

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