jfs 2011 - top 10 tools & methoden - baumgartner, oehmichen
DESCRIPTION
Slides zum Vortrag von Patrick Baumgartner und Odilo Oehmichen am Java Forum Stuttgart (07.Juli 2011)TRANSCRIPT
![Page 1: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/1.jpg)
Die Top 10 der Tools & Methoden für mehr Spaß beim Entwickeln
Java User Forum - Stuttgart
Patrick Baumgartner – Senior Software Consultant Odilo Oehmichen – Senior Software Consultant 07. Juli 2011
![Page 2: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/2.jpg)
2
Speaker Profiles
§ Patrick Baumgartner § Senior Software Consultant | Partner § Spring Framework, OSGi & agile Methoden § Co-Autor von „OSGi für Praktiker“ (Hanser)
§ Odilo Oehmichen § Senior Software Consultant | Partner § mehr als 10 Jahre Erfahrung im Java-Umfeld § Spring, Spring MVC, Webflow, Security, etc.
§ Swiftmind GmbH (http://www.swiftmind.com) § Enterprise Java, Spring & OSGi Consulting § Spring & OSGi Workshops/Trainings
![Page 3: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/3.jpg)
3
Das kennen wir alle...
§ Jeder von uns...
§ ... wird ständig in seinem Arbeitsfluss unterbrochen
§ ... muss den Code seiner Kollegen weiterentwickeln
§ ... hat immer wiederkehrende zeitraubende Tasks
§ raubt den Spaß am Entwickeln
![Page 4: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/4.jpg)
4
Agenda
§ Unsere 10 Lieblingsmittelchen gegen
Procrastination
Code Smells
Repetitive Tasks
Deadly Dullness
§ Q&A / Welches sind Eure Lieblingstool?
![Page 5: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/5.jpg)
Your Daily Comic Strip
![Page 6: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/6.jpg)
6
Geek and Poke
![Page 7: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/7.jpg)
Nasa - Earth Observatory
Kali-Düngerwerk Lop Nur, Xinjiang, China
![Page 8: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/8.jpg)
Rapid Application Development
![Page 9: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/9.jpg)
9
Projekt Setup
§ Projekt Struktur schnell erzeugen
§ Persistenzlayer konfigurieren
§ Webtechnologie integrieren
§ Managen von Dependencies und Repositories
§ Scaffolding Applikationen bauen
![Page 10: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/10.jpg)
10
Spring Roo Demo
![Page 11: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/11.jpg)
Clean Code
![Page 12: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/12.jpg)
12
Clean Code
§ Software Craftmanship
§ geprägt von Uncle Bob (Robert C. Martin)
§ Code Smells § Klassen-, Methoden-, Variablennamen § Methodengrösse § Comments § Strong cohesion -> Single Responsibility § …
![Page 13: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/13.jpg)
13
Projekt Lombok
§ Java Library – lombok.jar
§ Reduce Boilerplate Code
§ Annotationsbasiert
@Getter, @Setter, @ToString, @Data,...
![Page 14: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/14.jpg)
14
Projekt Lombok
![Page 15: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/15.jpg)
15
Projekt Lombok
§ Benötigt Java ≥ 6
§ Java Agents hooken in Compile Prozess
javac –cp lombok.jar Person.java
§ Eclipse, netbeans, maven Plugins
§ Andere Tools: PMD, findbugs, checkstyle, Simian
![Page 16: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/16.jpg)
Redeploy Hell
![Page 17: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/17.jpg)
17
Redeploy Hell
§ Problem § Code geschrieben -> Build -> Deploy auf Server § Über 15 % der Entwicklungszeit ist Warten auf
Redeploy § Frißt Nerven, Zeit und Geld
§ Lösungen § Funktionalitäten ausgliedern § Abhängigkeiten zu Laufzeit-Umgebungen reduzieren § Unittests / Applikation § Tools
§ Debugger § JRebel
![Page 18: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/18.jpg)
18
JRebel
§ Integriert sich in JVM § Richtiges Hotdeployment
§ Hinzufügen von Methoden § Ändern von Methodensignaturen § Konfigfile Änderung (Spring, Hibernate, JSF, Wicket,…)
§ Verbindet sich direkt mit IDE-Workspace § Unterstützt alle gängigen Appserver
§ Nachteil: Kommerziell
![Page 19: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/19.jpg)
Open Source Libraries
![Page 20: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/20.jpg)
20
Don't re-invent the wheel
§ Einsatz von Open Source Libraries im Projekt § Bessere Applikations-Architektur § Source Code von der Community benutzt § gut (Unit-)getestet § Schnelleres Entwickeln mit kleineren Team § Fokussierung auf die Businesslogik
§ Libraries § Apache Commons § Guava § FluentJava § Spring
![Page 21: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/21.jpg)
21
Apache Commons – Lang
§ Verschiedene String Operationen
§ Erwartete Resultate
![Page 22: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/22.jpg)
22
Apache Commons – CLI
§ Command Line Programm mit Option „-h“
§ Programmausgabe
![Page 23: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/23.jpg)
23
Apache Commons – Email
§ Beispiel Email senden über Gmail
![Page 24: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/24.jpg)
24
Apache Commons
Attributes, BeanUtils, Betwixt, Chain, CLI, Codec,
Collections, Compress, Configuration, Daemon,
DBCP, DbUtils, Digester, Discovery, EL, Email, Exec,
FileUpload, IO, JCI, Jelly, Jexl, JXPath, Lang,
Launcher, Logging, Math, Modeler, Net, Pool,
Primitives, Proxy, Sanselan, SCXML, Transaction,
Validator, VFS
![Page 25: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/25.jpg)
Get your Work Done!
![Page 26: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/26.jpg)
26
Pomodoro Technique
(c) Staffan Nöteberg - Pomodoro Technique Illustrated
!!
!"#$%&'()*+,&-)#+.)+&/01&2334536564&
"#$!%&'&(&)&!"$*#+,-.$"#$!%&'&(&)&!"$*#+,-.$!! !!/!!!/!!!0001234554++&3$6$)712$!80001234554++&3$6$)712$!899:;<=:;<=!!
!"#$%&'&(&)&$!#*"+,-.#$
![Page 27: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/27.jpg)
27
Pomodoro Technique
§ Ergebnisse § Lernen Aktivitäten planen & schätzen § Aufzeichnen & verbessern der Aktivitäten § Störungen vermindern & vermeiden
§ Tools § Pomodoro (Eieruhr) § Focus Buster
![Page 28: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/28.jpg)
Shortcuts
28
![Page 29: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/29.jpg)
29
Shortcuts
§ Problem § Mouse Junkies § Umgreifen frisst Zeit § Produktivität sinkt § Shortcuts schwer lernbar
![Page 30: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/30.jpg)
30
Shortcuts
§ Lösungen § Eclipse Mousefeed-Plugin zeigt Shortcuts auf
§ Save-Actions räumt Code auf § Cheatsheets (für jegliche Tools)
![Page 31: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/31.jpg)
Continuous Integration
![Page 32: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/32.jpg)
32
Continuous Integration
Phyllis
![Page 33: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/33.jpg)
33
Jenkins
§ Alles was es braucht ist Java § Gehe zu http://jenkins-ci.org § Download War-File § Command-Line java -jar jenkins.war
§ Plugin-Mechanismus § Chuck-Norris § Lava Lampe § ...
![Page 34: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/34.jpg)
34
Continuous Integration
Agnes
![Page 35: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/35.jpg)
35
CI Game
§ „You broke the build“ § Einzahlung in Build-Kasse § „<...> Developer of the week“ § ...
§ CI Game von Clint Shank § Reward-System § Jenkins-Plugin verfügbar
![Page 36: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/36.jpg)
Unit Testing
![Page 37: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/37.jpg)
37
Unit Testing
§ TDGotchi § Gotchi füttern mit Unittest-Results
§ Infinitest § Continuous Test Runner for Java
![Page 38: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/38.jpg)
Keep up-to-date
![Page 39: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/39.jpg)
39
Keep up-to-date
§ Es tut sich viel in der Java-Welt § Java 7, Cloud Computing, OSGi, ....
§ Besuche... § Konferenzen § Hackathons / Hackergarten § Java User Groups
§ Tausch dich aus § E-Learning
§ Blogs § Parleys (Offline-Client) § InfoQ
![Page 40: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/40.jpg)
Zusammenfassung
![Page 41: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/41.jpg)
41
Zusammenfassung
§ Your Daily Commic Strip § Rapid Application Development § Clean Code § Redeploy Hell § Open Source Libraries § Get your Work Done! § Shortcuts § Continuous Integration – Jenkins § Unit Testing § Keep up-to-date
![Page 42: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/42.jpg)
42
Weitere Resourcen
§ Swiftmind GmbH § http://www.swiftmind.com § http://www.swiftmind.com/blog
§ Memonic § http://bit.ly/swiftmind-jfs
![Page 43: JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen](https://reader033.vdokument.com/reader033/viewer/2022052905/5586045ad8b42a3d6b8b46e2/html5/thumbnails/43.jpg)
43
Q & A
Patrick Baumgartner, Odilo Oehmichen patrick.baumgartner [at] swiftmind [dot] com odilo.oehmichen [at] swiftmind [dot] com http://www.swiftmind.com http://www.twitter.com/swiftmind