Winat live with JavaScript Patterns<br />By Pascal PrechtHannoverJS 08/11<br />
I am not a Guru!<br />
Gutes Software-Design<br />
„Kaum etwas ist so schnellen Veränderungen unterworfen wie Software.“<br />
„Software muss erweiterbar sein.“<br />
Patterns<br />
Was ist ein Pattern?<br />
Eine Lösung für ein häufig auftretendes Problem.<br />
...<br />Eine bewährte Vorgehensweise, eine nützliche Abstraktion und eine Vorlage für das Lösen ganzer Problem-Kategorien...
Welche Vorteile bieten Patterns?<br />
Vorteile von Patterns<br />Besserer Code / Vermeidung von Redundanzen<br />Abstraktion<br />Bessere Kommunikation im Team<...
Arten der Patterns<br />
Arten der Patterns<br />Design-Patterns 	// Entwurfsmuster<br />Coding-Patterns	// Spezifische Muster<br />Anti-Patterns	/...
JavaScript Patterns<br />
Das funktioniert.<br />
Aber Vorsicht!<br />
Hoisting<br />
Das Single-var-Pattern<br />
Vorteile des Single-var-Pattern<br />
Vorteile des Single-var-Pattern<br />Zentrale Deklaration/Initialisierung<br />Code ist leichter zu lesen<br />Vermeidung ...
The better way!<br />
Objekte und Literale<br />
Very bad!<br />
Achtung!<br />
Das Object-Literal-Pattern<br />
Vorteile des Object-Literal-Pattern<br />Weniger Code<br />Objects sind „nur“ Hashes<br />Keine Object-Constructor-Überras...
But I need a constructor!<br />
Sh*t! I forgot the new!<br />
Ohne new zeigt this auf das globale Objekt!<br />
Muster zum erzwingen von new<br />
Funktionen<br />
Das Callback-Pattern<br />
Immediate-Function-Pattern<br />
Vorteile des Immediate-Function-Pattern<br />
Vorteile des Immediate-Function-Pattern<br />Kapselung von Aufgaben<br />Keine globale Variabeln<br />Modulares Verhalten<...
Das Immediate-Object-Pattern<br />
Vorteile des Immediate-Object-Pattern<br />
Vorteile des Immediate-Object-Pattern<br />Globaler Namesraum wird frei gehalten<br />Modulares Verhalten<br />Private Hil...
Das Configuration-Object-Pattern<br />
Vorteile des Object-Configuration-Pattern<br />
Flexibilität.<br />
Thank you!<br />
Stay tuned!<br />Twitter: @PascalPrecht<br />Blog: HopelessArt.com<br />
Win At Live With JavaScript Patterns
Nächste SlideShare
Wird geladen in …5
×

Win At Live With JavaScript Patterns

1.083 Aufrufe

Veröffentlicht am

These are my slides from the first HannoverJS MeetUp about JavaScript Coding Patterns.

Veröffentlicht in: Technologie, Unterhaltung & Humor
0 Kommentare
1 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.083
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
124
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
1
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Win At Live With JavaScript Patterns

  1. 1. Winat live with JavaScript Patterns<br />By Pascal PrechtHannoverJS 08/11<br />
  2. 2. I am not a Guru!<br />
  3. 3.
  4. 4. Gutes Software-Design<br />
  5. 5. „Kaum etwas ist so schnellen Veränderungen unterworfen wie Software.“<br />
  6. 6. „Software muss erweiterbar sein.“<br />
  7. 7. Patterns<br />
  8. 8. Was ist ein Pattern?<br />
  9. 9. Eine Lösung für ein häufig auftretendes Problem.<br />
  10. 10. ...<br />Eine bewährte Vorgehensweise, eine nützliche Abstraktion und eine Vorlage für das Lösen ganzer Problem-Kategorien.<br />
  11. 11. Welche Vorteile bieten Patterns?<br />
  12. 12. Vorteile von Patterns<br />Besserer Code / Vermeidung von Redundanzen<br />Abstraktion<br />Bessere Kommunikation im Team<br />
  13. 13. Arten der Patterns<br />
  14. 14. Arten der Patterns<br />Design-Patterns // Entwurfsmuster<br />Coding-Patterns // Spezifische Muster<br />Anti-Patterns // „Negative Assoziation“<br />
  15. 15. JavaScript Patterns<br />
  16. 16.
  17. 17. Das funktioniert.<br />
  18. 18.
  19. 19. Aber Vorsicht!<br />
  20. 20.
  21. 21.
  22. 22.
  23. 23.
  24. 24. Hoisting<br />
  25. 25.
  26. 26.
  27. 27.
  28. 28. Das Single-var-Pattern<br />
  29. 29.
  30. 30. Vorteile des Single-var-Pattern<br />
  31. 31. Vorteile des Single-var-Pattern<br />Zentrale Deklaration/Initialisierung<br />Code ist leichter zu lesen<br />Vermeidung logischer Fehler<br />
  32. 32. The better way!<br />
  33. 33. Objekte und Literale<br />
  34. 34.
  35. 35. Very bad!<br />
  36. 36.
  37. 37. Achtung!<br />
  38. 38.
  39. 39.
  40. 40. Das Object-Literal-Pattern<br />
  41. 41.
  42. 42. Vorteile des Object-Literal-Pattern<br />Weniger Code<br />Objects sind „nur“ Hashes<br />Keine Object-Constructor-Überraschungen<br />
  43. 43. But I need a constructor!<br />
  44. 44.
  45. 45. Sh*t! I forgot the new!<br />
  46. 46. Ohne new zeigt this auf das globale Objekt!<br />
  47. 47.
  48. 48. Muster zum erzwingen von new<br />
  49. 49.
  50. 50. Funktionen<br />
  51. 51. Das Callback-Pattern<br />
  52. 52.
  53. 53.
  54. 54.
  55. 55.
  56. 56. Immediate-Function-Pattern<br />
  57. 57.
  58. 58.
  59. 59. Vorteile des Immediate-Function-Pattern<br />
  60. 60. Vorteile des Immediate-Function-Pattern<br />Kapselung von Aufgaben<br />Keine globale Variabeln<br />Modulares Verhalten<br />
  61. 61. Das Immediate-Object-Pattern<br />
  62. 62.
  63. 63. Vorteile des Immediate-Object-Pattern<br />
  64. 64. Vorteile des Immediate-Object-Pattern<br />Globaler Namesraum wird frei gehalten<br />Modulares Verhalten<br />Private Hilfs-Funktionen sind deutlich erkennbar<br />
  65. 65.
  66. 66.
  67. 67. Das Configuration-Object-Pattern<br />
  68. 68.
  69. 69.
  70. 70.
  71. 71. Vorteile des Object-Configuration-Pattern<br />
  72. 72. Flexibilität.<br />
  73. 73.
  74. 74.
  75. 75.
  76. 76. Thank you!<br />
  77. 77. Stay tuned!<br />Twitter: @PascalPrecht<br />Blog: HopelessArt.com<br />

×