Existierende Systeme I Bibliotheken & Frameworks



Ähnliche Dokumente
Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de (c) Michael Behrendt -

Online-Publishing mit HTML und CSS für Einsteigerinnen

Content-Management- Systeme (CMS) Inhaltsverwaltungssystem, Redaktionssystem

Architekturen. DB-Anwendungen: Aufgaben. Aufteilung der Funktionen. ƒ Datenbankanwendungen

Datenbanksysteme SS 2007

Kommunikationsnetze. 7. Das World Wide Web 7.4 Client- vs. Server-basierte Techniken für dynamische Webseiten

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Internet und WWW Übungen

JSP und Servlet Programmierung

C O C O O N. Wo ist Cocoon in die Apache Projekte einzureihen?

JSP Grundlagen. JEE Vorlesung Teil 5. Ralf Gitzel

Herzlich willkommen im Modul Web-Engineering

Das Content-Management-System OpenCms im Vergleich mit TYPO3 und Joomla. Seminarvortrag von Wolfgang Neuß

Copyright 2014 Delta Software Technology GmbH. All Rights reserved.

Anwendervortrag auf dem 2. LUGD-Tag am in Frankfurt. Liferay an Bord Portale für Zeppelin

Internetanbindung von Datenbanken

Weborientierte Programmiersprachen am Beispiel PHP

Die Technologie der Mumie

Systemvoraussetzungen Sitzungsmanager

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Internetanbindung von Datenbanken

Komponenten & Hypermedia Seminar Prof. Dr. Frank Thiesing Struts Java-Framework für Web-Applikationen. Referenten: Fabian Bartelt Jens de Witt

André Maurer Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten

Version 4.0. service.monitor. Systemanforderungen

5. Programmierschnittstellen für XML

Scala & Lift. Ferenc Lajko

WEBAPPLIKATIONEN MIT PHP. Wo gibt es Hilfe? Wie fang ich an?

Comparing Software Factories and Software Product Lines

Multimedia im Netz Wintersemester 2011/12

J.6 Programmierung eingebetteter Systeme

PHP-Schwachstellen und deren Ausnutzung

Java 2, Enterprise Edition Einführung und Überblick

5. Programmierschnittstellen für XML

Einführung in die Skriptsprache PHP

Java zur Realisierung von Internetanwendungen

Übung: Verwendung von Java-Threads

Diplomarbeit: GOMMA: Eine Plattform zur flexiblen Verwaltung und Analyse von Ontologie Mappings in der Bio-/Medizininformatik

Algorithmen und Programmieren II Einführung in Python

HTTP-Server. Frank Wübbeling Universität Münster

Plunet BusinessManager. Technische Anforderungen

WMAP Metasploit 3.2 Module für Pentester von Webapplikationen. OWASP Frankfurt, The OWASP Foundation

Tomcat Konfiguration und Administration

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

ObjectBridge Java Edition

WebSphere Application Server Installation

Dr. Klaus Körmeier BlueBridge Technologies AG

JSP JSTL. JEE Vorlesung Teil 6. Ralf Gitzel

E-Business Architekturen

Web 2.0 Software-Architekturen

Server-centric vs. Client-centric Web Applications. BITKOM Software Summit 2014, Frankfurt

Vorkurs Informatik WiSe 15/16

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup Conrad Kobsch

Java Server Pages (JSP)

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

Java - Webapplikationen

Einführung in die Scriptsprache PHP

Präsentation Von Laura Baake und Janina Schwemer

MO 27. Aug. 2007, 17:00 UHR JAVA FRAMEWORKS TIPPS VON PROFI-GÄRTNERN GEGEN WILDWUCHS

Administrator Handbuch

Liste V Enterprise JavaBeans

Die aktuelle Version des SPIEGEL-Bestseller-Widgets können Sie auf unserer Website unter Entwicklertools herunterladen.

Benutzerdokumentation Web-Portal

MATLAB-Automatisierung von Dymola- Simulationen und Ergebnisauswertung Holger Dittus. Modelica User Group BaWü, Stuttgart,

Installation von NetBeans inkl. Glassfish Anwendungs-Server

JSP vs. PHP. Ein persönlicher Vergleich. EQUIcon Software GmbH Jena, Jörg Spilling Frankfurter Treffen Agenda

Ein mobiler Electronic Program Guide für Android

