Web-Frameworks: Ruby on Rails
|
|
- Hannah Berger
- vor 6 Jahren
- Abrufe
Transkript
1 Web-Frameworks: Ruby on Rails Thomas Jansing Software-Engineering Seminar (WS 2008/2009) 05. Januar 2009
2 Agenda Web-Frameworks Ruby on Rails Live-Demo Erweiterungen Fazit 1
3 Agenda Web-Frameworks Ruby on Rails Live-Demo Erweiterungen Fazit 2
4 Web-Anwendungen Wer hat Enterprise Application Integration gehört? Bedeutung von Web-Anwendungen: Bekannt Problem bei Web-Anwendungen: Heterogenität Programmier-/Skriptsprachen i Datenbanken Web-Server Betriebssysteme/Plattformen Ziel von Web-Frameworks: Erstellen von Web- Anwendungen vereinfachen Kombination von Komponenten zu einer Entwicklungsumgebung 3
5 Web-Frameworks Beispiele für Web-Frameworks.NET DotNetNuke,... JAVA Struts, MyFaces,... Perl/PHP Catalyst, Symfony,... Python Django,... Und sonst? 4
6 Web-Frameworks Ruby on Rails Web-Framework: Rails Programmier-/Skriptsprache: Ruby 5
7 Allgemeine Konzepte & Paradigmen Rapid Application Development (RAD) Rapid Web Development & Rapid Prototyping t Anforderungen möglichst schnell in ausführbaren Code umsetzen Extreme Programming (XP) Problemlösung steht im Vordergrund Kleine iterative Schritte mit Rückkopplung Test-driven development (TDD) Tests werden vor der eigentlichen Implementierung geschrieben Agile Softwareentwicklung 6
8 Allgemeine Konzepte & Paradigmen Model-View-Controller (MVC) Architekturmuster Trennung Datenmodel (Model) Präsentationsschicht (View) Steuerungsschicht (Controller) Ziel: Web-Anwendung flexibel gestalten Wiederverwendung Geringerer Pflegeaufwand Geprüfte und stabile Software 7
9 Agenda Web-Frameworks Ruby on Rails Live-Demo Erweiterungen Fazit 8
10 Ruby 1995 von Yukihiro Matsumoto entwickelt Objekt-orientierte ti t Programmier-/Skriptsprache i Unterstützung für Prozedurale und Funktionale Programmierung Dynamische Typisierung während der Laufzeit (Duck-Typing) Principle of least surprise Syntax orientiert sich stark an natürlicher menschlicher Sprache Klassen, Methoden (Java) Modelle, Aktionen (Ruby) 9
11 Erbt von der ActiveRecord Basis-Klasse Ruby - Beispiel Modell: User class User < ActiveRecord::Base def self.authenticate(login,password) user = self.find_by_login(login) Aktion if user user end end User-Objekt gefunden? if user.password!= password user = nil end end User-Objekt wird zurückgegeben 10
12 Rails Von David Heinemeier Hansson entwickelt Mitte 2004: Erste öffentliche Version Ende 2005: Version 1.0 Ende 2007: Version 2.0 Open Source Web-Framework (MIT-Lizenz) Praxisnah Basiert auf Code & Erfahrungen bei der Entwicklung einer Projektmanagement Web-Plattform (basecamphq.com) Konvention über Konfiguration Namenskonventionen vermeiden Konfigurationsaufwand DRY-Prinzip ( Don t repeat yourself ) Vermeidung von Redundanz 11
13 Rails Meta Programmierung Automatische Generierung ng von Programmcode Scaffolding CRUD-Funktionalität der Modelle Modelle, Views, Controller und Tests Objekt-relationes Mapping (ORM) Konfigurationsaufwand sehr gering DB-Migrationen Versionierung der DB-Schemata möglich 3 Umgebungen Development Test Production 12
14 13 Aufbau von Rails
15 Wozu Rails? Rapid Prototyping Ziel: u. a. Entwicklungsdauer/Kosten ngsda reduzieren Wodurch? -> Agilität und Flexibilität Fokus auf Implementierung der Geschäftslogik kürzere Entwicklungs-Zyklen Feedback der Nutzer soll schneller in die Entwicklung einfließen 14
16 Produktiver Einsatz Wer setzt Ruby on Rails produktiv ein? XING.com Qype.com Eins.de Viele mehr... 15
17 16 XING.com
18 17 Qype.com
19 18 Eins.de
20 Produktiver Einsatz Gemeinsamkeiten? Web2.0/AJAX Viel dynamischer Inhalt Große Marktplätze 19
21 Agenda Web-Frameworks Ruby on Rails Live-Demo Erweiterungen Fazit 20
22 Rails Entwicklungsumgebung OS: Windows Vista 32-bit Datenbank: SQLite 3 (Ver ) Ruby (Ver RC1) Ruby-Gems (Paketverwaltung) Rails SQLite3 Adapter Mongrel Web-Server Konfiguration? Nicht notwendig! 21
23 Rails Beispielanwendung: Pizza-Bestell-Service Admin Pizza-Verwaltung alt (Anlegen, Editieren, Löschen) Kunde Bestellung (Anlegen) Unterscheidung Admin, Kunde über Login-Funktionalität (Profil) Was erleichtert die Bestellung? Eine Pizza-Suche Grundgedanke: Rapid Web Development! (Anforderungen möglichst schnell in ausführbaren Code umsetzen) Was wird benötigt? Modelle (Klassen) Attribute Assoziationen (Relationen) zwischen Modellen UML Diagramm 22
24 UML Diagramm Orders_Pizzas Pizza +name : string +price : decimal +ingredients : string * * User +name : string Order +address : string * 1 +delivery_wish : text +zip_ code : integer +city : string +login : string +password : string 23
25 Live-Demo 1. Rails-Projekt erstellen rails pizza-service 2. Modell generieren ruby script\generate scaffold modellname attribut:typ DB migrieren rake db:migrate 4. Testen ruby script\server 24
26 Agenda Web-Frameworks Ruby on Rails Live-Demo Erweiterungen Fazit 25
27 Session-Handling Session-Hash Variable: session Speichert Objekte über mehrere Requests hinweg Anwendung: User-Objekt, Warenkorb... Bsp.: session[:user] = User.find_by_id(id) Flash-Hash Variable: flash Speichert Objekte für zwei aufeinander folgende Requests Anwendung: Fehlermeldungen, Bestätigungen... Bsp.: flash[:error] = Password is incorrect! Im View: <%= flash[:error] %> 26
28 Validierung Validationen werden im Modell definiert Bsp.: Pizza-Modell (app\models\pizza.rb) \ # Alle drei Attribute müssen angegeben werden validates_presence_of :name, :price, :ingredients # Das Attribut Name der Pizza soll eindeutig sein validates_uniqueness_of :name # Das Attribut Preis soll positiv sein validates_numericality_of :price, :on => :create, :greater_than => 0, :message => "Price should be > 0." 27
29 Live Demo Web-Services und AJAX sind fester Bestandteil von Rails Live-Demo 28
30 Sicherheit in Rails SQL-Injection Person.find(:first, :conditions => user = #{params[:user]} + and pw = #{params[:password]} ) Keine Überprüfung! Person.find(:first, :condition => [ user=? and pw=?, user, pw]) Person.find_by_name_and_pw(:user], params[:password]) Implizite Überprüfung! 29
31 Sicherheit in Rails cross-site scripting (XSS) %> Keine Überprüfung! html_escape() Methode von Ruby für alle Variablen verwenden, die erst bei der Generierung der Views ausgewertet werden %> Kein Einschleusen von HTML-Code und/oder Skripten möglich 30
32 Performance Langsamer als Java a EE, da keine VM vorhanden (noch) Vergleichbar mit Django (basiert auf Python) Besser als Symfony (basiert auf PHP) Caching/Load-Balancing g etc. vorhanden Umfangreiche Tools zur Performance-Optimierung vorhanden 31
33 Agenda Web-Frameworks Ruby on Rails Live-Demo Erweiterungen Fazit 32
34 Fazit Heterogenität bei Web-Anwendungen Ruby on Rails als Web-Framework RAD, XP, TDD, MVC als allgemeine Konzepte Konvention über Konfiguration / DRY-Prinzip als spezielle Konzepte Meta-Programmierung / ORM Prototyp mit CRUD-Funktionalität Online-Markplätze/Stadt-Portale als Beispiele für produktiven Einsatz Mögliche Verbesserungen I18n (Thema der aktuellen Rails Versionen) Ruby in einer VM? Performance 33
35 Fazit Vielen Dank für Ihre Aufmerksamkeit! Fragen? 34
36 Rails Verzeichnisstruktur Inhalt Alle wichtigen Bestandteile des MVC-Musters: Hilfs-, Kontroller- und Modell- Klassen, sowie sämtliche Views (*.html.erb) Konfigurationsdateien (z. B. database.yml) DB-Migrationsskripte, SQLite3 Datenbank-Datei (nach Anlegen) Dokumente, die mit rdocs erstellt wurden Zusätzliche Ruby-Bibliotheken/Erweiterungen Logfiles des WEBrick/Mongrel-Servers Verzeichnis app config db doc lib log public Öffentliches Wurzel-Verzeichnis des Web-Servers mit statischen Dateien (z. B. Bilder, JavaScript, CSS,...) script test tmp vendor 35 Start-Skripte (z. B. Server-Start, DB-Konsole, Generatoren) Test-Skripte, Unit-Tests, Funktionale Tests sowie Integrationstests Temporäre Dateien (z. B. Session-Dateien, Cache-Dateien) Plug-Ins und andere Erweiterungen
37 Rails Tags Tag Beschreibung <% RUBY_ CODE %> Code wird ausgewertet, keine Ausgabe <%- RUBY_CODE -%> Code wird ausgewertet, keine Ausgabe, unterdrückt <br> <%= RUBY_CODE %> Code wird ausgewertet und als String ausgegeben <%=h RUBY_CODE %> Code wird ausgewertet, Resultat wird durch html_escape gefiltert <%# RUBY_CODE %> Code wird nicht ausgewertet (Kommentar) 36
38 Web-Services in Rails Version 1.0 SOAP Web-Services Modul: Action Web Service Ab Version 2.0 Übergang auf Representational State Transfer (REST) RESTful Web-Services Modul: Active Resource Services vs. Resources Modelle in Rails sind automatisch Ressourcen! Manipulation durch HTTP-Requests POST, GET, PUT, DELETE 37
39 Templates Templates befinden sich unter app\views\ Drei Template-Engines Embedded Ruby (ERb) [*.html.erb] HTML-Templates Templates mit über Tags eingebettetem Ruby-Code <%=h RUBY_CODE %> XML [*.xml.erb] XML-Templates für Web-Services Ruby JavaScript (RJS) [*.js.rjs] Übersetzt Ruby Code zur Laufzeit in JavaScript Controller steuert Views (vgl. MVC-Muster) Render :action => Template _ name Anstatt :action auch :template oder :file möglich 38
40 Layouts Layouts unter app\views\layouts\ Wieder Konvention statt Konfiguration Für gesamte Anwendung: application.html.erb Für einzelne Controller: controller.html.erb CSS Einbindung: <%= stylesheet_link_tag 'pizza' %> Statischer Inhalt befindet sich unter public\ public\stylesheets pizza.css public\images public\javascripts script.aculo.us (AJAX-Framework) Prototype (AJAX-Framework) 39
Ruby on Rails. Thomas Baustert Ralf Wirdemann www.b-simple.de. Alternative zur Web-Entwicklung mit Java? 27.06.2005 www.b-simple.
Ruby on Rails Alternative zur Web-Entwicklung mit Java? Thomas Baustert Ralf Wirdemann www.b-simple.de 27.06.2005 www.b-simple.de 1 Überblick Was ist Ruby on Rails? Weblog Demo Rails Komponenten Controller,
MehrRuby on Rails. Florian Ferrano Ralf Heller Markus Nagel
Ruby on Rails Florian Ferrano Ralf Heller Markus Nagel Überblick Ruby on Rails Ruby Rails Geschichte MVC allgemein MVC in Rails Scaffolding Webserver Installation Beispiele Wo wird Rails verwendet? Ausblick
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
Grundlagen der Web-Entwicklung Ruby on Rails Thomas Walter 10.01.2011 Version 1.0 aktuelles aktuelle Browserstatistiken Weltweit, Quelle www.netmarketshare.com 2 aktuelles aktuelle Browserstatistiken Europaweit,
MehrGIS mit Ruby on Rails
FOSSGIS 2010 Pirmin Kalberer Sourcepole AG, Bad Ragaz www.sourcepole.ch ./configure && make && make install apt-get install postgis XML, SOAP Http, REST CVS git Linux? Linux! RUP Agile Software- Entwicklung
MehrRuby on Rails Einführung & Überblick
Ruby on Rails Einführung & Überblick Thomas Baustert & Ralf Wirdemann www.b-simple.de 1 Softwareentwicklung Projektunterstützung Coaching Beratung Schulungen Java/Java EE Ruby on Rails www.rapidwebdevelopment.de
MehrGrundlagen der Web-Entwicklung INF3172
Grundlagen der Web-Entwicklung INF3172 MVC-Frameworks: Ruby on Rails & CakePHP Thomas Walter 09.01.2014 Version 1.0 aktuelles 2 3 die Scriptsprache Ruby ein moderner Nachfolger von Perl sauber objektorientiert
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 Framework für Web (2.0) Anwendungen Ziel: Beschleunigung der Entwicklung Konzept des Agilen Programmierens Ruby InterpreDerte Sprache Rails IntegraDonen
MehrGroovy on Grails. Informatik-Seminar WS06/07. Alexander Treptow. Groovy on Grails Alexander Treptow (minf2622) 1
Groovy on Grails Informatik-Seminar WS06/07 Alexander Treptow Groovy on Grails Alexander Treptow (minf2622) 1 Übersicht Groovy on Grails Projektstruktur Controllers Views & Layout Dynamic Tag Libraries
MehrInhaltsverzeichnis. vii
D3kjd3Di38lk323nnm vii 1 Einleitung... 1 1.1 Zielsetzung...... 1 1.2 Konventionen... 2 1.3 Was ist neu in Rails 3.1?... 3 1.4 Aufbau des Buchs.... 7 1.5 Wer dieses Buch lesen sollte.... 8 1.6 Wie man dieses
MehrKompendium der Web-Programmierung
. Thomas Walter Kompendium der Web-Programmierung Dynamische Web-Sites Mit 510 Abbildungen und 22 Tabellen 4ü Springer OOM- Hinweise zum Gebrauch des Buches XIII Teil I Grundlagen der Web-Programmierung
MehrMartin Marinschek- Wolfgang Radinger. Ruby on Rails. Einstieg in die effiziente Webentwicklung. [Tu dpunkt.verlag
Martin Marinschek- Wolfgang Radinger Ruby on Rails Einstieg in die effiziente Webentwicklung [Tu dpunkt.verlag Inhaltsverzeichnis 1 Ruby on Rails -»Bitte Einsteigen«1 1.1 Web-Entwicklung und Entwicklung
MehrEinführung in Ruby on Rails
Johannes Gilger & Matthias Lederhofer der RWTH Aachen Network Operation Center 21. Juli 2010 Übersicht Ruby Rails Warum man Rails benutzen möchte Konzepte (DRY, MVC, Convention over Configuration) ActiveRecord
MehrRuby on Rails. Im Rahmen des Seminares Programmiersprachen SS09 Steffen Schildknecht
Ruby on Rails Im Rahmen des Seminares Programmiersprachen SS09 Steffen Schildknecht Einleitung Ruby Interpretierte, dynamische Skriptsprache Everything is an object human-oriented Ruby on Rails Serverseitiges
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 Application Framework for web development Hauptziel: Agiles Programmieren Benutzt die meisten Strategien agilen Programmierens Serverseitig in Ruby geschrieben,
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
MehrInhaltsverzeichnis. Michael Johann. Ruby on Rails für JEE-Experten. Umfassender Einstieg in Rails und JEE-Integration mit JRuby
sverzeichnis Michael Johann Ruby on Rails für JEE-Experten Umfassender Einstieg in Rails und JEE-Integration mit JRuby ISBN: 978-3-446-41535-5 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41535-5
MehrInhaltsverzeichnis. Einleitung
Einleitung 1 Rapid Web Development 1.1 Alle reden von Web 2.0 1.2 Was ist ein Web-Development-Framework? 1.3 Die zentralen Komponenten von TurboGears Python Kid-Templating CherryPy SQLObject Weitere Komponenten
MehrContentmanagement Übung
Schlüsselqualifika6on 10 Contentmanagement Übung Dipl. Inf. Benjamin Bock Topic Maps Lab, Universität Leipzig bock@informa6k.uni leipzig.de Organisatorisches 2 Ort und Zeit Johannisgasse 26, Raum 3 10
MehrEclipse Modeling Framework Modellgetriebene Softwareentwicklung Prof. Andreas Schmidt
Eclipse Modeling Framework Modellgetriebene Softwareentwicklung Prof. Andreas Schmidt Sören Bühler buso1011 36811 Julia Haßlinger haju1013 37141 Anja Heinzberger hean1017 36622 Agenda Allgemeines Historie
MehrTestgetriebene Web-Entwicklung mit Ruby on Rails
Testgetriebene Web-Entwicklung mit Ruby on Rails Thomas Baustert www.b-simple.de www.b-simple.de 1 Agenda Rails Einführung Test-Unterstützung in Rails Testgetriebene Web-Entwicklung mit Rails Live Demo
MehrRUBY ON RAILS. Markus Knofe. Informatik-Seminar WS 06/07 Ruby on Rails - Markus Knofe (minf2434)
RUBY ON RAILS Markus Knofe 1 Gliederung a) Was ist Rails b) MVC in Rails c) Rails praktisch d) Fazit 2 Rails ist innovativ! 3 Rails ist innovativ! Rails ist elegant! 4 Rails ist innovativ! Rails ist elegant!
MehrDatenbankapplikationen mit Ruby on Rails. Datenbanksysteme 2011 Universität Osnabrück Gastvorlesung von Nicolas Neubauer
Datenbankapplikationen mit Ruby on Rails Datenbanksysteme 2011 Universität Osnabrück Gastvorlesung von Nicolas Neubauer Ruby on Rails: Einstieg Ruby plattformunabhängige, höhere Programmiersprache 1995
MehrObjektorientierte Programmierung
Bernhard Lahres, Gregor Rayman Objektorientierte Programmierung Das umfassende Handbuch Galileo Press 1.1 Was ist Objektorientierung? 13 1.2 Hallo liebe Zielgruppe 14 1.3 Was bietet dieses Buch (und was
MehrRuby on Rails. Geschichte Ruby Rails Live Demo
Ruby on Rails Geschichte Ruby Rails Live Demo Seite 1 Geschichte Ruby "Vater": Yukihiro matz Matsumoto 1993: Beginn der Arbeiten an Rubys 1995: 1. public Release von Ruby 1996: erlangt "Akzeptanz der Massen"
MehrProgrammieren im Web 2.x
Programmieren im Web 2.x Ein Überblick über die Webentwicklung im Jahre 2011 Johannes Leers 26. März 2012 1 Motivation 2 Web-Frameworks 3 Mobile Computing 4 WebGL 5 Cloud Computing 6 Fazit Native Programme
MehrSicherheit von Ruby On Rails Heiko Webers Heiko Webers Ruby On Rails Security Project: www.rorsecurity.info Autor von Ruby On Rails Security, ab August 2007 bei der OWASP Ruby On Rails Beratung mit Sicherheit
MehrPraxisbuch Objektorientierung
Bernhard Lahres, Gregor Rayman Praxisbuch Objektorientierung Von den Grundlagen zur Umsetzung Galileo Press 1.1 Was ist Objektorientierung? 11 1.2 Hallo liebe Zielgruppe 12 1.3 Was bietet dieses Buch (und
MehrIntegration im Enterprise Umfeld
Integration im Enterprise Umfeld Sven Tissot pdv Technische Automation + Systeme GmbH Hamburg DOAG 2007 pdv Technische Automation + Systeme GmbH, 2007 1 Eckdaten Individual-Software Client/Server- und
MehrExtreme Programming mit Rails. xpdays, 23. November 2007 Tammo Freese
Extreme Programming mit Rails xpdays, 23. November 2007 Tammo Freese Agenda Ruby on Rails wird als agil vermarktet Aber: Was ist Ruby on Rails agil, was nicht? Konkret: Wie gut ist Ruby on Rails für XP
Mehr<Insert Picture Here> Generierung von ADF-Applikationen aus Metadaten des Oracle Designer
Generierung von ADF-Applikationen aus Metadaten des Oracle Designer Jürgen Menge Oracle Deutschland Oracle Designer - Metadaten Investment vieler Anwender liegt in den Metadaten des
Mehr<Insert Picture Here> MySQL Workbench für Einsteiger
MySQL Workbench für Einsteiger Ralf Gebhardt Principal Sales Consultant MySQL Agenda MySQL Workbench 5.2 Design, Entwicklung, Administration MySQL Workbench Varianten Erweiterbarkeit
MehrDie Alternative zum Web-Form Modell
Marc André Zhou Solution Architect www.dev -sky.net www.just -sp.net Die Alternative zum Web-Form Modell dotnet Cologne 03.05.2013 Agenda Web Forms vs. MVC ASP.NET MVC Features Web API ODATA Eine ASP.NET
MehrSoftwareentwicklung in der industriellen Praxis
Softwareentwicklung in der industriellen Praxis Cloud-Systeme: Besonderheiten bei Programmierung und Betrieb Steffen Gemkow / Paul Fritsche - ObjectFab GmbH 26.11.2012 Simple is beautiful Don t repeat
MehrFrühling für iphone-apps
Spring-basierte Backends für ios-applikationen Stefan Scheidt Solution Architect OPITZ CONSULTING GmbH OPITZ CONSULTING GmbH 2010 Seite 1 Wer bin ich? Software-Entwickler und Architekt Trainer und Coach
Mehrbsc Education Center bsc solutions GmbH & Co. KG Industriestr. 50 b, Walldorf Tel:
bsc Education Center bsc solutions GmbH & Co. KG Industriestr. 50 b, 69190 Walldorf education@bsc-solutions.com Tel: +49 6227 384 85-100 www.bsc-solutions.com SCHULUNGSÜBERSICHT: SAPUI5 / SAP Fiori BSC-UI-300
MehrJakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen <henning@apache.org>
Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen Henning P. Schmiedehausen Turbine - ein berblick Open Source unter Apache License 100% pure Java, Java 2 (JDK 1.2+) Servlet-basiertes
MehrAJAX und Ruby on Rails
AJAX und Ruby on Rails Web-2.0-Kongreß 2006-10-10 Frankfurt (slightly updated for AWE11) Prof. Dr.-Ing. Carsten Bormann 1 Was ist Web 2.0? (nach Paul Graham) (1) AJAX (2) Demokratie (Participation
MehrAufbau einer Web 2.0 Community mit Grails. DOAG Konferenz + Ausstellung 2010 Nicole Hoock, esentri consulting GmbH
Aufbau einer Web 2.0 Community mit Grails DOAG Konferenz + Ausstellung 2010 Nicole Hoock, esentri consulting GmbH Agenda Firmenvorstellung Einführung ins Thema Grundlagen Live-Vorführung Ausblick & Erfahrungswerte
MehrUm asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht.
Technisches Design Inhalt Design Übersicht Menü und DispatcherServlet DWR Servlet Viewer Servlets Controllers Managers Sicherheit Anwendung Architektur Component Diagram Deployment Diagram Komponente Sequence
MehrMotivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen
Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Soll ich Modellieren oder Programmieren? sowohl als auch!!! Produktivitäts-Steigerung
MehrDatenbankapplikationen mit Ruby on Rails. Datenbanksysteme 2009 Universität Osnabrück Gastvortrag von Nicolas Neubauer
Datenbankapplikationen mit Ruby on Rails Datenbanksysteme 2009 Universität Osnabrück Gastvortrag von Nicolas Neubauer Ruby on Rails: Einstieg Ruby plattformunabhängige, höhere Programmiersprache 1995 erschienen
MehrRich Internet Applications mit Adobe Flex 3
Simon Widjaja Rich Internet Applications mit Adobe Flex 3 ISBN-10: 3-446-41366-9 ISBN-13: 978-3-446-41366-5 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41366-5
MehrKomponentenorientierte Software-Entwicklung. Seite 1 / 42
Seite 1 / 42 Wiederholung Messaging Java Messaging Service (JMS) Pub/Sub P2P Messaging Middleware XMPP-Protokoll Java API for XML-Processing (JAXP) Java API for XML-Binding Webservices / SOA Simple Object
MehrRapid Java wie mit Forms
DOAG Konferenz 2011 Rapid Java wie mit Forms Java aktuell: XDEV 3 ist die erste professionelle Java IDE für Rapid Application Development. Viele RAD-Funktionen und die Arbeitsweise damit erinnern sehr
MehrWeb 2. Gang. Python User Group Köln 13.12.2006 Christopher Arndt <chris@chrisarndt.de>
Web 2. Gang Praktische Einführung in die Entwicklung von Webanwendungen mit TurboGears Python User Group Köln 13.12.2006 Christopher Arndt Was ist TurboGears? Ein Python Web-Meta-Framework!
MehrInteraktive Karten als Rich Internet Applications. Ruben Schempp Anwendungen
Interaktive Karten als Rich Internet Applications Ruben Schempp Anwendungen 2 Gliederung Szenario Vision Verwandte Projekte und Frameworks Rich Internet Applications Technik Zusammenfassung Fazit Interaktive
MehrProfessionelle Webentwicklung mit Ruby on Rails 2
Jens-Christian Fischer Professionelle Webentwicklung mit Ruby on Rails 2 Das Praxisbuch für Entwickler mitp Über dieses Buch 15 Ein hilfreiches Buch? 15 Voraussetzungen 16 Aufbau des Buches 16 Ist dieses
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)
MehrEuropäisches Satellitensystem Iridium?
Europäisches Satellitensystem Iridium? Europäisches Satellitensystem Iridium? Europäisches Satellitensystem Iridium? 25 Christopher Avery The Responsibility Process Responsibility Owning your ability and
MehrJens Ferner. Profikurs PHP-Nuke
Jens Ferner Profikurs PHP-Nuke Einsatz, Anpassung und fortgeschrittene Progammierung PHP-Nuke vom Start bis zur strukturierten Anwendung - Mit umfassender interner Funktionsreferenz 2., verbesserte und
MehrWie sichert man APEX-Anwendungen gegen schädliche Manipulationen und unerwünschte Zugriffe ab?
APEX aber sicher Wie sichert man APEX-Anwendungen gegen schädliche Manipulationen und unerwünschte Zugriffe ab? Carola Berzl BASEL BERN BRUGG GENF LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR.
MehrOracle9i Designer. Rainer Willems. Page 1. Leitender Systemberater Server Technology Competence Center Frankfurt Oracle Deutschland GmbH
Oracle9i Designer Rainer Willems Leitender Systemberater Server Technology Competence Center Frankfurt Oracle Deutschland GmbH Page 1 1 Agenda 9i Designer & 9i SCM in 9i DS Design Server Generierung &
MehrSchnell performante Web-Applikationen entwickeln. Markus Zapke-Gründemann LinuxTag 2012
Schnell performante Web-Applikationen entwickeln Markus Zapke-Gründemann LinuxTag 2012 Übersicht Vorstellung Was ist Django? Architektur Code Django Roadmap Entwicklungsprozess Django in Zahlen Django
MehrEinführung in Ruby on Rails Seminararbeit FHNW 2006 Markus Stauffiger
Einführung in Ruby on Rails Seminararbeit FHNW 2006 Markus Stauffiger Seite 1 von 12 Inhaltsverzeichnis Inhaltsverzeichnis...2 0. Was ist Ruby on Rails?...3 1. Installation von Ruby...3 2. Beispiel Applikation...4
MehrLeichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG
05.07.2012 Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG Agenda 01 Einführung 02 Architektur 03 Lösungen 04 Zusammenfassung 2 2 Agenda 01 Einführung 02
MehrAus EAI wird SOA: Integration mit Forms und ADF. pdv TAS. Torsten von Osten, Sven Tissot pdv Technische Automation + Systeme GmbH Hamburg
Aus EAI wird SOA: Integration mit Forms und ADF Torsten von Osten, Sven Tissot pdv Technische Automation + Systeme GmbH Hamburg DOAG 2007 pdv Technische Automation + Systeme GmbH, 2007 Seite 1 Eckdaten
MehrWeb 2.0 Architekturen und Frameworks
Web 2.0 Architekturen und Frameworks codecentric GmbH Mirko Novakovic codecentric GmbH Quality Technische Qualitätssicherung in Software-Projekten mit Fokus auf Performance, Verfügbarkeit und Wartbarkeit
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
MehrAufbau einer Web 2.0 Community mit Grails
Aufbau einer Web 2.0 Community mit Grails Nicole Hoock esentri consulting GmbH Karlsruhe Schlüsselworte: Web 2.0, Grails, Community, Social Network, Java, Open Source, Rapid Application Development Einleitung
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:???
MehrAWE12. Carsten Bormann
AWE12 Carsten Bormann Warum gut für Dich und für Deine Firma ist Carsten Bormann 2 Warum gut für Dich und für Deine Firma ist Carsten Bormann 2 Warum gut für Dich und für
MehrAdobe Flex & Grails RIA, REST und XML
Adobe Flex & Grails RIA, REST und XML Pascal Schudel Consultant pascal.schudel@trivadis.com Mischa Kölliker Principal Consultant mischa.koelliker@trivadis.com JUGS Zürich, 8. Juli 2010 Basel Bern Lausanne
MehrGroovy und CouchDB. Ein traumhaftes Paar. Thomas Westphal
Groovy und CouchDB Ein traumhaftes Paar Thomas Westphal 18.04.2011 Herzlich Willkommen Thomas Westphal Software Engineer @ adesso AG Projekte, Beratung, Schulung www.adesso.de thomas.westphal@adesso.de
MehrMultimedia im Netz Wintersemester 2012/13
Multimedia im Netz Wintersemester 2012/13 Übung 10 Ludwig-Maximilians-Universität München Multimedia im Netz WS 2012/13 - Übung 10-1 Lösung zu Übungsblatt 08 Ludwig-Maximilians-Universität München Multimedia
MehrWebentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo
Webentwicklung mit Vaadin 7 Theoretische und praktische Einführung in Vaadin 7 Christian Dresen, Michael Gerdes, Sergej Schumilo Agenda Allgemeines Architektur Client-Side Server-Side Vaadin UI Components
MehrVortrag. Thema: Apache Struts + Tiles
Vortrag Thema: Apache Struts + Tiles Mohamed Haji Julian Cordes Robin Röttger Web 2.0 WS 2014/2015 1 Inhalte 1. Einleitung 2. Grundlegendes mit Struts 3. Apache Tiles (mit Struts) 4. Praktikum 5. Diskussion
MehrWir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase.
Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG www.agentbase.de 1 Agenda Grundlagen Modernisierung Möglichkeiten mit Domino
MehrPylons & ExtJS. PyCologne Vortrag Köln, 11.6.2008. smart:elligence Unternehmensberatung, Düsseldorf
Pylons & ExtJS PyCologne Vortrag Köln, 11.6.2008 smart:elligence Unternehmensberatung, Düsseldorf Agenda WSGI Basics & Framework Pylons die wichtigsten Komponenten Pylons Laufzeitumgebung, Applikations-Struktur
MehrNeue Wege mit Contao 4
Neue Wege mit Contao 4 Schöne neue PHP-Welt Contao Konferenz 2016 Über mich Andreas Schempp / terminal42 gmbh Schweiz Contao Core Entwickler Vorstand (Schatzmeister) Contao Association Hauptentwickler
MehrDirk Reinemann Working Student Sales Consulting
JDeveloper 12c in 30 Minutes Dirk Reinemann Working Student Sales Consulting Program Agenda 1. Integrated Development Environment 2. Java Development 3. Web Development 4. Team Development 5. Application
MehrProjektgruppe. Thomas Kühne. Komponentenbasiertes Software Engineering mit OSGi
Projektgruppe Thomas Kühne Komponentenbasiertes Software Engineering mit OSGi Anforderungen der PG IDSE an ein Komponenten- Client Nativer Client Web Client Alternativen IDSE Nutzer Szenario Pipe IDSE
MehrSpring Dynamic Modules for OSGi Service Platforms
Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick
MehrSkalierbare Webanwendungen mit Python und Google App Engine
Skalierbare Webanwendungen mit Python und Google App Engine Oliver Albers 03. Juli 2008 1/32 Einführung Worum geht es? Pro und Contra Technik Genereller Aufbau Anwendungskonfiguration Verarbeitung von
MehrStandards, Technologien und Architekturen moderner Web-Anwendungen
Standards, Technologien und Architekturen moderner Web-Anwendungen Kompakt-Intensiv-Training In unserer zweitägigen Schulung "Standards, Technologien und Architekturen moderner Web-Anwendungen" erlangen
MehrErfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH
Erfahrungen und Erkenntnisse Klaus Richarz, HBT GmbH Java Enterprise Edition 5.0 JBoss Seam Konsequenzen für Realisierung Qualitätssicherung Build & Deployment Fazit & Empfehlungen JBoss Seam in Projekten,
MehrDie Esda Scaffolding Extension für Ruby on Rails
Die Esda Scaffolding Extension für Ruby on Rails Daniel Schreiber 22. März 2015 22. März 2015 Daniel Schreiber 1 / 25 Einführung Demo 22. März 2015 Daniel Schreiber 2 / 25 Einführung Hintergrund Entstanden
MehrETL-Industrialisierung mit dem OWB Mapping Generator. Irina Gotlibovych Senior System Beraterin
ETL-Industrialisierung mit dem OWB Mapping Generator Irina Gotlibovych Senior System Beraterin MT AG managing technology Daten und Fakten Als innovativer Beratungs- und IT-Dienstleister zählt die MT AG
MehrRESTful Web. Representational State Transfer
RESTful Web Representational State Transfer 1 Warum REST? REST ist die Lingua Franca des Webs Heterogene (verschiedenartige) Systeme können mit REST kommunizieren, unabhängig von Technologie der beteiligten
MehrEnterprise PHP 5. Serviceorientierte und webbasierte Anwendungen für den Unternehmenseinsatz. von Johann-Peter Hartmann, Björn Schotte. 1.
Enterprise PHP 5 Serviceorientierte und webbasierte Anwendungen für den Unternehmenseinsatz von Johann-Peter Hartmann, Björn Schotte 1. Auflage Hanser München 2008 Verlag C.H. Beck im Internet: www.beck.de
MehrZSDGMDZFGW... 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
MehrXE IDE Cloud Web. secure Data Agile. RAD Studio XE was gibt es Neues in Delphi? Daniel Magin Delphi Experts. Daniel Wolf Delphi-Praxis
RAD Studio XE was gibt es Neues in Delphi? Daniel Magin Delphi Experts Daniel Wolf Delphi-Praxis Matthias Eißing Embarcadero Germany GmbH XE IDE Cloud Web 1 secure Data Agile Agenda Neues in der IDE, RTL
MehrAnforderungsgetriebene Webentwicklung mit Grails:
ne mit Grails: und dem 26.01.2012 und dem Gliederung und dem Projektumfeld Agentur mit weniger als 5 Mitarbeitern Schwerpunkte: mit Typo 3 / PHP ios App-Entwicklung für ipad und iphone und dem Folie 1
MehrArchitektur von REST basierten Webservices
28.11.2005 Architektur von REST basierten Webservices Referent MARK ALTHOFF REST was invented by ROY T. FIELDING and RICHARD N. TAYLOR Geschichtlicher Hintergrund von REST 1994-1995 taucht der Begriff
MehrGoogle Gears Offline Web?
Google Gears ist eine Browsererweiterung, die es in sich hat. Dem Webanwendungsentwickler werden Dienste bereitgestellt, die es ermöglichen, Webanwendungen so zu schreiben, dass eine Offline-Arbeit möglich
MehrSODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG
SODA Die Datenbank als Document Store Rainer Willems Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG vs No Anforderungskonflikte Agile Entwicklung Häufige Schema-Änderungen Relationales
MehrGrundlagen Internet-Technologien INF3171
Fachbereich Informatik Informationsdienste Grundlagen Internet-Technologien INF3171 Cookies & Sessions Version 1.0 20.06.2016 aktuelles 2 Erweiterungen wir betrachten zwei Erweiterungen: Personalisierung
MehrGrails. Weiterführende Themen zu Internet- und WWW-Technologien. Matthias Springer. 06. Juni 2011
Weiterführende Themen zu Internet- und WWW-Technologien 06. Juni 2011 Übersicht 1 Was ist? 2 Übersicht über 3 MVC-Konzept 4 Groovy Beispiele 5 Tutorial: Kleiner Notizblock Web Application Framework Übersicht
MehrPHP eine Einführung. Dipl.-Inf. Frank Hofmann. 18. November Potsdam
PHP eine Einführung Dipl.-Inf. Frank Hofmann Potsdam 18. November 2007 Dipl.-Inf. Frank Hofmann (Potsdam) PHP eine Einführung 18. November 2007 1 / 14 Allgemeines zum Kurs Zielsetzung des Kurses Erlernen
MehrXPages - Core Technologie der Lotus Zukunft? 2011 IBM Corporation
XPages - Core Technologie der Lotus Zukunft? # 2011 IBM Corporation Agenda Hintergründe von XPages Domino Applikations-Entwicklung: Stärken und Schwächen XPages DEMO Ergänzung durch XPages: Die Vorteile
MehrHFT App. Prof. Dr. Gerhard Wanner Michael Kolb B.Sc. Sonntag, 26. Mai 13
HFT App Prof. Dr. Gerhard Wanner Michael Kolb B.Sc. 1 Die Hochschule 2 3 HFT Stuttgart Gegründet 1832 als Winterschule für Bauhandwerker 3.700 Studierende über 100 Professoren über 350 Lehrbeauftragte
MehrHochschule Bochum. Fachbereich Elektrotechnik und Informatik. Arbeitsthese. UML2 Web-Modelling-Tool. Tim Keller
Hochschule Bochum Fachbereich Elektrotechnik und Informatik Arbeitsthese UML2 Web-Modelling-Tool erstellt von: Tim Keller erstellt am: 26. September 2007 Kooperation: innoq Deutschland
MehrDiplomarbeit: Open Source Rapid Web Development Frameworks - Eine Untersuchung der Skalierungsstrategien
Diplomarbeit: Open Source Rapid Web Development Frameworks - Eine Untersuchung der Skalierungsstrategien Ergebnispräsentation Kolloquium Ralf Geschke FOM Köln 27.04.2009 Gliederung Einleitung Vorgehensweise
Mehr3.3.3 Ergebnis...107 3.3.3.1 Die CSS-Datei: main.css...108 3.3.3.2.htaccess, environment.rb, database.yml, doc...110 3.3.3.3 Helper...110 3.3.3.3.
5 Inhaltsverzeichnis 1 Prolog...10 2 Ruby und Ruby On Rails...12 2.1 Erste Schritte...12 2.1.1 Kurzüberblick Ruby...12 2.1.1.1 Allgemeines...12 2.1.1.2 Datentypen und Symbole...14 2.1.1.3 Variable...15
MehrRapid Prototyping einer Web-Anwendung mit Ruby on Rails
Westfälische Wilhelms-Universität Münster Ausarbeitung Rapid Prototyping einer Web-Anwung mit Ruby on Rails im Rahmen des Seminars Software Engineering im Wintersemester 2008/2009 Thomas Jansing Themensteller:
MehrVom Web ins IoT: Schnelleinstieg in Tooling und Entwicklung
Vom Web ins IoT: Schnelleinstieg in Tooling und Entwicklung Webinar 11.05.2017 Andreas Schmidt @aschmidt75 www.cassini.ag www.thingforward.io @thingforward 2 11.05.17 Agenda Devices für das Internet der
MehrEinfach generieren. Susanne Klar, Michael Klar. Generative Programmierung verständlich und praxisnah ISBN Inhaltsverzeichnis
Einfach generieren Susanne Klar, Michael Klar Generative Programmierung verständlich und praxisnah ISBN 3-446-40448-1 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-40448-1
MehrContentmanagement Übung
Schlüsselqualifika6on 10 Contentmanagement Übung Dipl.- Inf. Benjamin Bock Topic Maps Lab, Universität Leipzig bock@informa6k.uni- leipzig.de Scaffolding I und Rails Layouts 2 Zurück zur Rails Anwendung...
Mehr1.1 Ein neues TYP03 entsteht Das Berlin-Manifesto Die Geburtsstunde von TYP03 Flow (FL0W3) Phoenix aus der Asche 21
Inhaltsverzeichnis Vorwort 13 1 Der moderne Weg der Extension-Programmierung 17 1.1 Ein neues TYP03 entsteht 17 1.2 Das Berlin-Manifesto 19 1.3 Die Geburtsstunde von TYP03 Flow (FL0W3) 20 1.4 Phoenix aus
MehrPython VS Perl. Storage Monitoring per API statt SNMP. Björn Müller Marcel Denia. comnet GmbH
Python VS Perl Storage Monitoring per API statt SNMP comnet GmbH Björn Müller Marcel Denia comnet GmbH 13.09.2017 Agenda Über uns Ausgangssituation Umsetzung Python Umsetzung Perl??? 13.09.2017 comnet
Mehr