Designing Web Applications Thaddeus Diamond CPSC 112.

Slides:



Advertisements
Similar presentations
12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.
Advertisements

Lecture 11 Server Side Interaction
HTTP Request/Response Process 1.Enter URL ( in your browser’s address bar. 2.Your browser uses DNS to look up IP address of server.com.
Servlets and a little bit of Web Services Russell Beale.
Multiple Tiers in Action
Introduction to Web Based Application. Web-based application TCP/IP (HTTP) protocol Using WWW technology & software Distributed environment.
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Computer Science 101 Web Access to Databases Overview of Web Access to Databases.
Presented by Mina Haratiannezhadi 1.  publishing, editing and modifying content  maintenance  central interface  manage workflows 2.
Quick Tour of the Web Technologies: The BIG picture LECTURE A bird’s eye view of the different web technologies that we shall explore and study.
Understanding and Managing WebSphere V5
Platform as a Service (PaaS)
Google AppEngine. Google App Engine enables you to build and host web apps on the same systems that power Google applications. App Engine offers fast.
var site="s15gizmodo" var site="s15gizmodo"
WEB DESIGN SOME FOUNDATIONS. SO WHAT IS THIS INTERNET.
Overview of JSP Technology. The need of JSP With servlets, it is easy to – Read form data – Read HTTP request headers – Set HTTP status codes and response.
IT 210 The Internet & World Wide Web introduction.
What makes Facebook do what it does? By Gavin Mais.
By Mihir Joshi Nikhil Dixit Limaye Pallavi Bhide Payal Godse.
Jordan Maxwell ADVANCED PROGRAMMING. DEFINITIONS PHP: A server side Programming language often used in websites. API: ( Application programming interface.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
Server-side Scripting Powering the webs favourite services.
NODEJS, THE JOOMLA FRAMEWORK, AND THE FUTURE IAN MACLENNAN.
Introduction to ArcGIS API for JavaScript
Java Omar Rana University of South Asia. Course Overview JAVA  C/C++ and JAVA Comparison  OOP in JAVA  Exception Handling  Streams  Graphics User.
Introduction to Internet Programming (Web Based Application)
Vision and Goals A flexible data layer for applications in Java, GWT and/or AppEngine. Persistence | Access Rights | Synchronisation over network | REST.
JavaScript – Quiz #9 Lecture Code:
WEB SCIENCE. What is the difference between the Internet and the World Wide Web? Internet is the entire network of connected computers and routers used.
Peter Laird. | 1 Building Dynamic Google Gadgets in Java Peter Laird Managing Architect WebLogic Portal BEA Systems.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
1 CS6320 – SW Engineering of Web- Based Systems L. Grewe.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Copyright © by Shayne R Flint Simplified Web Application Development Shayne R Flint Department of Computer Science Australian National University.
Welcome to WEB 2.0 An Open Laszlo presentation Part 2 Carlos Fernando Scheidecker Antunes
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
Paperless Timesheet Management Project Anant Pednekar.
AJAX and REST. Slide 2 What is AJAX? It’s an acronym for Asynchronous JavaScript and XML Although requests need not be asynchronous It’s not really a.
PHP and AJAX. Servers and Clients For many years we tried to move as much as possible to the server. Weak clients, poor bandwidth, browser compatibility..
IN THIS LESSON WE WILL REVIEW THE STRUCTURE OF THE INTERNET AND HOW BROWSERS ASSEMBLE WEBSITES BASED ON INSTRUCTIONS THEY RECEIVE FROM SERVERS. Internet.
Submitted by: Moran Mishan. Instructed by: Osnat (Ossi) Mokryn, Dr.
Basics Components of Web Design & Development Basics, Components, Design and Development.
National College of Science & Information Technology.
Web Development. Agenda Web History Network Architecture Types of Server The languages of the web Protocols API 2.
Platform as a Service (PaaS)
IS1500: Introduction to Web Development
Platform as a Service (PaaS)
Platform as a Service (PaaS)
WWU Hackathon May 6 & 7.
Web Concepts Lesson 2 ITBS2203 E-Commerce for IT.
CISC103 Web Development Basics: Web site:
AJAX and REST.
4166 Review.
Web Software Model CS 4640 Programming Languages for Web Applications
AJAX.
COMP 101 Introduction.
CISC103 Web Development Basics: Web site:
MEAN stack L. Grewe.
COMP 101 Introduction.
Moodle Scalability What is Scalability?
Google App Engine Ying Zou 01/24/2016.
Unit 6 part 3 Test Javascript Test.
Secure Web Programming
RESTful Web Services.
Architecture of the web
BOF #1 – Fundamentals of the Web
DR. JOHN ABRAHAM PROFESSOR UTPA
Client-Server Model: Requesting a Web Page
Web Application Development Using PHP
Presentation transcript:

Designing Web Applications Thaddeus Diamond CPSC 112

The Social Network Great Movie Not so great at depicting website-making We will not make Facebook… today

What You See When You Look at Facebook A page Some information Dynamic Links to other pages Pretty pictures

You FB Server FB Server Data Layer Data Layer HTTP Request Hive/MapReduce JavaScript Engine JavaScript Engine HTML, JS, CSS Scripts XMLHttpRequest JSON Raw Facebook’s Actual Architecture (BIGPIPE) Inspired by parallel processor execution Years of development PhD-Level Architecture Facebook’s Actual Architecture (BIGPIPE) Inspired by parallel processor execution Years of development PhD-Level Architecture

And That’s Just the Beginning… BIGPIPE Hive/Hadoop Mobile infrastructure API and JavaScript SDK HipHop for PHP Scribe Logging …

Don’t Be Discouraged! All good websites start somewhere Rome wasn’t built in a day Take more Computer Science classes! Hey, if a Harvard kid can make Facebook…

Google App Engine Fast, scalable web deployment service Abstracts data layer, server environment, away Applications can be written in Python or Java(!) Many powerful APIs, extensions, examples Well-documented

How it Works (An Overview) Servers Virtual Machine Virtual Machine Virtual Machine Virtual Machine Operating System Network Interface Datastore Operating Sandbox Application Code (Python, Java) Application Code (Python, Java) Memory

Our Basic Architecture Clients GET (Address Bar) POST (Submitted form data) Servlet 1 (JAVA) Servlet 1 (JAVA) Servlet 2 (JAVA) Servlet 2 (JAVA) Servlet 3 (JAVA) Servlet 3 (JAVA) Template 1 (HTML/CS S) Template 1 (HTML/CS S) Template 2 (HTML/CS S) Template 2 (HTML/CS S) Template 3 (HTML/CS S) Template 3 (HTML/CS S)

The Next Big Google App! Let’s build a group note repository People will be able to go to the site and see what notes have been posted People will be able to create their own and edit anyone’s Only an administrator can delete a note

Lab Part 2…? Add the ability to specify which class and sort by class Add the ability to specify school and sort by school Add the ability to do rich text editing Add the ability to log in …?