Anforderungen an die HIS

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck

Xampp-Installation und Konfiguration. Stefan Maihack Dipl. Ing. (FH) Datum:

Benutzerhandbuch für die Verwendung des viavac HL7 Forcast Webservices (VAC-CDSS)

Webseiten und Web-Apps grafisch gestalten mit HTML5 Canvas ohne Flash und sonstige Tools

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick Parameterübergabe...

Design Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi

Schenkel Personal Partner

Installationsanleitung

Teil 5: Server-Side- Programmierung

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Übungen zur Softwaretechnik

HTML5. Die Zukunft mobiler geodatenbasierter Anwendungen? Dipl.-Inf. Steve Schneider. Fraunhofer-Institut für Fabrikbetrieb und -automatisierung IFF


DATENFORMATE IM INTERNET

SAP NetWeaver Gateway. 2013

Installation des GeoShop Redirector für Apache (Stand ) ================================================================

Webengineering II T2INF Enrico Keil Keil IT e.k.

Anbindung LMS an Siemens S7. Information

Einführung Internettechnologien. - Clientseitige Programmierung -

Die neue RA-Oberfläche der DFN-PKI. Jan Mönnich

A361 Web-Server. IKT-Standard. Ausgabedatum: Version: Ersetzt: Genehmigt durch: Informatiksteuerungsorgan Bund, am

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

Multimedia im Netz. Wintersemester 2011/12. Übung 10. Betreuer: Verantwortlicher Professor: Sebastian Löhmann. Prof. Dr.

Henning Mersch. Tomcat. im Rahmen des RBG-Seminar SS04. Apache-Jakarta-Tomcat-Server RBG-Seminar 1/17

Struts 2 Das Imperium schlägt zurück?

C++ im Web mit Tntnet

Daniel Warneke Ein Vortrag im Rahmen des Proseminars Software Pioneers

Technische Grundlagen von Internetzugängen

Web Engineering.

Transkript:

Projektgruppe: Generierung von Webanwendungen aus visuellen Spezifikationen Existierende Systeme I Bibliotheken & Frameworks Von Christian Schneider Paderborn, den 18.06.2004

Übersicht Motivation Dynamische Web-Anwendungen PHP vs. Java für Web-Anwendungen Fazit Allgemein Sprache Webserver-Anbindung Bibliotheken und Frameworks Vorteile/Nachteile

Dynamische Web-Anwendungen Internet: Zunächst nur Vernetzung von Dokumenten mit rein statischem Inhalt. Web-Dokumente mit dynamischem Inhalt ermöglichen neue Anwendungsfelder: Individualisierte Web-Dokumente Elektronische Marktplätze Web-Portale (personalisierte Zugänge) Generierung von dyn. Web-Dokumenten mit Hilfe von Serverseitig ausgeführten Skripten/Programmen. Verwendbare Sprachen: C, Perl, PHP, Java,...

Übersicht Motivation Dynamische Web-Anwendungen PHP vs. Java für Web-Anwendungen Fazit Allgemein Sprache Webserver-Anbindung Bibliotheken und Frameworks Vorteile/Nachteile

PHP (Allgemein) Ursprünglich von Rasmus Lerdorf entwickelt. Serverseitig ausgeführte Skriptsprache. PHP-Skripte werden interpretiert. PHP-Skripte bestehen aus HTML-Dokumenten mit darin eingebetteten PHP-Anweisungen. Verfügbar auf allen gängigen Plattformen. Der PHP-Interpreter wird als CGI-Programm eingebunden. Aktueller Entwicklungsstand: Version 4.x und Version 5 (beta)

Java (Allgemein) Entwickelt von der Firma Sun MicroSystems Objektorientierte Programmiersprache (General Purpose) Java-Programme werden interpretiert. Web-Technologien: Servlets, JSP, Java-Beans,... Laufzeitumgebung: Servlet-Engine. Servlet-Engine: Kombination aus JVM und Web- Server. (z.b. Jakarta Tomcat) Verfügbar auf allen gängigen Plattformen. Aktueller Entwicklungsstand: Version 1.4x und Version 1.5 (beta)

