Das Zend Framework. Hält der Name, was er verspricht?
|
|
- Elke Baumhauer
- vor 8 Jahren
- Abrufe
Transkript
1 Hält der Name, was er verspricht?
2 Sprecher: Carsten Lucke Sofware-Ingenieur bei der sd&m AG, München Aktives Mitglied der sd&m Client- Community PEAR und PECL Entwickler Schreibt für Fachzeitschriften/-bücher über diverse PHP-Themen 2
3 Agenda Einführung und Überblick über das ZF Framework oder Komponentenbibliothek? Fortgeschrittene Techniken Bewertung 3
4 Agenda > Einführung und Überblick über das ZF Framework oder Komponentenbibliothek? Fortgeschrittene Techniken Bewertung 4
5 Was ist das ZF? Teils Application Framework, teils Component Library Open-Source Basiert auf PHP 5, objektorientiert entwickelt Liefert sauberen und stabilen Code mit sehr guter Dokumentation 5
6 Umfang des ZF 6
7 Umfang des ZF Core Infrastructure: Zend_Cache, Zend_Config, Zend_Log,... 6
8 Umfang des ZF Core Infrastructure: Zend_Cache, Zend_Config, Zend_Log,... MVC: Zend_Controller, Zend_View,... 6
9 Umfang des ZF Core Infrastructure: Zend_Cache, Zend_Config, Zend_Log,... MVC: Zend_Controller, Zend_View,... Auth: Zend_Acl, Zend_Auth, Zend_Session 6
10 Umfang des ZF Core Infrastructure: Zend_Cache, Zend_Config, Zend_Log,... MVC: Zend_Controller, Zend_View,... Auth: Zend_Acl, Zend_Auth, Zend_Session Database: Zend_Db, Zend_Db_Adapter,... 6
11 Umfang des ZF Core Infrastructure: Zend_Cache, Zend_Config, Zend_Log,... MVC: Zend_Controller, Zend_View,... Auth: Zend_Acl, Zend_Auth, Zend_Session Database: Zend_Db, Zend_Db_Adapter,... Mail, Formats & Search: Zend_Json, Zend_Mail, Zend_Search,... 6
12 Umfang des ZF Core Infrastructure: Zend_Cache, Zend_Config, Zend_Log,... MVC: Zend_Controller, Zend_View,... Auth: Zend_Acl, Zend_Auth, Zend_Session Database: Zend_Db, Zend_Db_Adapter,... Mail, Formats & Search: Zend_Json, Zend_Mail, Zend_Search,... i18n/l10n: Zend_Date, Zend_Measure, Zend_Translate,... 6
13 Umfang des ZF Core Infrastructure: Zend_Cache, Zend_Config, Zend_Log,... MVC: Zend_Controller, Zend_View,... Auth: Zend_Acl, Zend_Auth, Zend_Session Database: Zend_Db, Zend_Db_Adapter,... Mail, Formats & Search: Zend_Json, Zend_Mail, Zend_Search,... i18n/l10n: Zend_Date, Zend_Measure, Zend_Translate,... Web/Webservices: Zend_Http, Zend_XmlRpc, Zend_Rest, Zend_Feed, Zend_Service_*,... 6
14 Agenda Einführung und Überblick über das ZF > Framework oder Komponentenbibliothek? Fortgeschrittene Techniken Bewertung 7
15 Was bietet das ZF? Framework-Teil: Komponenten-Teil: 8
16 Was bietet das ZF? Framework-Teil: MVC-Komponenten Komponenten-Teil: 8
17 Was bietet das ZF? Framework-Teil: Komponenten-Teil: MVC-Komponenten Front-Controller basierte MVC-Implementierung 8
18 Was bietet das ZF? Framework-Teil: Komponenten-Teil: MVC-Komponenten Front-Controller basierte MVC-Implementierung Requestverarbeitung: Controller/Action 8
19 Was bietet das ZF? Framework-Teil: MVC-Komponenten Front-Controller basierte MVC-Implementierung Komponenten-Teil: Authentication & Authorization Requestverarbeitung: Controller/Action 8
20 Was bietet das ZF? Framework-Teil: MVC-Komponenten Front-Controller basierte MVC-Implementierung Komponenten-Teil: Authentication & Authorization Database Requestverarbeitung: Controller/Action 8
21 Was bietet das ZF? Framework-Teil: MVC-Komponenten Front-Controller basierte MVC-Implementierung Requestverarbeitung: Controller/Action Komponenten-Teil: Authentication & Authorization Database Mail, Formats & Search 8
22 Was bietet das ZF? Framework-Teil: MVC-Komponenten Front-Controller basierte MVC-Implementierung Requestverarbeitung: Controller/Action Komponenten-Teil: Authentication & Authorization Database Mail, Formats & Search Internationalisierung 8
23 Was bietet das ZF? Framework-Teil: MVC-Komponenten Front-Controller basierte MVC-Implementierung Requestverarbeitung: Controller/Action Komponenten-Teil: Authentication & Authorization Database Mail, Formats & Search Internationalisierung Web / Webservices 8
24 Der Framework-Anteil des Zend Framework 9
25 Requestverarbeitung des ZF 10
26 Requestverarbeitung des ZF Hostname 10
27 Requestverarbeitung des ZF Controller 10
28 Requestverarbeitung des ZF Action 10
29 Requestverarbeitung des ZF Requestparameter 10
30 Requestverarbeitung des ZF IndexController :: indexaction 10
31 Requestverarbeitung des ZF IndexController :: indexaction ProjectsController :: indexaction 10
32 Requestverarbeitung des ZF IndexController :: indexaction ProjectsController :: indexaction ProjectsController :: detailaction 10
33 Requestlebenszyklus des ZF 11
34 Requestlebenszyklus des ZF Front-Controller Request: 11
35 Requestlebenszyklus des ZF Front-Controller Router Request: Routing 11
36 Requestlebenszyklus des ZF Front-Controller Router Dispatcher Request: Routing Dispatching 11
37 Requestlebenszyklus des ZF Front-Controller Router Dispatcher IndexController Request: Routing Dispatching baraction() 11
38 Requestlebenszyklus des ZF Front-Controller Router Dispatcher IndexController Request: Routing Dispatching baraction() Wiederholung bis Request dispatched ist 11
39 Requestlebenszyklus des ZF Front-Controller Router Dispatcher IndexController Request: Routing Dispatching baraction() Wiederholung bis Request dispatched ist Response 11
40 Typische Verzeichnisstruktur 12
41 Typische Verzeichnisstruktur RewriteEngine on RewriteRule.* index.php 12
42 Typische Verzeichnisstruktur RewriteEngine on RewriteRule.* index.php deny from all 12
43 Typische Verzeichnisstruktur RewriteEngine on RewriteRule.* index.php deny from all deny from all 12
44 Typische Verzeichnisstruktur RewriteEngine on RewriteRule.* index.php deny from all deny from all RewriteEngine off 12
45 Action-Controller für die Dialog/ Client-Logik Fachliche Verarbeitung eines Requests Usecase-Aufrufe Lesen anzuzeigender Daten aus DB etc. Speichern eingegebener Daten Rendern der anzuzeigenden Seite mit Hilfe von Views 13
46 Action-Controller für die Dialog/Client-Logik class IndexController extends Zend_Controller_Action { protected $_view = null; } public function init() { parent::init(); $this->_view = $this->getinvokearg('view'); } public function indexaction() { $this->_view->title = 'Road-racing riders list'; $this->_view->riders = array('lance Armstrong', 'Erik Zabel', 'Tom Boonen'); $this->_response->appendbody( $this->_view->render('riderslist.phtml') ); } 14
47 Views für die Präsentation Separation von Präsentation und Logik bzw. Datenhaltung Ausschließlich Wissen über die Präsentation Eigene View-Datenhaltung möglich Rendering der anzuzeigenden Webseite (oder Teilen davon) 15
48 Views für die Präsentation <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title><?php echo $this->escape($this->title);?></title> </head> <body> <table border="0" cellspacing="5" cellpadding="5"> <tr><th>name</th></tr> <?php foreach ($this->riders as $rider) { echo "<tr><td>{$this->escape($rider)}</td></tr>"; }?> </table> </body> </html> 16
49 Der Komponenten-Anteil des Zend Framework 17
50 Komponentenüberblick ZF Hohe Anzahl an Komponenten Abdeckung vieler Bereiche: Auth, I18N, Webservices, Database, etc. Gute Dokumentation und viele Beispiele 18
51 Demonstration: ZF-Komponenten zur Abfrage eines RSS-Feed Anforderungen: 19
52 Demonstration: ZF-Komponenten zur Abfrage eines RSS-Feed Anforderungen: Abfrage der Feed-Informationen 19
53 Demonstration: ZF-Komponenten zur Abfrage eines RSS-Feed Anforderungen: Abfrage der Feed-Informationen Fehlerbehandlung bei Nichterreichbarkeit 19
54 Demonstration: ZF-Komponenten zur Abfrage eines RSS-Feed Anforderungen: Abfrage der Feed-Informationen Fehlerbehandlung bei Nichterreichbarkeit Caching der Ergebnisse 19
55 Demonstration: ZF-Komponenten zur Abfrage eines RSS-Feed Anforderungen: Abfrage der Feed-Informationen Fehlerbehandlung bei Nichterreichbarkeit Caching der Ergebnisse Eingesetzte Komponenten: 19
56 Demonstration: ZF-Komponenten zur Abfrage eines RSS-Feed Anforderungen: Abfrage der Feed-Informationen Fehlerbehandlung bei Nichterreichbarkeit Caching der Ergebnisse Eingesetzte Komponenten: Zend_Feed & Zend_Cache 19
57 Demonstration: Zend_Feed try { $feed = Zend_Feed::import(' $channel = array( 'title' => $feed->title(), 'link' => $feed->link(), 'description' => $feed->description(), 'items' => array()); foreach ($feed as $item) { $channel['items'][] = array( 'title' => $item->title(), 'link' => $item->link(), 'description' => $item->description()); } print_r($channel); } catch (Zend_Feed_Exception $e) { // Exception-Handling (Timeout, 404, etc.) } 20
58 Demonstration: Zend_Cache 4 Parameter zur Erzeugung einer Cache-Instanz: Frontend, Backend, Frontend-Options, Backend-Options Frontends (Was wird gecached?): Core, Output, Function, Class, File, Page Backends (Wohin wird gecached?): File, Sqlite, Memcached, APC, ZendPlatform 21
59 Demonstration: Zend_Cache $frontendopt = array( 'lifetime' => 300, // cache lifetime in seconds 'automaticserialization' => true); $backendopt = array( 'cachedir' => './cache' ); $cache = Zend_Cache::factory('Core', 'File', $frontendopt, $backendopt); $cacheid = 'feed_blog_lucke_info'; $feedinfo = $cache->load($cacheid); if (! $feedinfo) { // cache-miss $feedinfo = getfeedinfo(' $cache->save($feedinfo, $cacheid); } else { // cache-hit, Feed-Info bereits verfügbar } print_r($feedinfo); 22
60 Agenda Einführung und Überblick über das ZF Framework oder Komponentenbibliothek? > Fortgeschrittene Techniken Bewertung 23
61 Projektstruktur für größere Projekte Projektstruktur erlaubt Subprojekte Zend_Controller_Front :: setcontrollerdirectory() Zend_Controller_Front :: addcontrollerdirectory() Zend_View :: setscriptpath() Zend_View :: addscriptpath() 24
62 Projektstruktur für größere Projekte [...] $controller = Zend_Controller_Front::getInstance(); $controller->setcontrollerdirectory( 'application/controllers'); $controller->addcontrollerdirectory( 'application/subproject1/controllers', 'sub1'); $controller->returnresponse(true); $controller->throwexceptions(true); $view = new Zend_View(); $view->setscriptpath('application/views'); $view->addscriptpath('application/subproject1/views'); $controller->setparam('view', $view); [...] 24
63 Projektstruktur für größere Projekte [...] $controller = Zend_Controller_Front::getInstance(); $controller->setcontrollerdirectory( 'application/controllers'); $controller->addcontrollerdirectory( 'application/subproject1/controllers', 'sub1'); $controller->returnresponse(true); $controller->throwexceptions(true); $view = new Zend_View(); $view->setscriptpath('application/views'); $view->addscriptpath('application/subproject1/views'); $controller->setparam('view', $view); [...] 24
64 Template-basierte Views Zend_View_Interface als Schnittstelle Template-Engine Ihrer Wahl anstelle von PHP/HTML Views Rahmentemplate mit Platzhaltern anstelle von Includes innerhalb von Views 25
65 Mehrere Actions zur Requestabarbeitung Aufteilung der fachlichen Abarbeitung eines Request auf mehrere Controller Dispatch-Zyklus erlaubt Einsatz mehrerer Controller/Actions zur Requestabarbeitung Forwarding : $this->_forward() Problem: Controller haben dadurch Kenntnis von einander 26
66 Mehrere Actions zur Requestabarbeitung :: Lösungsansatz Abstrakte Action-Basisklasse zur Verwaltung eines Navigation-Stack init() zur Initialisierung des Stack myforward() statt _forward() postdispatch() für Forwarding mit mod. Navigation-Stack als Kontextparameter 27
67 Agenda Einführung und Überblick über das ZF Framework oder Komponentenbibliothek? Fortgeschrittene Techniken > Bewertung 28
68 Bewertung des Zend Framework Pro: Contra: 29
69 Bewertung des Zend Framework Pro: Durchdachte MVC- Umsetzung Contra: 29
70 Bewertung des Zend Framework Pro: Durchdachte MVC- Umsetzung Viele Komponenten für Querschnitts- und Spezialaufgaben Contra: 29
71 Bewertung des Zend Framework Pro: Durchdachte MVC- Umsetzung Viele Komponenten für Querschnitts- und Spezialaufgaben Hohe Qualität Contra: 29
72 Bewertung des Zend Framework Pro: Durchdachte MVC- Umsetzung Viele Komponenten für Querschnitts- und Spezialaufgaben Hohe Qualität Gute Dokumentation Contra: 29
73 Bewertung des Zend Framework Pro: Durchdachte MVC- Umsetzung Viele Komponenten für Querschnitts- und Spezialaufgaben Hohe Qualität Gute Dokumentation Contra: Einsatz von Zend_View in größeren Projekten / kompl. Views zu überdenken 29
74 Bewertung des Zend Framework Pro: Durchdachte MVC- Umsetzung Viele Komponenten für Querschnitts- und Spezialaufgaben Hohe Qualität Gute Dokumentation Contra: Einsatz von Zend_View in größeren Projekten / kompl. Views zu überdenken Für größere Projekte evtl. noch Framework-Arbeit notwendig 29
75 Bewertung des Zend Framework Pro: Durchdachte MVC- Umsetzung Viele Komponenten für Querschnitts- und Spezialaufgaben Hohe Qualität Gute Dokumentation Contra: Einsatz von Zend_View in größeren Projekten / kompl. Views zu überdenken Für größere Projekte evtl. noch Framework-Arbeit notwendig Framework für stark dialogbasierte Systeme evtl. nicht der richtige Ansatz 29
76 Vielen Dank für Ihre Aufmerksamkeit! Haben Sie Fragen? 30
ZSDGMDZFGW... Zehn Sicherheitsprobleme, die gerne mit dem ZendFramework gebaut werden. Ben Fuhrmannek #phpug-köln 2.10.2009
ZSDGMDZFGW Zehn Sicherheitsprobleme, die gerne mit dem ZendFramework gebaut werden Ben Fuhrmannek #phpug-köln 2.10.2009 Über mich Informatiker Entwickler IT Security 2 TOC Aufbau ZF Problem 1 bis 10 3
MehrWEBAPPLIKATIONEN MIT PHP. Wo gibt es Hilfe? Wie fang ich an?
WEBAPPLIKATIONEN MIT PHP Wo gibt es Hilfe? Wie fang ich an? Tools Webapplikationen bestehen aus Textdateien Lassen sich in Texteditoren schreiben Alternativen: Eclipse (PDT) Netbeans (Dynamic Languages)
MehrDjango - ein Python Web-Framework
31. Mai 2011 Inhaltsverzeichnis 1 Überblick Was ist Django Merkmale Anforderungen 2 MVC im Detail Model Controller View 3 Live-Demo 4 Wie geht es weiter? Was ist Django Was ist Django? quelloffenes Web-Framework
MehrEine Anwendung mit InstantRails 1.7
Eine Anwung mit InstantRails 1.7 Beschrieben wird das Anlegen einer einfachen Rails-Anwung, die ohne Datenbank auskommt. Schwerpunktmäßig wird auf den Zusammenhang von Controllern, Views und der zugehörigen
MehrOWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes
OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes 1 XSS: Cross-Site Scripting 1.) Es gelangen Daten in den Web-Browser, die Steuerungsinformationen
MehrSignatur mit Formatierung
Bedienungstip: Signatur mit Formatierung Seite 1 Signatur mit Formatierung Es können Signaturen hinterlegt werden, die beim Erstellen von Nachrichten automatisch angehängt werden. Das ist sehr praktisch,
MehrTemplate Programmierung mit Joomla!
Joomla! DAY TM AUSTRIA 2015 Template Programmierung mit Joomla! Inhalt Einstieg in die Joomla! Template Programmierung Inhalt Einleitung Planung Joomla! Template Programmierung Joomla! Template Demo Fragen
Mehrphp Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...
php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...7 3.Zugriff auf mysql Daten...11 Verteilte Systeme: php.sxw Prof.
MehrMapbender3 Workshop. Christian Wygoda. FOSSGIS Dessau 2012
Mapbender3 Workshop Christian Wygoda FOSSGIS Dessau 2012 Christian Wygoda Mapbender3 Developer Team PSC (Project Steering Commitee) WhereGroup Bonn http:///www.wheregroup.com Mapbender3 Einführung in Mapbender
MehrSilverstripe CMS und das Sapphire Framework
Silverstripe CMS und das Sapphire Framework kurz über mich... Seit 2002 mit PHP Typo3, Wordpress, Radiant (RoR) reingeschaut: Symfony, Zend Seit 2009 Webentwicklung mit SilverStripe Geschichte von SilverStripe
MehrDatenbanksysteme SS 2007
Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 9c: Datenbankapplikationen Architektur einer Web-Applikation mit Servlets, JSPs und JavaBeans
MehrMini-Dokumentation zur Bearbeitung der Website massweiler.de
Mini-Dokumentation zur Bearbeitung der Website massweiler.de 10. März 2015 Die Website massweiler.de Die Website massweiler.de wird mit dem Content Management System (CMS) Joomla betrieben. Joomla ist
MehrVerhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...
PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:
MehrArrays von Objekten. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-12-13/infoeinf WS12/13 Arrays: Wiederholung Ein Array ist ein Tupel von Elementen gleichen
MehrAJAX DRUPAL 7 AJAX FRAMEWORK. Was ist das Ajax Framework? Ein typischer Ablauf eines Ajax Requests Die Bestandteile des Ajax Frameworks.
DRUPAL 7 AJAX FRAMEWORK Was ist das Ajax Framework? Ein typischer Ablauf eines Ajax Requests Die Bestandteile des Ajax Frameworks AJAX Beispiele Fragen: Gibt es jemanden der noch gar keine Erfahrungen
MehrSEMINAR Modifikation für die Nutzung des Community Builders
20.04.2010 SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung ecktion SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung Bevor Sie loslegen
MehrArrays von Objekten. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"
MehrUnsere Analysen, Strategien und Konzepte sorgen dafür, dass Sie gefunden, gesehen und beachtet werden. Wir entwickeln Kommunikations- und
Buttgereit und Heidenreich Kommunikation strategisch gestalten. Unsere Analysen, Strategien und Konzepte sorgen dafür, dass Sie gefunden, gesehen und beachtet werden. Wir entwickeln Kommunikations- und
MehrExtending tl_member. Andreas Fieger (@fiedschmuc) 2015-10-08
Extending tl_member Andreas Fieger (@fiedschmuc) 2015-10-08 Übersicht Was wollen wir? Wie könnten wir es erreichen? Aufwand/Folgekosten? Was wollen wir? Felder in der Mitgliederverwaltung hinzufügen (z.b.
MehrArrays Fortgeschrittene Verwendung
Arrays Fortgeschrittene Verwendung Gilbert Beyer und Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Arrays: Wiederholung
MehrMultimedia im Netz Wintersemester 2011/12
Multimedia im Netz Wintersemester 2011/12 Übung 01 Betreuer: Verantwortlicher Professor: Sebastian Löhmann Prof. Dr. Heinrich Hussmann Organisatorisches 26.10.2011 MMN Übung 01 2 Inhalte der Übungen Vertiefung
Mehr6.9 Java Server Pages
DocumentCollection dc = db.ftsearch(abfrage); Document d = dc.getfirstdocument(); while (d!= 0) { String Name = db.gettitle(); out.println(name + ""); d = dc.getnextdocument(); catch (NotesException
MehrZugriff auf Firebird-Datenbanken mit PHP. Daniel de West DB-Campus-Treffen 15. Januar 2004
Zugriff auf Firebird-Datenbanken mit PHP Daniel de West DB-Campus-Treffen 15. Januar 2004 Inhalt PHP und Firebird Die wichtigsten Befehle Verbindungsaufbau Übermitteln von Abfragen Beenden von Verbindungen
MehrObjektorientierte Programmierung für Anfänger am Beispiel PHP
Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten
MehrRails Ruby on Rails Ajax on Rails. Clemens H. Cap http://wwwiuk.informatik.uni-rostock.de http://www.internet-prof.de
Rails Ruby on Rails Ajax on Rails Who is who? Rails Ziel: Framework für Web (2.0) Anwungen Beschleunigung der Entwicklung Konzept des Agilen Programmierens Ruby Interpretierte Sprache Rails Integrationen
MehrGrundlagen der Web-Entwicklung. Beispiele für Architekturen: das ZEND-Framework
Grundlagen der Web-Entwicklung Beispiele für Architekturen: das ZEND-Framework Thomas Walter 7.12.2009 1 aktuelles neuer Google-Dienst: DNS IP 8.8.8.8 oder 8.8.4.4 Vorlesung bis 21.12.2009 (?) Übungen:???
MehrFakultät für Informatik & Wirtschaftsinformatik DB & IS II SS 2015 PHP MVC. Dr. Christian Senger. PHP MVC 1 von 21
PHP MVC PHP MVC 1 von 21 Model View Control Views Controlers Business logic GUI OO-application logic Object-relational-Mapping Relational DBMS PHP MVC 2 von 21 Webbasierte Informationssysteme WWW-Browser
MehrGrundlagen der Web-Entwicklung INF3172
Grundlagen der Web-Entwicklung INF3172 Das ZEND-Framework Thomas Walter 28.11.2011 Version 1.0 aktuelles 2 Frameworks Framework: wiederverwertbares Softwaresystem mit bereits implementierter, genereller
MehrDesign Patterns 2. Model-View-Controller in der Praxis
Design Patterns 2 Model-View-Controller in der Praxis Design Patterns Oft Schablonen für eine Klassenstruktur... aber nicht immer! Dahinterliegende Konzepte wichtiger als wörtliche Umsetzung Pattern werden
MehrEclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007
Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit
MehrDie XML-Schnittstelle von FreelancerWelt.de Projektimport
Die XML-Schnittstelle von FreelancerWelt.de Projektimport Die Schnittstelle ermöglicht es neue IT Projekte auf FreelancerWelt.de automatisch einzustellen, bestehende zu aktualisieren oder zu löschen. Wenn
MehrEinführung Responsive Webdesign
Einführung Responsive Webdesign Aktuelle Situation Desktop Webseiten Umsetzungen auch heute noch in den meisten Fällen Pixelbasiert JavaScript schafft Dynamik CSS schafft Trennung von Inhalt und Layout
MehrEinführung in das Web Content Management System (CMS) Typo3
Einführung in das Web Content Management System (CMS) Typo3 Übung im Rahmen der Vorlesung ARIS (IW13vz/tzC) Chur, den 29.10.2014 Agenda Einführung und theoretische Grundlagen zu CMS Demonstration der Grundfunktionen
MehrServer-centric vs. Client-centric Web Applications. BITKOM Software Summit 2014, Frankfurt
Server-centric vs. Client-centric Web Applications BITKOM Software Summit 2014, Frankfurt Alexander Rühl SyroCon Competence Lead M2M & Web Applications Diplom-Informatiker (FH) 10 Jahre bei SyroCon und
MehrAK Medientechnologien 05 Delegation
AK Medientechnologien 05 Delegation TableViews, XML Parser, Application Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ Übersicht Allgemeines zum Delegation Pattern Theoretische
MehrCitStorm. TU Berlin - Fachbereich CIT Kay Fleischmann Fridtjof Sander Gert Geidel Michael Thomas Constantin Gaul Thomas Misch. April, 09.
CitStorm TU Berlin - Fachbereich CIT Kay Fleischmann Fridtjof Sander Gert Geidel Michael Thomas Constantin Gaul Thomas Misch April, 09. 2014 Projektbeschreibung ZIELSETZUNG Operatoren mit Twitter Storm
MehrDesign Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi
Design Pattern - Strukturmuster CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Agenda Einleitung Strukturmuster Fassade Model View Controller Vergleich 2 Einleitung Strukturmuster
MehrObjektorientierung: Klassen und Objekte
Vorlesung und Übung Universität Paderborn Wintersemester 2015/2016 Dr. Peter Pfahler Objektorientierung: Klassen und Objekte EWS, WS 2015/16, Pfahler L-1 Objektorientierung behandelt in "Einführung in
MehrEinführung in die Scriptsprache PHP
Herbst 2014 Einführung in die Scriptsprache PHP Wirtschaftsinformatik: 5. Semester Dozenten: Rainer Telesko / Martin Hüsler Fachhochschule Nordwestschweiz FHNW - Rainer Telesko / Martin Hüsler 1 Inhalt:
MehrSAP NetWeaver Gateway. Connectivity@SNAP 2013
SAP NetWeaver Gateway Connectivity@SNAP 2013 Neue Wege im Unternehmen Neue Geräte und Usererfahrungen Technische Innovationen in Unternehmen Wachsende Gemeinschaft an Entwicklern Ausdehnung der Geschäftsdaten
MehrSoftware Engineering II
Software Engineering II Codegenerierung für den SmartIO Editor mit der Modeling Workflow Engine Wintersemester 10/111 Fachgebiet Software Engineering Albert Zündorf / Wiederholung Bisher im Laufe des Semesters
MehrEntwicklung des Dentalmarktes in 2010 und Papier versus Plastik.
Sehr geehrter Teilnehmer, hier lesen Sie die Ergebnisse aus unserer Umfrage: Entwicklung des Dentalmarktes in 2010 und Papier versus Plastik. Für die zahlreiche Teilnahme an dieser Umfrage bedanken wir
MehrPraktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005
Praktikum Datenbanksysteme Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Tomcat-Installation $JAVA_HOME (z.b. /home/dbp00/j2sdk1.4.2) $CATALINA_HOME (/home/dbp00/jakarta-tomcat-4) Skripte zum Start/Stop:
MehrHerzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de. 26.11.2000 (c) Michael Behrendt -
Herzlich Willkommen! Mit Java ins Web - eine praxisnahe Übersicht 1 Wer bin ich? Michael Behrendt, 21, Nürnberg kurzer Lebenslauf: 1991 Erster Rechner: Commodore C128 1995 Ausbildung zum Datenverarbeitungskaufmann
Mehr188.154 Einführung in die Programmierung für Wirtschaftsinformatik
Beispiel 1 Vererbung (Liste) Gegeben sind die beiden Klassen ListNode und PersonNode. 188.154 Einführung in die Programmierung für Wirtschaftsinformatik Wiederholung, Prüfungsvorbereitung Monika Lanzenberger
Mehr#58. select-liste (deren Werte durch die Auswahl des Benutzers in der ersten Liste bestimmt werden) direkt über dem Button.
Dynamisch eine Auswahlliste in einem Rails-Template generieren #58 HACK #58 Dynamisch eine Auswahlliste in einem Rails-Template generieren Hack Generieren Sie mit Hilfe von Ajax und Ruby on Rails eine
MehrWeb-Anwendungsentwicklung mit dem Delivery Server
Web-Anwendungsentwicklung mit dem Delivery Server Java-Framework auf Basis der Open API Bernfried Howe, Webertise Consulting GmbH WEBertise Consulting Dipl. Informatiker (Wirtschaftsinformatik) 2001-2010
MehrUniversität Zürich Informatikdienste. SpamAssassin. Spam Assassin. 25.04.06 Go Koordinatorenmeeting 27. April 2006 1
Spam Assassin 25.04.06 Go Koordinatorenmeeting 27. April 2006 1 Ausgangslage Pro Tag empfangen die zentralen Mail-Gateways der Universität ca. 200 000 E-Mails Davon werden über 70% als SPAM erkannt 25.04.06
MehrBFV Widgets Kurzdokumentation
BFV Widgets Kurzdokumentation Mit Hilfe eines BFV-Widgets lassen sich die neuesten Ergebnisse und die aktuellen Tabellen des BFV auf der eigenen nicht kommerziellen Webseite mit wenig Aufwand einbeten.
MehrÜbungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen
Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe
MehrDas Typo3 Backend. Demo Website: Frontend: http://www.typo3-talk.net/ Backend: http://www.typo3-talk.net/typo3/ von Timo Schmidt
Das Typo3 Backend von Timo Schmidt Demo Website: Frontend: http://www.typo3-talk.net/ Backend: http://www.typo3-talk.net/typo3/ Agenda Was ist ein CMS? Was ist Typo3? Das Typo3 Backend Seiten mit Typo3
MehrMeine erste Homepage - Beispiele
Meine erste - Beispiele 1. Beispiel meine Willkommen auf meiner Befehle nicht über Hier ist ein Senior, der noch fit für's Internet ist. Probieren wir
Mehr11 Tabellen als Inhaltselement (ohne RichTextEditor)
11 Tabellen als Inhaltselement (ohne RichTextEditor) Inhaltsverzeichnis 11 Tabellen als Inhaltselement (ohne RichTextEditor) 1 Vorbemerkung.......................................... 1 11.1 Eine einfache
MehrÜbungen zu Softwaretechnik
Prof. Dr. Dr. h.c. M. Broy Lösungsblatt 11 Dr. H. Ehler, S. Wagner 23. Januar 2004 Übungen zu Softwaretechnik Aufgabe 16 Qualitätseigenschaften Broker-Pattern Beurteilen Sie das in Aufgabe 15 benutzte
MehrSchenkel Personal Partner
Schenkel Personal Partner opens the door 1 PHP Application Developer (m/w) Bei einem international tätigen Handelshaus PHP und Zend Framework Von der Anforderung bis zur technischen Realisierung 2 Profil
MehrWas ist Orxonox? Ein Spiel:
Willkommen! ORXONOX Was ist Orxonox? Ein Spiel: Orxonox ist primär ein Spaceshooter, enthält aber auch Elemente eines Egoshooters. In Zukunft sind sogar noch weitere Einflüsse denkbar (z.b. ein kleines
MehrSenden von strukturierten Berichten über das SFTP Häufig gestellte Fragen
Senden von strukturierten Berichten über das SFTP Häufig gestellte Fragen 1 Allgemeines Was versteht man unter SFTP? Die Abkürzung SFTP steht für SSH File Transfer Protocol oder Secure File Transfer Protocol.
MehrTYPO3 Slide 1 www.lightwerk.com 2005 Lightwerk GmbH
TYPO3 Slide 1 Inhaltsverzeichnis Was ist ein CMS Was ist TYPO3 Editier-Möglichkeiten / Frontend-Editieren Slide 2 Was ist ein CMS (WCMS) Ein Web Content Management System (WCMS) ist ein Content-Management-System,
MehrLösungsvorschläge. zu den Aufgaben im Kapitel 4
Lösungsvorschläge zu den Aufgaben im Kapitel 4 Aufgabe 4.1: Der KNP-Algorithmus kann verbessert werden, wenn in der Funktion nexttabelle die Zuweisung next[tabindex] = ruecksprung; auf die etwas differenziertere
MehrWeb Sockets mit HTML5. Quelle: www.html5rocks.com/de
Web Sockets mit HTML5 Quelle: www.html5rocks.com/de Intensive Client-Server-Kommunikation: Beispiele Online-Spiele mit mehreren Mitspielern Chat-Anwendungen Live-Sport-Ticker Echtzeit-Aktualisierungen
MehrTIMERATE AG Tel 044 422 65 15 Falkenstrasse 26 timerate@timerate.ch 8008 Zürich www.timerate.ch. Joomla Templates Kursunterlagen
TIMERATE AG Tel 044 422 65 15 Falkenstrasse 26 timerate@timerate.ch 8008 Zürich www.timerate.ch Joomla Templates Kursunterlagen Ordnerstruktur in Joomla Inhaltsverzeichnis Ordnerstruktur in Joomla... 3
MehrÜbungsklausur vom 7. Dez. 2007
Übungsklausur vom 7. Dez. 2007 Ein Lösungsmuster Teilbereiche der Softwaretechnik Software Anforderungen Software Entwurf Software Konstruktion Software Test Software Wartung Software Konfigurationsmanagement
MehrEin mobiler Electronic Program Guide
Whitepaper Telekommunikation Ein mobiler Electronic Program Guide Ein iphone Prototyp auf Basis von Web-Technologien 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller
MehrSDD System Design Document
SDD Software Konstruktion WS01/02 Gruppe 4 1. Einleitung Das vorliegende Dokument richtet sich vor allem an die Entwickler, aber auch an den Kunden, der das enstehende System verwenden wird. Es soll einen
MehrSoftware Engineering II
Software Engineering II Wintersemester 12/13 Fachgebiet Software Engineering Installation der MWE Plugins Von der Juno Update Site installieren (falls noch nicht vorhanden): MWE SDK Xpand SDK 2 TFD Projekt
MehrVWA Rhein-Neckar Dipl.-Ing. Thomas Kloepfer. Kommunikation I (Internet) Übung 4 PHP
VWA Rhein-Neckar Dipl.-Ing. Thomas Kloepfer Kommunikation I (Internet) Übung 4 PHP SS 2004 Inhaltsverzeichnis 1. PHP die serverseitige Programmiersprache...1 1.1. PHP - Bereiche in HTML definieren...1
MehrProgrammierschnittstelle API 2 für CMS Day Communiqué: Beispiele Standort
Eidgenössisches Departement für Verteidigung, Bevölkerungsschutz und Sport VBS armasuisse Bundesamt für Landestopografie swisstopo Programmierschnittstelle API 2 für CMS Day Communiqué: Beispiele Standort
MehrPraktikum Datenbanksysteme. Ho Ngoc Duc IFIS Universität zu Lübeck 28.05.2003
Praktikum Datenbanksysteme Ho Ngoc Duc IFIS Universität zu Lübeck 28.05.2003 Nullwerte und Primitive Typen Wenn parent==null, was wird in der Datenbank gespeichert? Wenn man aus der DB liest, wie kann
MehrJSP Grundlagen. JEE Vorlesung Teil 5. Ralf Gitzel ralf_gitzel@hotmail.de
JSP Grundlagen JEE Vorlesung Teil 5 Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht JSP Konzept Model-View-Controller mit JSPs JSP Expression Language EL Literale
MehrApplication Frameworks
Seminar Software Engineering 1 Grundlagen Agenda Spring Framework Dependency Injection Aspektorientierte Programmierung Datenbankanbindung Modell View Controller Sicherheit Spring vs. Java EE Zusammenfassung
MehrArchitekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131
Architekturen Von der DB basierten zur Multi-Tier Anwendung DB/CRM (C) J.M.Joller 2002 131 Lernziele Sie kennen Design und Architektur Patterns, welche beim Datenbankzugriff in verteilten Systemen verwendet
MehrRadio-Cloud Tools. Dokumentation
Radio-Cloud Tools Dokumentation Inhaltsverzeichnis Inhaltsverzeichnis 1 Einleitung 3 2 Das Widget Aufnehmen 4 2.1 Parameter....................................... 4 2.2 Button-Typen.....................................
MehrAnleitung zur Online-Schulung
Anleitung zur Online-Schulung Webbasierte 7-Stunden-Schulung für Personen mit Zugang zu identifizierbarer Luftfracht oder Luftpost (gemäß Kapitel 11.2.3.9 der Verordnung (EU) Nr. 185/2010). Vorgehensweise:
MehrSehr geehrte Faktor-IPS Anwender,
März 2014 Faktor-IPS 3.11 Das neue Release Faktor-IPS 3.11 steht Ihnen zum Download zur Verfügung. Wir informieren Sie über die neusten Feautres. Lesen Sie mehr Sehr geehrte Faktor-IPS Anwender, Auf faktorzehn.org
MehrKlausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.
Klausur Informatik Programmierung, 17.09.2012 Seite 1 von 8 Klausurteilnehmer Name: Matrikelnummer: Wichtige Hinweise Es sind keinerlei Hilfsmittel zugelassen auch keine Taschenrechner! Die Klausur dauert
MehrWeb-Programmierung (WPR)
Web-Programmierung (WPR) Vorlesung XII. Vergleich Server-Plattformen mailto:wpr@gruner.org 1 Technologien Perl/CGI Einsatzgebiete: Kleine Websites, semiprofessioneller Bereich Pro's: Plattform/Serverneutralität
MehrEinführung in die Programmierung
Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In
Mehreasylearn Webservice lsessionservice Interface für Single Sign On (SSO)
- 1 - easylearn Webservice lsessionservice Interface für Single Sign On (SSO) SDN AG, Solution Development Network Dezember 2008 - 2 - Inhaltsverzeichnis Inhaltsverzeichnis... 2 easylearn Webservice lsessionservice...
MehrSaferpay Release Notes R55. Release 55 05.04.2011. Saferpay TM
Saferpay Release Notes R55 Release 55 05.04.2011 Saferpay TM Inhaltsverzeichnis 1 Release Items: Produktneuheiten... 3 1.1 Das neue Saferpay Glossar... 3 1.2 Release Items Saferpay Backoffice... 3 1.2.1
MehrFortgeschrittenes Programmieren mit Java. Test Driven Development
Fortgeschrittenes Programmieren mit Java Test Driven Development Test getriebene Programmierung Benedikt Boeck Hochschule für Angewandte Wissenschaften Hamburg 6. November 2009 B. Boeck (HAW Hamburg) Test
MehrUm DynDNS zu konfigurieren, muss ausschließlich folgendes Menü konfiguriert werden:
1. Konfiguration von DynDNS 1.1 Einleitung Im Folgenden wird die Konfiguration von DynDNS beschrieben. Sie erstellen einen Eintrag für den DynDNS Provider no-ip und konfigurieren Ihren DynDNS Namen bintec.no-ip.com.
MehrEinführung in Eclipse und Java
Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik
MehrAgile Vorgehensmodelle in der Softwareentwicklung: Scrum
C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was
MehrErstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java
Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework
MehrFernzugang Uniklinikum über VMware View
Fernzugang Uniklinikum über VMware View Windows Mit VMware View haben Sie die Möglichkeit, von einem beliebigen Netzwerk aus auf einen Rechnerpool des Uniklinikums zuzugreifen. 1. Installation des VMware
MehrÜbungen zur Softwaretechnik
Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 9 17. Dezember 2002 www4.in.tum.de/~rumpe/se
MehrGraphen in Apex von Thomas Hernando. www.syntegris.de
Graphen in Apex von Thomas Hernando www.syntegris.de Einleitung FIRMENINFOS Gründung im Jahre 2000 mit Sitz in Neu-Isenburg bei Frankfurt am Main Mehr als 30 Berater Oracle Gold Partner Schwerpunkte liegen
MehrHadoop Demo HDFS, Pig & Hive in Action. Oracle DWH Konferenz 2014 Carsten Herbe
Hadoop Demo HDFS, Pig & Hive in Action Oracle DWH Konferenz 2014 Carsten Herbe Wir wollen eine semi-strukturierte Textdatei in Hadoop verarbeiten und so aufbereiten, dass man die Daten relational speichern
MehrLIVE/11 - WEBSPECIAL. Andreas Förthner - Clemens Kalb
LIVE/11 - WEBSPECIAL Andreas Förthner - Clemens Kalb 1 IHRE REFERENTEN! Clemens Kalb! Leiter netlogix Media! Spezialist für Online-Marketing und ecommerce! Google AdWords Certified Professional @cjckalb
MehrDr. Klaus Körmeier BlueBridge Technologies AG
Dr. Klaus Körmeier BlueBridge Technologies AG Agenda Was ist ein SharePoint Wiki Anwendungsbeispiele und Erweiterungen Was ist beim Einsatz zu beachten Zusammenfassung Partner Partner BlueBridge AG SharePoint-Erfahrung
MehrStruts 2 Das Imperium schlägt zurück?
Struts 2 Das Imperium schlägt zurück? Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Tobias Kieninger www.oio.de info@oio.de Java, XML und Open Source seit 1998 ) Software
MehrProgrammieren mit Excel VBA Teil 2 Formulare als Benutzerschnittstellen
Programmieren mit Excel VBA Teil 2 Formulare als Benutzerschnittstellen Peter K. Antonitsch HTBL Mössingerstr. 25 pantonit@htblmo-klu.ac.at Formulare VBA-Editor: Einfügen User Form Peter K. Antonitsch
MehrJava Enterprise Architekturen Willkommen in der Realität
Java Enterprise Architekturen Willkommen in der Realität Ralf Degner (Ralf.Degner@tk-online.de), Dr. Frank Griffel (Dr.Frank.Griffel@tk-online.de) Techniker Krankenkasse Häufig werden Mehrschichtarchitekturen
MehrPraktikum ios-entwicklung im Sommersemester 2015 Übungsblatt 3
Ludwig-Maximilians-Universität München Institut für Informatik Lehrstuhl für Mobile und Verteilte Systeme Prof. Dr. Claudia Linnhoff-Popien Praktikum ios-entwicklung im Sommersemester 2015 Übungsblatt
MehrTYPO3 CMS 6.2 LTS. Die neue TYPO3- Version mit Langzeit- Support
Die neue TYPO3- Version mit Langzeit- Support Am 25. März 2014 wurde mit die zweite TYPO3- Version mit Langzeit- Support (Long- Term- Support, kurz: LTS) veröffentlicht. LTS- Versionen werden drei Jahre
MehrProgrammieren 2 (Prof. Hasbargen) Klausur
Programmieren 2 (Prof. Hasbargen) 1 Klausur Aufgabe 1 (10 Punkte) Dynamisierung von HTML-Seiten HTML-Seiten sind eine gängige Art und Weise, Informationen darzustellen. Nennen Sie die Gründe, welche Vorteile
MehrLokale Installation von DotNetNuke 4 ohne IIS
Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation
MehrDataTables LDAP Service usage Guide
DataTables LDAP Service usage Guide DTLDAP Usage Guide thomasktn@me.com / www.ktn.ch Benutzung des DTLDAP Service DataTables Der Service stellt einen JSON Feed für DataTables (http://www.datatables.net)
Mehr