Concepts of Code Quality

527 Aufrufe

Veröffentlicht am

Code zu schreiben ist nicht besonders schwierig. Um guten Code zu schreiben braucht es dann schon etwas mehr. Aber erst, wenn man es schafft die hohe Qualität des eigenen Codes über die Laufzeit längerfristiger Projekte aufrecht zu erhalten und kontinuierlich zu dokumentieren, gewinnt man die Anerkennung und das Vertrauen seines Kunden. Diese DevSession zeigt Mittel und Wege auf, die eigene Codequalität langfristig messen, sicher zu stellen und durch die Messung sogar noch zu steigern.

Veröffentlicht in: Software
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
527
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
20
Aktionen
Geteilt
0
Downloads
5
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Concepts of Code Quality

  1. 1. Concepts of Code Quality Maximilian Berghoff Andreas Haberberger Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  2. 2. Quelle:http://xkcd.com/844/ Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  3. 3. Was ist CodeQuality? Alle Maßnahmen, die dazu führen, dass Code wartbar verständlich zugänglich erweiterbar austauschbar bleibt. Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  4. 4. Also Maßnahmen, die die Lebensdauer und damit den Wert des Codes erhöhen. Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  5. 5. 1. Qualität schaffen Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  6. 6. Source Code Management Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  7. 7. Linting Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  8. 8. Testing Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  9. 9. Unit Tests Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  10. 10. Wann läuft mein Unittest durch? Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  11. 11. Wann bekomme ich dann ein gutes Testergebnis? Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  12. 12. ...und wie schreibe ich “testbaren” Code? Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  13. 13. Test Driven Development Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  14. 14. Integration Tests Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  15. 15. e2e Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  16. 16. Verteilung Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  17. 17. Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  18. 18. Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  19. 19. Testen an der Domain Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  20. 20. Cucumber/Gherkin Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  21. 21. Ubiquitous Language Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  22. 22. Business Need: Edit users In order to have customer support an Admin want's to edit a user. Scenario: Edit user data on behalf of a customer Given a user with email "maximilian.berghoff@mayflower.de" When i change the username to "ElectricMaxxx" Then the user profile should display the username "ElectricMaxxx" Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  23. 23. Behavior Driven Development Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  24. 24. “Sauberen” Code schreiben Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Robert C. Martin: Clean Code. A Handbook of Agile Software Craftsmanship. Prentice Hall, Upper Saddle River NJ u. a. 2008
  25. 25. Agile Methoden Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  26. 26. 2. Qualität messen Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  27. 27. Indikatoren Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  28. 28. Code Metriken (objektive Qualitätsmaßstäbe) Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  29. 29. subjektive Qualitätsmaßstäbe Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  30. 30. Agile Methoden Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  31. 31. 3. Qualität sicherstellen Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  32. 32. Tools Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  33. 33. Metriken Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  34. 34. Metriken Scrutinizer Sonarqube Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  35. 35. Build Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  36. 36. Build Travis CI shippableTeamcity Jenkins Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Bamboo
  37. 37. Code Review Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  38. 38. Code Review Upsource Github Crucible Gerrit Code Review Gitlab Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Stash/Bitbucket
  39. 39. Verständlicher Code Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  40. 40. Deploy Workflow Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  41. 41. Agile Methoden Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  42. 42. Questions ? Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  43. 43. - Maximilian.Berghoff@mayflower.de - @ElectricMaxxx - https://github.com/ElectricMaxxx Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Kontakt - Andreas.Haberberger@mayflower.de - @A_Haberberger - https://github.com/ahaberberger
  44. 44. Developer Camp Würzburg 16.+17.09.2016 Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg https://developercamp.io/
  45. 45. - Slides: “The pyramid is a lie” - Blog: “Testen an der Domaine” Metrik: - Scrutinizer: https://scrutinizer-ci.com - Sonarqube: http://www.sonarqube.org/ Build: - Travis: https://travis-ci.org/ - Shippable: https://app.shippable.com/ - Teamcity: https://www.jetbrains.com/teamcity/ - Bamboo: https://de.atlassian.com/software/bamboo - Jenkins: https://jenkins.io/ Code Review - Crucible: https://de.atlassian.com/software/crucible - Upsource: https://www.jetbrains.com/upsource/ - Github: Github - Gitlab: https://about.gitlab.com/ - Gerit: https://www.gerritcodereview.com/ Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Links und Quellen
  46. 46. Thank You Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg

×