Eclipse HandsOn Workshop
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Eclipse HandsOn Workshop

  • 4,123 views
Uploaded on

Was Java-Entwickler schon lange nutzen und nicht mehr missen wollen, findet immer...

Was Java-Entwickler schon lange nutzen und nicht mehr missen wollen, findet immer
mehr, wenn auch skeptischen, Zuspruch in der PHP Entwicklergemeinde. Integrierte
Enticklungsumgebungen (IDEs), wie Eclipse und Netbeans, werden immer beliebter in der
PHP Szene. Dies sind nicht zuletzt die hervorragenden Vorteile, wie eine automatische
Codevervollständigung oder ein Vererbungsbaum, die eine IDE mit sich bringt, schuld.

Jedoch, es ist nicht alles Gold, was glänzt.
Wenn man sich dazu entschlieflt eine IDE zu nutzen, stellt man schnell fest, dass auch
diese so ihre Eigenheiten hat, auf die man sich einstellen muss.

Dieser Workshop wird Ihnen den Um- und Einstieg in die qualifizierte und effektive
Nutzung integrierter Entwicklungssysteme nahe bringen.
Am Beispiel der Eclipse IDE für PHP Entwicklung (Eclipse PDT 2.0), werden Ihnen der
grundsätzliche Aufbau und Funktionsweisen erklärt. Darüberhinaus zeigt der Workshop,
die Installation, Konfiguration und die Erweiterungsmöglichkeiten der Eclipse IDE.
Im Detail werden Ihnen die Integration von phpDokumentor und xDebug in die
Entwicklungsumgebung gezeigt.
Das Ziel dieses Workshops ist es, Sie fit für Ihre tägliche Arbeit zu machen, deshalb
wird Ihnen herzlich angeraten ihren Laptop mit zubringen, um bereitgestellte Übungen
nachvollziehen und durchführen zu können. Um zeitraubenden Installationen vorzubeugen
wird Ihnen ein Ubuntu in Form eines VMware-oder Virtualbox-Images bereitgelegt.
Teilnehmer mit bestehender Linux-Installation und entsprechenden Rechten können ihr
System während des Workshops direkt für den täglichen Gebrauch einrichten.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
4,123
On Slideshare
4,106
From Embeds
17
Number of Embeds
3

Actions

Shares
Downloads
29
Comments
0
Likes
1

Embeds 17

