De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

4-1-2010Wolter Kaper - Ruby on Rails Webtoepassing ontwerpen Webprogrammeren, week 1.

Verwante presentaties


Presentatie over: "4-1-2010Wolter Kaper - Ruby on Rails Webtoepassing ontwerpen Webprogrammeren, week 1."— Transcript van de presentatie:

1 4-1-2010Wolter Kaper - w.h.kaper@uva.nl1 Ruby on Rails Webtoepassing ontwerpen Webprogrammeren, week 1

2 4-1-2010Wolter Kaper - w.h.kaper@uva.nl2 Vandaag: Opzet van dit vak Intro Ruby on Rails: MVC en REST Onderwerp kiezen Rails code generator uitproberen >> Prototype

3 4-1-2010Wolter Kaper - w.h.kaper@uva.nl3 Http server scripts, waarom? Website management Vb: UvAweb Tweerichtingverkeer Vb: Blackboard

4 4-1-2010Wolter Kaper - w.h.kaper@uva.nl4 Webserver (Apache, Webrick) CGI / FastCGI Server side scripting Programmeertaal: Ruby / PHP / Java Frameworks: Rails /CakePHP / JSF Jouw code Database server gebruiker browser HTTP

5 4-1-2010Wolter Kaper - w.h.kaper@uva.nl5 Invoer komt van een formulier

6 4-1-2010Wolter Kaper - w.h.kaper@uva.nl6 Talen en frameworks voor SSS Microsoft ASP.NET / … PHP / CakePHP Java / JSP, JSF, Hibernate  XML “tags” die java-klassen activeren Ruby / Ruby on Rails Trends  Eerst: programmeerwerk ingebed in webpagina.  Later: logica en vormgeving scheiden.  Nu: Model-View-Controller, ActiveRecord (ORM), REST

7 4-1-2010Wolter Kaper - w.h.kaper@uva.nl7 Ruby-on-Rails ideologie 1: REST “Representational State Transfer”  Ph.D thesis van Roy Fieldingthesis van Roy Fielding Objecten hebben URL´s HTTP werkwoorden: acties  GET, POST, PUT, DELETE Eén object, “resource”, meer representaties:  HTML, XML, … Vb.: GET /photos/17.xml

8 4-1-2010Wolter Kaper - w.h.kaper@uva.nl8 Ruby-on-Rails ideologie 2: MVC Model – View – Controller patroon  Smalltalk, eerste OO taal  Trygve Reenskaug, 1979 Trygve Reenskaug Model: de gegevens, een “business object” View: een presentatie van het object Controller:  Koppelt model aan view  Voert acties uit op het object

9 8-1-2006 Wolter Kaper - kaper@science.uva.nl9 Lagen in een applicatie User Interface Laag Domein Model, Modellen Laag Database Laag Gebruiker

10 8-1-2006 Wolter Kaper - kaper@science.uva.nl10 Lagen volgens MVC + ORM Gebruiker + browser ViewController Model object URL actie Database tabel

11 8-1-2006 Wolter Kaper - kaper@science.uva.nl11 Taakverdeling MVC Gebruiker + browser ViewController Model object URL actie Model: alle domein-logica Controller schakelt model + view in View: toont model-objecten

12 8-1-2006 Wolter Kaper - kaper@science.uva.nl12 Object-Relational Mapping (ORM) Model object Database tabel Rails ORM: elke domein-objectklasse zijn eigen tabel in de database

13 4-1-2010Wolter Kaper - w.h.kaper@uva.nl13 Ruby-on-Rails praktijk

14 4-1-2010Wolter Kaper - w.h.kaper@uva.nl14 Ruby-on-Rails indeling app Je programmeerwerk db Database wijzigingen public Statische HTML script Code generators Webservertje

15 4-1-2010Wolter Kaper - w.h.kaper@uva.nl15 De “app” map

16 4-1-2010Wolter Kaper - w.h.kaper@uva.nl16 Database connectie configureren config/database.yml SQLite MySQL

17 4-1-2010Wolter Kaper - w.h.kaper@uva.nl17 “Scaffolding” een business object in de steigers zetten

18 4-1-2010Wolter Kaper - w.h.kaper@uva.nl18 “Scaffold” resultaten

19 4-1-2010Wolter Kaper - w.h.kaper@uva.nl19 “Scaffold” resultaten: model

20 4-1-2010Wolter Kaper - w.h.kaper@uva.nl20 “Scaffold” resultaten: controller

21 4-1-2010Wolter Kaper - w.h.kaper@uva.nl21 “Scaffold” resultaten: controller

22 4-1-2010Wolter Kaper - w.h.kaper@uva.nl22 “Scaffold” resultaten: views

23 4-1-2010Wolter Kaper - w.h.kaper@uva.nl23 “Scaffold” resultaten: het show view – show.html.erb

24 4-1-2010Wolter Kaper - w.h.kaper@uva.nl24 “Scaffold” resultaten: database migratie - …create_berichts.rb

25 4-1-2010Wolter Kaper - w.h.kaper@uva.nl25 Wat is een database-migratie? Je vindt ze in de db-map Het zijn ruby klassen Ze beschrijven een database wijziging  Twee richtingen: up en down De filenaam bevat datum en tijd Uitvoeren:  Rake db:migrate version=…  Rake db:migrate up  Rake db:migrate

26 4-1-2010Wolter Kaper - w.h.kaper@uva.nl26 Een db-migratie uitvoeren

27 4-1-2010Wolter Kaper - w.h.kaper@uva.nl27 Resultaat db-migratie Gebruik een geschikte client om in je database te kijken.

28 4-1-2010Wolter Kaper - w.h.kaper@uva.nl28 Nu het resultaat bekijken Start een browser en ga naar: http://127.0.0.1:3000/controller/actie/id.format http://127.0.0.1:3000/controller/ (URL´s zijn configureerbaar: config/routes.rb)

29 4-1-2010Wolter Kaper - w.h.kaper@uva.nl29 Uitproberen http://guides.rubyonrails.org/getting_started. htmlhttp://guides.rubyonrails.org/getting_started. html punt 3 t/m 6: de Blog applicatie! rails yourapp ruby script/generate controller … ruby script/generate scaffold … rake db:migrate ruby server/script pas commando’s aan voor jouw applicatie bekijk het resultaat in browser

30 4-1-2010Wolter Kaper - w.h.kaper@uva.nl30 Volgende keer (woensdag) Per Email: Jullie onderwerpkeuze! Wie is contactpersoon? Wij vertellen over: Schermen ontwerpen Objectmodel ontwerpen Database ontwerpen


Download ppt "4-1-2010Wolter Kaper - Ruby on Rails Webtoepassing ontwerpen Webprogrammeren, week 1."

Verwante presentaties


Ads door Google