Ankündigung

Einklappen
Keine Ankündigung bisher.

Sinnloser Code

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Sinnloser Code

    Gerade allen ernstes folgenden Code gefunden, den ein Dienstleister in einem alten System von nem Kunden eingepflegt hat:

    PHP-Code:
        <script type=”text/javascript”>

        
    document.write(<noscript></noscript>);

        
    </script> 
    ...was soll man dazu sagen

  • #2
    Muahahaha da hab ich auch einen, wenn man das hier um stinkenden code erweitern darf...

    PHP-Code:
    public function load($extra false$moreextra false$moremoreextra false$moremoremoreextra false$moremoremoremoreextra false$moremoremoremoremoreextra false$moremoremoremoremoremoreextra false$moremoremoremoremoremoremoreextra false) {
        
    $loadmethod "load" $this->objecttype;
        
    $this->data $this->db->$loadmethod($this->id$extra$moreextra$moremoreextra$moremoremoreextra$moremoremoremoreextra$moremoremoremoremoreextra$moremoremoremoremoremoreextra$moremoremoremoremoremoremoreextra);
      } 
    Das ist das Mutterobjekt/oder auch Mutterschiff für ein Modul, das ich vor Urzeiten mal geerbt hab..

    Kommentar


    • #3
      Grins...ich liebe solche Varibalennamen $moremoremoremoremoremoremoreextra - geiler Code

      Edit:
      Das ist das Mutterobjekt/oder auch Mutterschiff für ein Modul, das ich vor Urzeiten mal geerbt hab..
      Na happy Birthady

      Kommentar


      • #4
        Naja, derjenige hat das eiskalt durchgezogen - auch ne Art von "Interface"

        Kommentar


        • #5
          ...bei den ganzen Extras war das bestimmt ein Hammer Tool

          Kommentar


          • #6
            Nur wegen solchem Code gibt es doch diese Seite: DailyWTF

            Kommentar


            • #7
              Nur wegen solchem Code gibt es doch diese Seite: DailyWTF
              ...kannte ich nicht, aber nice...lol...

              Kommentar


              • #8
                Es geht auch einfacher, hat mein Kollege mal produziert:

                PHP-Code:
                if ( $var != ) {
                  
                $var 0;

                Kommentar


                • #9
                  Neulich in einem übernommenen Projekt gefunden:
                  PHP-Code:
                  while (true) {
                      break;

                  PHP-Code:
                  try {
                      
                  $this->parse();
                  } catch(\
                  Exception $e) {
                      throw 
                  $e;

                  /edit: Da wurde keine einzige Zeile ausgelassen!

                  Kommentar


                  • #10
                    Zitat von Asterixus Beitrag anzeigen
                    PHP-Code:
                    try {
                        
                    $this->parse();
                    } catch(\
                    Exception $e) {
                        throw 
                    $e;

                    /edit: Da wurde keine einzige Zeile ausgelassen!
                    Macht das nicht sogar in soweit Sinn, um Datei und Zeile mit reinzubringen?
                    Schreibt man mehrere derartige Blöcke hintereinander kann man wenigstens unterscheiden, welcher fehlgeschlagen ist (wenn z.B. alle die gleiche Methode aufrufen und somit die gleiche Exception werfen würden).

                    Kommentar


                    • #11
                      Ähm... nö. Wozu gibt es Stack Trace?

                      Kommentar


                      • #12
                        Naja, kommt darauf an, welche Zeilenangabe du haben willst. Ich würde eher vorziehen, die Zeile der ursprünglichen Exception zu haben. In einem catch-Block würde ich eh nicht noch einmal dieselbe werfen. Das mag vielleicht unter gewissen Umständen ein Design-Pattern sein, aber ich finde es eher verwirrend. Der catch-Block ist zum Abfangen von Exceptions da, d.h. dass hier Maßnahmen ergriffen werden wie z.B. Log-Einträge, Ausgabe vernünftiger Fehlermeldungen oder eben Weiterführung des normalen Programmflusses. Sollte das Werfen einer Exception hier nötig sein, würde ich eher eine andere Exception vorziehen, um das Debuggen zu erleichtern.

                        Kommentar


                        • #13
                          Geht man von der "Was du wirfst solltest du auch Fangen"-Devise aus, ist es absurd in einem catch() eine Exception zu werfen, es sei denn du willst überliegende try's als Injektionsebene nutzen und dort Fehlerhandlingtechnisch weiter machen. Aber das das noch irgendwo nach 50-100 "Redirects" wartbar bleibt, vermute ich waage: ist zu bezweifeln.

                          Kommentar


                          • #14
                            Naja, so ganz absurd ist es nicht. Man kann ja durchaus versuchen, eine Fehlerbehandlung zu machen. Nicht jede Exception muss ja gleich die gesamte Anwendung abbrechen.
                            Kann der Fehler nicht behandelt werden, so wirft man erneut eine Exception. Aber sinnvollerweise nicht dieselbe, sondern eher eine CouldntHandle-Exception oder so.

                            Kommentar


                            • #15
                              Seit PHP 5.3 wird das werfen von Exceptions in catch-Blöcken durch den $previous Parameter sogar explizit unterstützt. Typische Anwendung z.B. in Datenbank-Mappern: Das Wrappen von PDO-Exceptions in eigener Exception mit zusätzlichen Informationen.

                              "Was du wirfst solltest du auch Fangen" - sehe ich nicht so, es sollte nur bekannt gemacht werden, was für Exceptions geworfen werden können und da macht eine Vereinheitlichung natürlich Sinn. Es sei denn, du meintest mit "du" gar nicht eine Komponente in sich. Ein guter Grundsatz wäre "Was geworfen wird, solltest du auch fangen" - und zwar möglichst schon eine Ebene höher und nicht erst am unteren Ende des Call Stacks.

                              Kommentar

                              Lädt...
                              X