PHP (Sprache) Syntax ähnlich der von C und Java. Standard-Kontroll-Strukturen: Schleifen, If-Abfragen,. Standard-Datentypen: int, boolean, string,... Variablen: global, lokal oder statisch Besonderheit: Variablen sind untypisiert. Unterstützung von regulären Ausdrücken. Programmierung in PHP ist stark prozedurbezogen durch eingeschränkte Objektorientiertheit. PHP Version 5 verspricht Besserung!

Java (Sprache) Vollwertige Programmiersprache Keine Beschränkung auf Web-Anwendungen. Typisierte Sprache Objektorientiert: Datenkapselung, Schnittstellen,... Leichtere Realisierung von höheren Software- Paradigmen (Design Patterns). Reguläre Ausdrücke nicht in der Kernsprache.

PHP (Webserver-Anbindung) PHP-Interpreter kommuniziert mit dem Web-Server über die CGI-Schnittstelle. Client Anfrage Antwort Web-Server Startet Ausgabe PHP-Interpreter Umgebungsvar. CGI: Geringe Anforderung an die einzubindende Sprache. Dokument.php Erzeugt hohen Overhead (Speicher und Zeit).

Java (Webserver-Anbindung) Servlet-Engine kommuniziert nach eigenem Protokoll mit dem Web-Server bzw. der Web-Server ist integriert. Anfrage Client Antwort Web-Server Servlet-Engine Kompiliert HttpRequest Servlet-Engine: Dokument.jsp Servlet Weniger Overhead (Speicher und Zeit) Servlet-Engine verwendet Java-Threads Auf Java beschränkt Verwendung von Connection-Pools für Zugriff auf DB.

PHP (Bibliotheken & Frameworks) Unterstützung diverser Protokolle: IMAP, Pop3, ftp,... Pear (PHP-Extension and Application Repository): Community gesteurtes Open-Source Projekt Sammlung von Funktionen PHP-Foundation-Classes (PFC) Objektorientierte Frameworks aufgrund der Spracheigenschaften von PHP nicht vorhanden.

Java (Bibliotheken & Frameworks) Alle Klassen der Java-Foundation-Classes (JFC) stehen zur Verfügung. (Threads, RMI, Sockets,...) Nebenläufige Verarbeitung von Aufgaben möglich. Zahlreiche Frameworks für die Entwicklung von Web- Anwendungen: Cocoon Marvin Struts Struts: Open-Source Framework von der Apache- Software-Foundation.

Struts (Bibliotheken & Frameworks) Architektur basiert auf dem MVC-Paradigma Controller: ActionServlet, Action (Servlet basierend) Model: Java-Beans, DB View: JSP, Java-Server-Faces,... ActionMapping: URLs -> Handler-Klasse HttpRequest Action1 <<geschickt>> ActionServlet Action[] ActionMapping Action2 JSP <<verwendet>>

PHP (Vorteile/Nachteile) Schnelle und einfache Entwicklung von Web-Apps. Sprache ist einfach, aber mächtig. Hohe Verbreitung. Schlechte Trennung von Anwendungscode und Darstellung mindert deren Wiederverwendbarkeit. Schlechte Skalierung bei hohem Anfrage-Aufkommen. Keine Datenkapselung. Keine Frameworks. Einsatzgebiete: Rapid-Prototyping Web-Anwendungen mit geringem Anwendungscode

Java (Vorteile/Nachteile) Basis für die Entwicklung komplexer Web-Anwendungen. Nicht auf Web-Anwendungen beschränkt. Gute Skalierung. Komplette Software-Architektur Saubere Trennung zwischen Anwendungscode und Darstellung Schwere Abschätzung des Resourcen-Bedarfs. Geringe Verbreitung bei ISP. Einsatzgebiete: Komplexe Web-Anwendungen mit hoher Lebensdauer Web-Anwendungen mit viel Anwendungscode Portierung bestehender Desktop-Apps.

Übersicht Motivation Dynamische Web-Anwendungen PHP vs. Java für Web-Anwendungen Fazit Allgemein Sprache Webserver-Anbindung Bibliotheken und Frameworks Vorteile/Nachteile

Fazit Java: Komplexe Web-Anwendungen mit hoher Lebensdauer Viel Anwendungscode Komplette Software-Architektur. Zahlreiche Frameworks PHP: Kleine bis mittlere Web-Anwendungen. Wenig Anwendungscode. Keine Frameworks! Lösung: Generierung von Web-Anwendungen

Fragen?