A Model of the Operation of The Model-View- Controller Pattern in a Rails-Based Web Server



Similar documents
Web Design Technology

Web Development. How the Web Works 3/3/2015. Clients / Server

Avaya Inventory Management System

Outline. Lecture 18: Ruby on Rails MVC. Introduction to Rails

IGW+ Certificate. I d e a l G r o u p i n W e b. International professional web design,

Developing ASP.NET MVC 4 Web Applications MOC 20486

REST web services. Representational State Transfer Author: Nemanja Kojic

Example. Represent this as XML

YouTrack MPS case study

Client-Side Web Programming (Part 2) Robert M. Dondero, Ph.D. Princeton University

Abdullah Radwan. Target Job. Work Experience (9 Years)

Category: Business Process and Integration Solution for Small Business and the Enterprise

Project Plan Log Monitoring Compliance

Front-End Performance Testing and Optimization

WompMobile Technical FAQ

Developing ASP.NET MVC 4 Web Applications

ACORD. Lync 2013 Web-app Install Guide

Developer Tutorial Version 1. 0 February 2015

SUBJECT CODE : 4074 PERIODS/WEEK : 4 PERIODS/ SEMESTER : 72 CREDIT : 4 TIME SCHEDULE UNIT TOPIC PERIODS 1. INTERNET FUNDAMENTALS & HTML Test 1

DreamFactory & Modus Create Case Study

Please contact Cyber and Technology Training at for registration and pricing information.

White Paper On. Single Page Application. Presented by: Yatin Patel

Certified Selenium Professional VS-1083

FormAPI, AJAX and Node.js

Web Browsing Examples. How Web Browsing and HTTP Works

Application layer Web 2.0

10CS73:Web Programming

Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led

Performance Testing for Ajax Applications

CS169.1x Lecture 5: SaaS Architecture and Introduction to Rails " Fall 2012"

ASP.NET. Web Programming. Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics

Web application Architecture

General principles and architecture of Adlib and Adlib API. Petra Otten Manager Customer Support

Personal Profile. Experience. Professional Experience

branddocs Technology edocument Solutions V V

Support Portal User Guide. Version 3.0

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0

Abstract. Description

This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications.

Learning Web App Development

The Learn-Verified Full Stack Web Development Program

Table of contents. HTML5 Data Bindings SEO DMXzone

Jenkins XML API and Mobile Devices

Smartphone Application Development using HTML5-based Cross- Platform Framework

Rails Cookbook. Rob Orsini. O'REILLY 8 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo

Ruby On Rails. CSCI 5449 Submitted by: Bhaskar Vaish

Up and Running with LabVIEW Web Services

AJAX: Highly Interactive Web Applications. Jason Giglio.

Visualizing a Neo4j Graph Database with KeyLines

Web application development landscape: technologies and models

Brief Description of project: This project will be an interactive Javascript. 1. What do you want to accomplish by doing this project?

Building Rich Internet Applications with PHP and Zend Framework

How is it helping? PragmatiQa XOData : Overview with an Example. P a g e Doc Version : 1.3

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Getting started with your AppDev Microsoft Development Library

Modern Web Development From Angle Brackets to Web Sockets

You need to be assigned and logged in to the system by the Records Management Service in order to use it.

Drupal Performance Tuning

Microsoft SQL Server Review

An Introduction to the Development of Web Applications using Ruby on Rails with Ajax

Short notes on webpage programming languages

Table of Contents. Open-Xchange Authentication & Session Handling. 1.Introduction...3

Art of Code Front-end Web Development Training Program

PROJECT MANAGEMENT SYSTEM

Junos Pulse VPN Client Installation

Introduction to web development

Quick Start Guide Mobile Entrée 4

Speed up your web site. Alan Seiden Consulting alanseiden.com

clooca : Web based tool for Domain Specific Modeling

Fusesix. Design Programming Development Marketing. Fusesix Web Services South Carolina, USA. Phone:

Web Enabling Solution for Windows Desktop Applications. White Paper

Web. Programming. Hans- Pe0er Halvorsen, M.Sc. h0p://home.hit.no/~hansha/?page=sojware_development

itop: the open-source ITSM solution

Java/J2EE or Web Developer. Formal Education. Technical knowledge. Spoken Languages

CommonSpot Content Server Version 6.2 Release Notes

IBM Script Portlet for WebSphere Portal Release 1.1

Progressive Enhancement With GQuery and GWT. Ray Cromwell

