logging in or signing up Beyond var dump Debugging in ZF IPC 2010 aSGuest48401 Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINT lite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 71 Category: Entertainment License: All Rights Reserved Like it (0) Dislike it (0) Added: June 10, 2010 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Jenseits von var_dump(): Debugging in ZF : Jenseits von var_dump(): Debugging in ZF Jan Burkl System Engineer Wer bin ich? : Wer bin ich? Jan Burkl jan.burkl@zend.com PHP Entwickler seit 2001 Projektarbeit Bei Zend seit 2006 System Engineer Zend Certified Engineer PHP 5 Zend Framework var_dump() is Evil : var_dump() is Evil “But I still need to know more!!” Do you do the var_dump()? : Do you do the var_dump()? Warum var_dump()? Eine Art des Debuggens so alt wie PHP selbst Schnell, einfach & man sieht was man braucht Es ist dabei in jeder Developers Toolbox Benötigt keine Nachforschung, Installation oder Zeit Why var_dump() is evil! : Why var_dump() is evil! var_dump() verändert die Applikation und/oder den Library Code, um eine bestimmte Situation zu debuggen Nicht “web friendly” (<pre> tags und die() Statements) Zend_Debug ist ein glorifiziertes var_dump() Zend_Debug::dump($var); // mehr Schreibarbeit, aber: Zend_Debug überprüft sapi und der Output wird mit htmlspecialchars gefiltert <pre> Tags um Output Label Rückgabewert Zend Debug ist keine Entschuldigung nicht in eine richtige Debugging Umgebung zu investieren 5 Insert->Header & Footer Why is var_dump() evil? (cont.) : Why is var_dump() evil? (cont.) Nicht entwicklerfreundlich: Es muss sich gemerkt werden, wo var_dump() eingesetzt wurde Evtl. sind mehrere var_dump() und die() Aufrufe notwendig, um ein Problem zu identifizieren Evtl. muss die Umgebung für jede Debug Iteration zurückgesetzt werden 6 Insert->Header & Footer Why is var_dump() evil? (cont.) : Why is var_dump() evil? (cont.) Interferenzen mit “normalem” Output “debugging data should not interfere with the content on your page” Kein echter Breakpoint Keine Runtime Introspektion der Umgebung Kein Kontext der “schlechten Situation” 7 Insert->Header & Footer Debugging Mit Zend Studio : Debugging Mit Zend Studio ZendDebugger (PHP extension) von zend.com Integriert in Zend Server (full oder CE), Binary Weitere Option ist Xdebug (Derick Rethans) Zend Studio (paid) & PDT (free) haben beide Debugging-Fähigkeiten Zend Studio Toolbar nutzen Alles gibt’s hier: http://www.zend.com/en/products/studio/downloads 8 Insert->Header & Footer Demo: Debugging mit Zend Studio : Demo: Debugging mit Zend Studio 9 Insert->Header & Footer ZF und Firebug (FirePHP) : ZF und Firebug (FirePHP) FirePHP ist eine Bridge von PHP zu Firebug Benötigt Firebug Nutzt die Zend_Wildfire Komponente in ZF Implementierungs Hooks in ZF: Zend_Log_Writer_Firebug Zend_Db_Profiler_Firebug Demo: ZF mit Firebug : Demo: ZF mit Firebug Wildfire Support via Zend_Log_Writer_Firebug & Zend_Db_Profiler_FirePHP 11 Insert->Header & Footer ZFDebug Toolbar (Scienta ZF Debug Bar) : ZFDebug Toolbar (Scienta ZF Debug Bar) 3rd Party Tool Entwickelt von Andreas Pankratz und Joakim Nygård http://zfdebug.googlecode.com In-page Toolbar Kontra: Wird Teil des Output Streams Pro: Nur ein Div-Layer am Ende der Seite Kann in jeder Umgebung eingesetzt werden, keine speziellen Tools notwendig Demo: ZFDebug Toolbar : Demo: ZFDebug Toolbar ZF’s Zend Monitor Logger : ZF’s Zend Monitor Logger Zend Montior Logger in ZF eingebaut Nur ein application.ini Schlüssel notwendig Zend Monitor ist Bestandteil von Zend Server (nur Full Version, nicht CE Version) 30 Tage Trial ZF Zend Monitor Logger : ZF Zend Monitor Logger Zend Studio & ZF : Zend Studio & ZF Wie nutzt man beides zusammen? Gute Breakpoints in ZF: Gute Stellen für Breakpoints in ZF: Bootstrap Methoden Plugin Broker Dispatcher Action Controller init-Methode & erste Zeile einer Action “Expression” View nutzen, um Umgebung zu verstehen Demo: Zend Studio Tipps/Tricks : Demo: Zend Studio Tipps/Tricks Danke schön! : Danke schön! jan@zend.com http://framework.zend.com/ You do not have the permission to view this presentation. In order to view it, please contact the author of the presentation.
Beyond var dump Debugging in ZF IPC 2010 aSGuest48401 Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINT lite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 71 Category: Entertainment License: All Rights Reserved Like it (0) Dislike it (0) Added: June 10, 2010 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Jenseits von var_dump(): Debugging in ZF : Jenseits von var_dump(): Debugging in ZF Jan Burkl System Engineer Wer bin ich? : Wer bin ich? Jan Burkl jan.burkl@zend.com PHP Entwickler seit 2001 Projektarbeit Bei Zend seit 2006 System Engineer Zend Certified Engineer PHP 5 Zend Framework var_dump() is Evil : var_dump() is Evil “But I still need to know more!!” Do you do the var_dump()? : Do you do the var_dump()? Warum var_dump()? Eine Art des Debuggens so alt wie PHP selbst Schnell, einfach & man sieht was man braucht Es ist dabei in jeder Developers Toolbox Benötigt keine Nachforschung, Installation oder Zeit Why var_dump() is evil! : Why var_dump() is evil! var_dump() verändert die Applikation und/oder den Library Code, um eine bestimmte Situation zu debuggen Nicht “web friendly” (<pre> tags und die() Statements) Zend_Debug ist ein glorifiziertes var_dump() Zend_Debug::dump($var); // mehr Schreibarbeit, aber: Zend_Debug überprüft sapi und der Output wird mit htmlspecialchars gefiltert <pre> Tags um Output Label Rückgabewert Zend Debug ist keine Entschuldigung nicht in eine richtige Debugging Umgebung zu investieren 5 Insert->Header & Footer Why is var_dump() evil? (cont.) : Why is var_dump() evil? (cont.) Nicht entwicklerfreundlich: Es muss sich gemerkt werden, wo var_dump() eingesetzt wurde Evtl. sind mehrere var_dump() und die() Aufrufe notwendig, um ein Problem zu identifizieren Evtl. muss die Umgebung für jede Debug Iteration zurückgesetzt werden 6 Insert->Header & Footer Why is var_dump() evil? (cont.) : Why is var_dump() evil? (cont.) Interferenzen mit “normalem” Output “debugging data should not interfere with the content on your page” Kein echter Breakpoint Keine Runtime Introspektion der Umgebung Kein Kontext der “schlechten Situation” 7 Insert->Header & Footer Debugging Mit Zend Studio : Debugging Mit Zend Studio ZendDebugger (PHP extension) von zend.com Integriert in Zend Server (full oder CE), Binary Weitere Option ist Xdebug (Derick Rethans) Zend Studio (paid) & PDT (free) haben beide Debugging-Fähigkeiten Zend Studio Toolbar nutzen Alles gibt’s hier: http://www.zend.com/en/products/studio/downloads 8 Insert->Header & Footer Demo: Debugging mit Zend Studio : Demo: Debugging mit Zend Studio 9 Insert->Header & Footer ZF und Firebug (FirePHP) : ZF und Firebug (FirePHP) FirePHP ist eine Bridge von PHP zu Firebug Benötigt Firebug Nutzt die Zend_Wildfire Komponente in ZF Implementierungs Hooks in ZF: Zend_Log_Writer_Firebug Zend_Db_Profiler_Firebug Demo: ZF mit Firebug : Demo: ZF mit Firebug Wildfire Support via Zend_Log_Writer_Firebug & Zend_Db_Profiler_FirePHP 11 Insert->Header & Footer ZFDebug Toolbar (Scienta ZF Debug Bar) : ZFDebug Toolbar (Scienta ZF Debug Bar) 3rd Party Tool Entwickelt von Andreas Pankratz und Joakim Nygård http://zfdebug.googlecode.com In-page Toolbar Kontra: Wird Teil des Output Streams Pro: Nur ein Div-Layer am Ende der Seite Kann in jeder Umgebung eingesetzt werden, keine speziellen Tools notwendig Demo: ZFDebug Toolbar : Demo: ZFDebug Toolbar ZF’s Zend Monitor Logger : ZF’s Zend Monitor Logger Zend Montior Logger in ZF eingebaut Nur ein application.ini Schlüssel notwendig Zend Monitor ist Bestandteil von Zend Server (nur Full Version, nicht CE Version) 30 Tage Trial ZF Zend Monitor Logger : ZF Zend Monitor Logger Zend Studio & ZF : Zend Studio & ZF Wie nutzt man beides zusammen? Gute Breakpoints in ZF: Gute Stellen für Breakpoints in ZF: Bootstrap Methoden Plugin Broker Dispatcher Action Controller init-Methode & erste Zeile einer Action “Expression” View nutzen, um Umgebung zu verstehen Demo: Zend Studio Tipps/Tricks : Demo: Zend Studio Tipps/Tricks Danke schön! : Danke schön! jan@zend.com http://framework.zend.com/