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

    −132

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    public var view:LevelView;
    ...
    public function removeListeners():void {
        var view:LevelView = this.view;
        ...
    }

    Коллега говорит - бестпрактис. Я говорю - заебали строчки плодить.

    Запостил: kyzi007, 10 Июня 2013

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

    • И еще - если внизу простыня то подсветка говорит что переменная локальная а она плять класса и об этом надо помнить.
      Ответить
    • А что коллега практикует? Мне как-то тяжело представить зачем это вообще делать. Или он думает, что обращение к контексту класса будет дольше обращения к контексту функции? Ну, хотя, такое может быть, если класс динамический, но все равно разницы там будет совсем не много... ну не для кода, который какие-то кнопочки рисует.
      Ответить
      • Ну типа хорошая практика кешировать все переменные класса в начале метода. Практикует - питон, но раньше на флеше писал, именно это. Чем еще игрался не знаю.
        В производительности толку нету да. А вообще у нас много "оптимизаций" умозрительных которые я выпиливаю из-за их сложности и багов в них, которые уже те кто пришли позже наделали, и которые как бы эту экономию сшибают на корню.
        Ответить
        • Кнут говорил "предварительная оптимизация - зло" Может коллеге дать почитать этого автора. Он плохого не пишет.
          Ответить
          • Ну я не думаю что он его не читал. Да и умничка он, более чем, но заносит в сферичность которую суппортить потом тяжело. Из неприятных моментов - его либы принципиально не делают проверку на корректность данных. Два случайных вызова подряд типа obj.enabled = true, obj.enabled = true могут вызвать неведомые баги, например obj.enabled станет false.
            Ответить
    • * g o a t s e x * g o a t s e x * g o a t s e x *
      g                                               g  
      o /     \             \            /    \       o
      a|       |             \          |      |      a
      t|       `.             |         |       :     t
      s`        |             |        \|       |     s
      e \       | /       /  \\\   --__ \\       :    e
      x  \      \/   _--~~          ~--__| \     |    x  
      *   \      \_-~                    ~-_\    |    *
      g    \_     \        _.--------.______\|   |    g
      o      \     \______// _ ___ _ (_(__>  \   |    o
      a       \   .  C ___)  ______ (_(____>  |  /    a
      t       /\ |   C ____)/      \ (_____>  |_/     t
      s      / /\|   C_____)       |  (___>   /  \    s
      e     |   (   _C_____)\______/  // _/ /     \   e
      x     |    \  |__   \\_________// (__/       |  x
      *    | \    \____)   `----   --'             |  *
      g    |  \_          ___\       /_          _/ | g
      o   |              /    |     |  \            | o
      a   |             |    /       \  \           | a
      t   |          / /    |         |  \           |t
      s   |         / /      \__/\___/    |          |s
      e  |           /        |    |       |         |e
      x  |          |         |    |       |         |x
      * g o a t s e x * g o a t s e x * g o a t s e x *
      Ответить

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