1 / 11

Designing Web Applications

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. FB Server.

anoush
Download Presentation

Designing Web Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Designing Web Applications Thaddeus Diamond CPSC 112

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

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

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

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

  6. 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…

  7. 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

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

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

  10. 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

  11. 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 • …?

More Related