Successfully reported this slideshow.

Phundament - IPC 2007 se

965 views

Published on

Web-Applikationen mit PRADO 3

Published in: Business
  • Be the first to comment

  • Be the first to like this

Phundament - IPC 2007 se

  1. 1. Phundament Webapplikationen mit PRADO 3
  2. 2. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Die Entwickler 2
  3. 3. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Die Entwickler Tobias Martin Kai Marc Michael Munk Schrodt Ziefle Mautz Wagner 2
  4. 4. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Übersicht • Einführung • Warum Phundament? • Was macht Phundament? • Features • PRADO 3 • Phundament • Bibliotheken 3
  5. 5. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Übersicht • Walk-through • Installation • Struktur- & Template-System • Konfiguration • Cells & Bricks • Themes 4
  6. 6. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Übersicht • Gimmicks • JavaScript Image Preloading • AJAX Callbacks & Effekte • Caching • Statisches HTML • Fragen & Diskussion 5
  7. 7. Einführung
  8. 8. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? 7
  9. 9. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? • Zur Lösung der alltäglichen Probleme von Web-Entwicklern 7
  10. 10. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? • Zur Lösung der alltäglichen Probleme von Web-Entwicklern • Aktuelle Technologien 7
  11. 11. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? • Zur Lösung der alltäglichen Probleme von Web-Entwicklern • Aktuelle Technologien • Schlanke Basis 7
  12. 12. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? • Zur Lösung der alltäglichen Probleme von Web-Entwicklern • Aktuelle Technologien • Schlanke Basis • Sehr modular 7
  13. 13. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? • Zur Lösung der alltäglichen Probleme von Web-Entwicklern • Aktuelle Technologien • Schlanke Basis • Sehr modular • Schnelle Entwicklung 7
  14. 14. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? • Zur Lösung der alltäglichen Probleme von Web-Entwicklern • Aktuelle Technologien • Schlanke Basis • Sehr modular • Schnelle Entwicklung • Perfekte Teamintegration 7
  15. 15. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? 8
  16. 16. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? • Etwa 150 Zeilen PHP-Applikations-Code 8
  17. 17. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? • Etwa 150 Zeilen PHP-Applikations-Code • 100% PRADO 3-Komponenten • Maximale Flexibilität • Hervorragende Wiederverwendbarkeit • Ereignis-basiert 8
  18. 18. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Warum phundament? • Etwa 150 Zeilen PHP-Applikations-Code • 100% PRADO 3-Komponenten • Maximale Flexibilität • Hervorragende Wiederverwendbarkeit • Ereignis-basiert • Open Source (MPL) 8
  19. 19. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Was macht phundament? PRADO Applikation / Projekt Phundament PHP 9
  20. 20. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Was macht phundament? PRADO Applikation / Projekt Phundament PHP 9
  21. 21. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Was macht phundament? PRADO Applikation / Projekt Phundament PHP 9
  22. 22. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Was macht phundament? PRADO Applikation / Projekt Phundament PHP 9
  23. 23. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Was macht phundament? PRADO Applikation / Projekt Phundament PHP 9
  24. 24. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Was macht phundament? PRADO Applikation / Projekt Phundament PHP 9
  25. 25. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Was macht phundament? PRADO Applikation / Projekt Phundament PHP 9
  26. 26. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Was macht phundament? • Baumstruktur der Website • PRADO Standard: Dateisystem • Phundament: Datenbank oder Dateisystem • Virtual Nodes 10
  27. 27. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Was macht phundament? • Frontend Layout & Design • Container (DIVs) • Cells • Widgets zur Darstellung von Inhalten • Bricks 11
  28. 28. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 MasterLayout Page Cells Bricks 12
  29. 29. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 MasterLayout Page Cells Bricks 12
  30. 30. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 MasterLayout Page Cells Bricks 12
  31. 31. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 MasterLayout Page Cells Bricks 12
  32. 32. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 MasterLayout Page Cells Bricks 12
  33. 33. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 MasterLayout Page Cells Bricks 12
  34. 34. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 MasterLayout Page Cells Bricks 12
  35. 35. demo.phundament.com /media/ipc2007se
  36. 36. Features
  37. 37. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 15
  38. 38. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • view-state, application-state 15
  39. 39. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • view-state, application-state • component-based, event-based 15
  40. 40. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • view-state, application-state • component-based, event-based • lifecycles 15
  41. 41. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • view-state, application-state • component-based, event-based • lifecycles • xml-based configurations 15
  42. 42. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • view-state, application-state • component-based, event-based • lifecycles • xml-based configurations • class auto-loader, namespaces 15
  43. 43. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • view-state, application-state • component-based, event-based • lifecycles • xml-based configurations • class auto-loader, namespaces • templating system 15
  44. 44. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • view-state, application-state • component-based, event-based • lifecycles • xml-based configurations • class auto-loader, namespaces • templating system • modules & services 15
  45. 45. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 16
  46. 46. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • request & response handler 16
  47. 47. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • request & response handler • assets & themes 16
  48. 48. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • request & response handler • assets & themes • authentification 16
  49. 49. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • request & response handler • assets & themes • authentification • caching 16
  50. 50. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • request & response handler • assets & themes • authentification • caching • data mapper & active record 16
  51. 51. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • request & response handler • assets & themes • authentification • caching • data mapper & active record • i18n & l10n 16
  52. 52. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 • request & response handler • assets & themes • authentification • caching • data mapper & active record • i18n & l10n • validators 16
  53. 53. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features PRADO 3 17
  54. 54. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features Phundament • Komponenten (stand-alone) • CSS dropdown menu • Bildbearbeitung (ImageMagick wrapper) • Schriften (GDlib wrapper) • GeoIP detection (PEAR module wrapper) • GUI (thickBox wrapper) • „cronjobs“ 18
  55. 55. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 19
  56. 56. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 19
  57. 57. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 19
  58. 58. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 19
  59. 59. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 19
  60. 60. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 19
  61. 61. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 19
  62. 62. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features Phundament • Content Management Pakete • Sitemap LVirtualNodes • Texte LContent • Dateien LMediaManager • MetaData LMetaData • Verknüpft Paketdaten 20
  63. 63. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features Phundament • Übersetzung • LTranslate • Rechteverwaltung • LUser • Datenbank • LDatabase • propel wrapper 21
  64. 64. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features Bibliotheken • Caching & Performance • APC oder MemCache oder SQLite • Build-System • phing • Datenbankabstraktion & Active Record • propel 22
  65. 65. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features Bibliotheken • Unterstütze Datenbanken von propel • SQLite • MySQL • MSSQL • PostGreSQL • PDO ab propel 1.3 23
  66. 66. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Features Bibliotheken • Client Side • prototype • scipt.aculo.us • jQuery • thickbox 24
  67. 67. Walk-through
  68. 68. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Installation • Download • http://sourceforge.net/projects/lithron • Extract • tar -xzpf phundament • Open • index.php 26
  69. 69. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Verzeichnisse • application • pages, master-layouts, templates, bricks, components • config • lib • PRADO, propel, phing, SQLiteFront • public • assets, images, themes • var • SQLite-Datenbank, Schriften, Upload-Ordner, Log 27
  70. 70. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Struktur- & Layout-System • Page • .page Datei anlegen in /application/Test.page • <com:TContent ID=“main“ /> einfügen • /application/components/PageMenu.tpl anpassen • optional: Test.php class Test extends TPage {} 28
  71. 71. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Struktur- & Layout-System • Node • .page „Template“ registrieren • in /config/application.xml Parameter AvailablePages anpassen • Administration (Struktur & Seiten) • neue Seite anlegen, Template wählen, bestätigen 29
  72. 72. demo.phundament.com /media/ipc2007se
  73. 73. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Struktur- & Layout-System • Dynamische Inhalte • Komponente LCell in Test.page einfügen • <com:LCell CssClass=quot;leftquot; ID=quot;Mainquot; /> • <com:LCell CssClass=quot;rightquot; ID=quot;RightCellquot; /> • Admin (Struktur & Seiten) • neue Seite anlegen, Template wählen, bestätigen 31
  74. 74. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Bricks erweitern • in /application/bricks • Klasse ContentBrick.php construct() • $admin .= „<h3>Color</h3>“; • $admin .= „<com:TTextBox Id=“Color“ />“; • Template ContentBrick.tpl • <p style= “color: <%= $this->Parameters[‚Color‘] %>;„> ...</p> • 32
  75. 75. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Bricks erstellen • in /application/bricks • Klasse MyBrick.php anlegen • class MyBrick extends LBrick { function onInit(){ php_do_my_job(); } } • Template MyBrick.tpl anlegen • in /config/application.xml Parameter AvailableBricks anpassen 33
  76. 76. demo.phundament.com /media/ipc2007se
  77. 77. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Themes • PRADO-basiert in /public/themes • CSS • JavaScript • Bilder & Icons • PRADO Skins „component properties“ • <com:LCell SkinId=“Special“ BrickStyle=“border: 1px solid red“ /> 35
  78. 78. Gimmicks
  79. 79. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Image Preloading • MYCLASS::jsPreloadImage(„my.gif“, $this) 40
  80. 80. AJAX Callbacks & Effekte
  81. 81. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 demo.phundament.com 42
  82. 82. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 43
  83. 83. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 demo.phundament.com 44
  84. 84. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 45
  85. 85. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 demo.phundament.com 46
  86. 86. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Caching 47
  87. 87. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 48
  88. 88. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Statisches HTML • PRADO Response Adapter erweitern • Ausgabe in Datei • /public/html • cronjob • mod_rewrite • rewrite condition • redirect index.php 49
  89. 89. Voraussetzungen & Empfehlungen
  90. 90. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Voraussetzungen • PHP 5.1+ • Reflection API • DOM • SPL • CType • PCRE 51
  91. 91. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Empfehlungen • Apache mod_rewrite • APC • ImageMagick • GDlib • SQLite 52
  92. 92. Tobias Munk, diemeisterei GmbH Phundament - Webapplikationen mit PRADO 3 Empfehlungen • Shell-Zugang • Installation • Build-System • Versionskontrolle • Datenbank-Import / Export 53
  93. 93. Fragen?
  94. 94. Vielen Dank ...und bis bald auf phundament.com

×