http://www.slideshare.net 15
http://www.insidephp.com 1
http://10.150.200.76 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Workshop Hands on Eclipse PDT 2.x Bastian Feder IPC 2009 papaya Software GmbH 15.11.2009
  • 2. Me, myself & I  Application developer  PHP since 2001  @papaya since 01.2008  OpenSource addict
  • 3. Who are you?
  • 4. Installation  Download latest revision from Eclipse website (http://www.eclipse.org/pdt/downloads) ▹ All in one (recommended): provides everything you need to run PDT ▹ PDT Feature / Update Manager: extends an existing Eclipse, but all dependencies PDT relies on needs to be installed first.  Extract archive  Copy to favorized location (e.g. /usr/local/bin/ or another location in your application path)
  • 5. Installation (II) ● Java Runtime Environment – Linux: sun-java6-jre from multiverse repository ● Switch off any kind of indexer and/or crawler – Virus scanner – Spotlight (MacOsX) – GnomeDo / KRunner (Linux) – Windows Indexing Service – ...
  • 6. Start the engines ● Set current language – System > Systemverwaltung > Sprachunterstützung ● open Anwendungen > Zubehör > Terminal #> cd IPC09_Workshop ¶ #> sudo chmod -R ubuntu:ubuntu workspace ¶ #> ./bin/eclipse/eclipse ¶
  • 7. Configuration HandsOn
  • 8. Tips and Tricks (Configuration)  Heap space (memory allocated by JRE) size depends on system memory capacity ▹ Xms, Xmx ▹ XXMaxPermSize, XXPermSize  Eclipse PDT settings ▹ validation / build settings ▹ disable automatic updates
  • 9. Look and feel HandsOn
  • 10. Perspectives & Views  Perspective (Window > Open Perspektive) ▹ Arrangement of Views: PHP Perspektive contains e.g. 'PHP Explorer', 'Outline' and 'Project Outline'  Views or Tabs (Window > Show View) ▹ Viewport providing specific information and/or functionality
  • 11. Working Sets Group elements for display in views or for operations on a set of elements.
  • 12. Pause Until 14:45hrs
  • 13. Working with Eclipse  Projects  Templates  Code completion  ...
  • 14. Projects  Organizational untis  Customizable configuration  PHP include path ▹ Validation  Build rules ▹ included resources ▹ excluded resources
  • 15. Templates  Contextual predefined code snippets  Configure at Preferences > PHP > Templates
  • 16. File templates  Create new files with predefined structures  Easy to create or adapt
  • 17. Code templates  Activation key: <CTRL> + space  Code templates ▹ Eases typing of complex code structures (e.g. switch – statement) ▹ Minimize errors switch ($action) { ▹ Act like a form case 'read': ; break; default: ; break; }
  • 18. Code templates (II)  Capable of code completion  Set cursor positioning (${cursor}, ${})  Dynamic content by use of variables ▹ ${class} switch (${dollar}${variable}) { case ${value}: ▹ ${function} ${cursor}; ▹ ${variable} break; ▹ ${value} default: ; break; }
  • 19. Pause Until 16:00hrs
  • 20. External Tools Framework  Enables Eclipse to run ,stand-alone' applications  Two broad classes of external tools are available: ▹ Ant build files ▹ Everything else
  • 21. Subversive HandsOn
  • 22. Subversive (installation)  Eclipse update site http://download.eclipse.org/technology/subversive/0.7/update-site/
  • 23. Subversion (client configuration)  Set „auto-properties“ ▹ WinXp: C:Dokumente und Einstellungen<USER>AnwendungsdatenSubversionconfig ▹ MacOs / Linux: ~/.subversion/config [miscellany] global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store .project .cache .settings enable-auto-props = yes [auto-props] *.js = svn:eol-style=LF;svn:keywords=Id LastChangedDate LastChangedRevision URL *.css = svn:eol-style=LF;svn:keywords=Id LastChangedDate LastChangedRevision URL *.php = svn:eol-style=LF;svn:keywords=Id LastChangedDate LastChangedRevision URL *.html = svn:eol-style=LF;svn:mime-type=text/html;svn:keywords=LastChangedDate LastChangedRevision URL *.htm = svn:eol-style=LF;svn:mime-type=text/html;svn:keywords=LastChangedDate LastChangedRevision URL *.xsl = svn:eol-style=LF *.xml = svn:eol-style=LF *.xsd = svn:eol-style=LF
  • 24. Plugins  Subclipse managing SVN repositories from inside Eclipse  JSEclipse Provides additional features supporting JavaScript  Data Tools Platform managing databases from inside Eclipse
  • 25. xDebug  Debugging for PHP by Derick Rethans (http://www.xdebug.org)  Provides profiling, tracing, code coverage, …  Cross platform
  • 26. xDebug configuration  Add to php.ini (e.g. on Mac) [XDebug] ;; Only Zend OR (!) XDebug zend_extension="/Applications/xampp/xamppfiles/lib/php/php5/extensions/no-debug-non-zts-20060613/xdebug.so" xdebug.remote_enable=true xdebug.remote_host=127.0.0.1 ;if debugging on remote server, put client IP here xdebug.remote_port=9000 xdebug.remote_handler=dbgp ;; profiler xdebug.profiler_enable=Off xdebug.profiler_enable_trigger=On xdebug.profiler_output_dir=/data_lokal/temp/xdebug/profiling  or .htaccess - file #-------------------------------# # xDebug section # #-------------------------------# php_value xdebug.remote_enable 1 php_value xdebug.remote_handler bdgp php_value xdebug.remote_host 127.0.0.1 ;if debugging on remote server, put client IP here ;; php_value xdebug.allowed_clients <client IP address> php_value xdebug.remote_port 9000 # profiler php_value xdebug.profiler_enable_trigger 1 php_value xdebug.profiler_enable 0 php_value xdebug.profiler_output_dir "/data_lokal/temp/xdebug/profiling"
  • 27. xDebug (III)  Debug dialog
  • 28. xDebug (IV)  Configure PDT to talk to xDebug
  • 29. xDebug (IV)  Configure the 'Server' handling the debugging session
  • 30. Questions? Further questions? Ask me at: php@bastian-feder.de
  • 31. Contact'n Rate  Contact ▹ Blog: http://bastian-feder.de ▹ Email: php@bastian-feder.de  Rate the workshop @ http://joind.in/talk/view/1067
  • 32. References  Eclipse PDT (http://www.eclipse.org/pdt)  Eclipse plugins ▹ Subversive (http://subclipse.tigris.org) ▹ JSEclipse (http://www.interaktonline.com/products/eclipse/jseclipse/overview)  xDebug (http://www.xdebug.org)  PhpDocumentor @ pear.php.net (http://pear.php.net/package/PhpDocumentor/docs/1.4.2)  SVN keyword substitution (http://svnbook.red-bean.com/en/1.4/svn-book.html#svn.advanced.props.special.keywords)
  • 33. License  This set of slides and the source code included in the download package is licensed under the Creative Commons Attribution- Noncommercial-Share Alike 2.0 Generic License http://creativecommons.org/licenses/by-nc-sa/2.0/deed.en