Pentesting Web Frameworks (preview of next year's SEC642 update)

How To Build A Web App

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation

Web Applications: Overview and Architecture

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.

Integration the Web 2.0 way. Florian Daniel April 28, 2009

1. INTERFACE ENHANCEMENTS 2. REPORTING ENHANCEMENTS

Web Performance. Lab. Bases de Dados e Aplicações Web MIEIC, FEUP 2014/15. Sérgio Nunes

Transcription:

A of the Operation of The -- Pattern in a Rails-Based Web Server January 10, 2011 v 0.4

Responding to a page request 2

A -- user clicks a link to a pattern page in on a web a web application. server January 3, 2011 clicks link Page 1 requests resource from DNS (Domain Name System) parses the URL and routes request to the server. http://domain.com/resource/action/argument 3

The -- web server receives pattern the request on a web URL server (Universal Resource Location). Rails January 3, 2011 uses a routes file to match the URL with a controller action. Page 1 passes request to activates a The routes file contains a list of URL patterns. Each pattern maps to a resource and action. One conventional URL pattern has a server resource, an action to be taken on the resource, and arguments for the action, separated by slashes: http://domain.com/resource/action/argument More on resources later. 4

The -- invoked controller action pattern requests on a web data server from a model. The January 3, model 2011 queries the database and hands data back to the controller. Page 1 requests data from a passes data to queries passes data to 5

The -- controller action then pattern passes on data a web to server a corresponding view. The January 3, view 2011 uses the data and a template to compose a page. Page 1 Don t mistake the view, a template, and a page. It may help to think of the view as page composer. Rails includes the page composer. Developers make templates. The view uses a template to compose a page. renders page from template and passes it to passes data to (Page renderer) 6

The -- controller passes the pattern complete on a page web server to the web server. January 3, 2011 Page 1 passes page to 7

The -- web server serves the pattern page on to a the web browser. server The January 3, browser 2011 renders the new page in place of the first one. Page 2 replaces Page 1 displayed for serves page to 8

Ruby -- on Rails provides pattern a framework on a web for this server MVC flow. It January enables 3, 2011 developers to work on what makes their apps unique rather than spend time re-implementing conventions. clicks link displayed for Page requests resource from serves page to passes request to passes page to activates a requests data from a queries passes data to passes data to passes data to renders page from template and passes it to 9

Developers -- write components pattern in on a a variety web server of languages. January 3, 2011 Page Composed of HTML/CSS/JavaScript E.g. Firefox, Chrome, Safari E.g. Apache Written in Rails routing DSL (Domain Specific Language) Written in Ruby language Written in Ruby language Templates written in Ruby and HTML. s compose templates into pages which link to CSS and JavaScript. E.g. MySQL 10

A -- model with a controller pattern and a on route a web is called servera resource. January 3, 2011 Resources are named with nouns. In a health-related application you may find resources such as: Person Vital Page Goal Prescription Person Resource 11

Attributes -- (or data) of a pattern resource on are a web accessed serverthrough the model. Attributes January 3, 2011 (model methods) are also named with nouns. A person model may have methods such as: Person.date_of_birth Person.height Person.gender Person.allergies Page Person Resource Person 12

Actions -- available to a resource pattern on are a accessed web server through the controller. Actions January 3, 2011 (controller methods) are named with verbs. s typically have one or more standard methods such as: Person.create Person.show Person.update Person.destroy Page Person Resource Person Person 13

Resource -- actions may be pattern visualized on a web in a page, serverfrom a view template. Names January 3, 2011of view templates correspond to controller methods. Templates corresponding to standard controller methods are: person/create.html.erb person/show.html.erb person/update.html.erb person/destroy.html.erb Page Person Resource Person Person person/show.html.erb 14

Responding to an AJAX request 15

Early web applications sent a page from the server after every user interaction. Now, using AJAX (Asynchronous JavaScript and XML) techniques, it is possible to send and receive data and fragments of pages, increasing responsiveness. AJAX involves sending or requesting data from a server asynchronously in the background while the user may continue to interact with the page. The page may be altered when the server responds. (The page also caches some data locally anticipating possible user interactions.)

A -- user action triggers a pattern request on for a additional web server data from a server. January 3, 2011 clicks link Page 1 requests resource from 17

In -- the same way a page pattern request on is a processed, web server the January web 3, 2011 server uses route definitions to pass the data request to the appropriate controller action. Page passes request to activates a 18

The -- controller requests pattern data from on a model. web server The January 3, model 2011 queries the database and hands data back to the controller. Page requests data from a queries passes data to passes data to 19

Rather -- than rendering a pattern page via on a a view, web server the January controller 3, 2011 formats the data as XML or JSON (JavaScript Object Notation) and hands it to the web server. Page formats data for 20

The -- web server s response pattern is rendered on a web in server the current page. January 3, 2011 Page 1 updated displayed for serves data to 21