molily: Ästhetik und Klarheit von Code

Beitrag lesen

Da kommt natürlich die Folgefrage, muss jeder code so geschrieben sein dass ihn auch der letzte Idiot versteht, oder ist es wichtiger dass der Algoritmus effektiv ist und die software um Magnituden schneller ist und genauso viel weniger Resourcen verbraucht?

Zumindest im JavaScript-Bereich sind wir so weit, dass wir uns unperformanten Code leisten – und in den häufigsten Fällen auch leisten können. Dass ein unoptimiertes jQuery-Script 20ms läuft, obwohl es hochoptimiert nur 10ms bräuchte, ist i.d.R. egal, wenn das Problem dafür verständlich in drei Codezeilen ausgedrückt wird. Erst wenn ich das Script tausendmal hintereinander ausführen muss, habe ich ein Problem – allerdings wahrscheinlich ein konzeptionelles bei der DOM-Manipulation.

Vor ein paar Jahren war es vielleicht noch so, dass Syntactic Sugar die Performance signifikant gebremst hat. Heute hängt die Performance von JavaScript-Anwendungen von anderen Faktoren ab: Blocking I/O, Reflow/Repaint, Animationen und Effekte, Multimedia-Einbettung, Speicherverbrauch, Flexibilität gegenüber Mobilgeräten und Touch-Interfaces.

Auch im Ruby-Bereich nimmt man extensives Metaprogramming auf sich, um den Programmierern DSLs bereitzustellen, mit denen sie Aufgaben und Sachverhalte konzis notieren können. Performanter ließe sich das sicher lösen, aufs Ganze gesehen geht dabei aber nicht viel Performance verloren. Unperformanten Code zu skalieren ist immer noch weitaus billiger als überbordenden, unlesbaren Code zu entwickeln und zu pflegen.

Mathias

3 88

Ästhetik und Klarheit von Code

Tim Tepaße
  • programmiertechnik
  1. 2
    asdf
    1. 0
      Jeena Paradies
      1. 0
        asdf
      2. 2
        molily
        1. 0
          Jeena Paradies
      3. 2
        Stefanie M.
    2. 0
      Tim Tepaße
      1. 1
        dedlfix
  2. 0
    Jeena Paradies
    1. 2
      Tim Tepaße
      1. 2
        Jeena Paradies
  3. 0
    Der Martin
    1. 1
      Jeena Paradies
    2. 1
      Tim Tepaße
      1. 0
        Der Martin
        1. 0
          Jeena Paradies
          1. 0
            Der Martin
            1. 3
              DaBear
              1. 0
                Der Martin
                1. 1
                  DaBear
                  1. 0
                    Der Martin
                    1. 1
                      Jeena Paradies
                      1. 4
                        Christian Kruse
                        1. 0
                          Christian Seiler
                          1. 0
                            Christian Kruse
                          2. 0
                            molily
                2. 0
                  Tom
            2. 2
              Tim Tepaße
              1. 0
                Der Martin
                1. 1
                  dedlfix
                  1. 0
                    Tom
                    1. 1
                      Jeena Paradies
                      1. 0
                        Tom
                        1. 0
                          Tom
                          1. 4
                            Christian Kruse
                        2. 4
                          Kai345
                2. 3
                  Christian Seiler
                  1. 0
                    Tom
                    1. 0
                      Don P
                      • menschelei
                      1. 0

                        Currying

                        Tom
              2. 0
                Stefanie M.
                1. 0
                  Tom
                  1. 0
                    Tim Tepaße
                    1. 0
                      dedlfix
                    2. 1
                      Der Martin
                      1. 2
                        molily
                2. 1
                  molily
            3. 3
              molily
              1. 0
                Der Martin
                1. 0
                  dedlfix
                  1. 0
                    Tom
                    1. 5
                      molily
                      1. 0

                        Ein Nachruf

                        Christian Seiler
                        1. 0
                          Christian Kruse
                          1. 0
                            Tom
                        2. 0
                          Der Martin
                          1. 3
                            Christian Seiler
                            1. 0
                              Der Martin
                        3. 0

                          Der Unterschied zwischen Nachwuchsföderung und Arroganz

                          Tom
                          • menschelei
                          1. 0

                            Was ist aus dem einstigen Nachwuchs geworden?

                            Tom
                          2. 0
                            Jeena Paradies
                        4. 1
                          dedlfix
                      2. 0
                        Tom
                        1. 0
                          Tim Tepaße
                          1. 0
                            Der Martin
                            1. 5
                              molily
                              1. 1
                                dedlfix
                                1. 3
                                  molily
                                  1. 3
                                    Don P
                          2. 0
                            Tom
                            1. 0
                              Tim Tepaße
                              1. 0
                                dedlfix
        2. 0
          Christian Seiler
        3. 0
          Don P
    3. 0
      Tom
      1. 0
        Der Martin
    4. 0
      Don P
      1. 0
        Jeena Paradies
        1. 0
          Christian Seiler
          1. 0
            Christian Kruse
          2. 0
            molily
  4. 1
    molily
    1. 0
      Tim Tepaße
  5. 0
    reborn
  6. 0
    Buchtipp
  7. 0
    jobo
    1. 0
      jobo