Jawa / Говнокод #25697 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
super(
            new TkWithHeaders(
                new TkVersioned(
                    new TkMeasured(
                        new TkFlash(
                            new TkAppFallback(
                                new TkAppAuth(
                                    new TkForward(
                                        new TkFork(
                                            new FkHost(
                                                "relay.jare.io",
                                                new TkFallback(
                                                    new TkRelay(base),
                                                    req -> new Opt.Single<>(
                                                        new RsWithType(
                                                            new RsWithBody(
                                                                new RsWithStatus(req.code()),
                                                                new Sprintf(

Код вполне рабочего проекта

Запостил: Ray_Mints Ray_Mints, (Updated )

Комментарии (26) RSS

    • Это fluent interface наоборот. Так делали ещё во времена «Turbo Vision».

      В принципе, с помощью обёрток можно переделать «fluent interface наоборот» во «fluent interface».
      Ответить
    • Мне бы женщину - белую, белую
      Ну а впрочем какая разница
      Я прижал бы ее с силой к дереву
      И в задницу, в задницу, в задницу

      Владимир Маяковский
      Ответить
  • do
      do
        do
          do
            do
              do
                do
                  do
                    do
                      do
                        do
                          do
                            do
                              do
                                do
                                  do
                                    do
                                      do
                                        do
                                          do
                                            do
                                              do
                                                do
                                                  do
                                                    do
                                                      do
                                                        do
                                                          local hui = petux
                                                        end
                                                      end
                                                    end
                                                  end
                                                end
                                              end
                                            end
                                          end
                                        end
                                      end
                                    end
                                  end
                                end
                              end
                            end
                          end
                        end
                      end
                    end
                  end
                end
              end
            end
          end
        end
      end
    end
    Ответить
      • > И тоже Tk...

        Именно по «Tk» я и нагуглил этот говнокод. Запомнился почему-то.
        Ответить
  • procedure TTutorApp.InitMenuBar;
    var
      R: TRect;
    begin
      GetExtent(R);
      R.B.Y := R.A.Y + 1;
      MenuBar := New(PMenuBar, Init(R, NewMenu(
        NewSubMenu('~F~ile', hcNoContext, NewMenu(
          StdFileMenuItems(nil)),
        NewSubMenu('~E~dit', hcNoContext, NewMenu(
          StdEditMenuItems(
          NewLine(
          NewItem('~S~how clipboard', '', kbNoKey, cmClipShow, hcNoContext,
          nil)))),
        NewSubMenu('~O~rders', hcNoContext, NewMenu(
          NewItem('~N~ew', 'F9', kbF9, cmOrderNew, hcNoContext,
          NewItem('~S~ave', '', kbNoKey, cmOrderSave, hcNoContext,
          NewLine(
          NewItem('Next', 'PgDn', kbPgDn, cmOrderNext, hcNoContext,
          NewItem('Prev', 'PgUp', kbPgUp, cmOrderPrev, hcNoContext,
          nil)))))),
        NewSubMenu('O~p~tions', hcNoContext, NewMenu(
          NewItem('~T~oggle video', '', kbNoKey, cmOptionsVideo, hcNoContext,
          NewItem('~S~ave desktop', '', kbNoKey, cmOptionsSave, hcNoContext,
          NewItem('~L~oad desktop', '', kbNoKey, cmOptionsLoad, hcNoContext,
          nil)))),
        NewSubMenu('~W~indow', hcNoContext, NewMenu(
          NewItem('Orders', '', kbNoKey, cmOrderWin, hcNoContext,
          NewItem('Stock items', '', kbNoKey, cmStockWin, hcNoContext,
          NewItem('Suppliers', '', kbNoKey, cmSupplierWin, hcNoContext,
          NewLine(
          StdWindowMenuItems(nil)))))),
        NewSubMenu('~H~elp', hcNoContext, NewMenu(
          NewItem('~A~bout...', '', kbNoKey, cmAbout, hcNoContext,
          nil)),
        nil))))))
      )));
    end;
    Ответить
      • Декларативный — это когда он лежит в ресурсах (например, для «Windows» в RC-файле). А тут мы последовательно создаём кирпичики и приклеиваем их друг к другу.
        Ответить
        • Какое отношение расположение кода имеет к его декларативности?
          Ответить
          • RC (resource compiler) — чисто декларативный язык. На нём можно только перечислить ресурсы.

            А тут мы последовательно нанизываем один объект на другой. Можем даже клонировать объекты, чтобы использовать их позже. Можем в процессе сборки меню производить вычисления в чисто императивном стиле, производить побочные эффекты.
            Ответить
            • В 'J' гуй декларативный, но лежит всегда в том же исходнике в строковом литерале. Хотя описание формы можно положить в отдельный файл, там будет что-то типа:
              pc parentControl; pn "Заголовок";
              
              cc doPizdato button; cn "Сделать пиздато"
              А загрузить можно так:
              wd fread 'file'
              wd 'pshow'
              Правда я ни разу не видел чтоб так делали.
              Ответить
          • Хотя я, кажется, понимаю, о чём ты. Данный фрагмент внешне похож на декларативный, хотя и написан на императивном языке (тут вызовы конструкторов и методов, передача указателей).
            Ответить
      • тоже вспомнил турбовижен и всплакнул?
        Ответить

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

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8