ce419
play

CE419 Session 1: Fundamentals Web Programming Let's begin with the - PowerPoint PPT Presentation

CE419 Session 1: Fundamentals Web Programming Let's begin with the premise that everything you've known up to this point is wrong. 4 Story of the Web The World Wide Web has gone from never heard of it to cant live without


  1. CE419 Session 1: Fundamentals Web Programming

  2. Let's begin with the premise that everything you've known up to this point is wrong. � 4

  3. Story of the Web • The World Wide Web has gone from “never heard of it” to “can’t live without it” in 25 years. • Let’s take a look at its defining moments. � 5

  4. The Early Years 1989 — 1995 AOL, CompuServe, BBS � 6

  5. Tim Berners-Lee 1989 “Vague but exciting” � 7

  6. Mosaic web browser 1993 1.0 � 8

  7. The Early Web Brands 1994 yahoo.com, match.com � 9

  8. Netscape & Web 1994 Standards � 10

  9. The Biggest Launch in 1995 Software History � 11

  10. From Boom to Bust 1995 — 2000 � 12

  11. The e-Commerce Era 1995 � 13

  12. Google is Born 1997 � 14

  13. Browser Wars 1997 Internet Explorer 5.0 � 15

  14. Napster & File Sharing 1999 � 16

  15. The Dot-Com Crash 2000 The bubble has burst. � 17

  16. People-Powered Web 2000 — 2004 � 18

  17. The Web Speeds Up 2000 First Broadband Access � 19

  18. Social Knowledge 2001 Sharing � 20

  19. The First Social 2003 Networks � 21

  20. Voice & Video Call 2003 Skype � 22

  21. The Pirate Bay 2003 Illegal Downloading � 23

  22. Web 2.0 2004 — 2007 Collaborative Web � 24

  23. The Dawn of Facebook 2004 1.2 billion users now. � 25

  24. Google, Google, Google! 2004 Gmail, Google Maps � 26

  25. Video Moves Online 2005 YouTube � 27

  26. The Twitter Age Begins 2006 Hand cannot erase. � 28

  27. The Mobile Web 2007 — 2010 � 29

  28. Cloud Gets Serious 2007 SaaS � 30

  29. Smartphones Take 2007 Center Stage � 31

  30. First Working Draft of 2008 HTML5 � 32

  31. Photo Sharing 2010 — 2013 Instagram, Pinterest, Selfie � 33

  32. Security & Privacy Today Concerns � 34

  33. It’s huge. � 35

  34. Key Layers of the Internet � 36

  35. Application Architectures • Terminals & Mainframes • Traditional Applications � 37

  36. Client-Server Architecture � 38

  37. � 39

  38. Uniform Resource Locator � 40

  39. Request & Response • http://ce.sharif.edu/courses/40419-1/home/ Request GET /courses/40419-1/home/ HTTP/1.1 Host: ce.sharif.edu HTTP/1.1 200 OK Date: Sun, 01 Feb 2015 07:13:09 GMT Content-Type: text/html <!DOCTYPE html> <html> <head> <title>Welcome to CE419</title> <meta content="i'm bored" /> </head> Response � 41

  40. Request & Response HTTP Protocol HTTP Protocol � 42

  41. Why use web apps? • Only need a HTML-capable browser, everything else is done by the server. • Zero client administration cost. • Access everywhere (with an internet connection) • Instantaneous application updates. � 43

  42. Web Browser A deeper look HTML, CSS, JS � 44

  43. Client Side: HTML The Matrix Plot Thomas Anderson is a computer programmer who maintains a double life as "Neo" the hacker. Another hacker named Trinity contacts Neo and informs him that a man named Morpheus can tell him the meaning of "the Matrix”. Cast Keanu Reeves as Thomas A. Anderson / Neo Laurence Fishburne as Morpheus Production In 1994, the Wachowskis presented the script for the film Assassins to Warner Brothers. � 45

  44. Client Side: HTML <h1>The Matrix</h1> <h2>Plot</h2> <p>Thomas Anderson is a computer programmer who maintains a double life as "Neo" the hacker. Another hacker named <strong>Trinity</strong> contacts Neo and informs him that a man named Morpheus can tell him the meaning of <em>the Matrix</em>.</p> <h2>Cast</h2> <ul> <li>Keanu Reeves as Thomas A. Anderson / Neo</li> <li>Laurence Fishburne as Morpheus</li> </ul> <h2>Production</h2> <p>In 1994, the Wachowskis presented the script for the film Assassins to � 46

  45. Client Side: HTML � 47

  46. Client Side: CSS html { font-family: Georgia; } h1 { color:#00FF00; background:black; font-family:Monaco; } h2 { color: blue; border-bottom: 3px double blue; } � 48

  47. Client Side: CSS � 49

  48. Client Side: Javascript object.onclick = function(){ alert('Why are you clicking?!'); }; � 50

  49. Server Side � 51

  50. Server Side • Programming languages, frameworks, web servers, database engines, cache servers, etc. � 52

  51. Server Side • A computer code that generates a response. def hello_world(request): name = request.GET['name'] return """HTTP/1.1 200 OK Content-Type: text/html Hello, {}""".format(name) � 53

  52. Let’s talk about the course! � 55

  53. Course Structure • Client-side Programming: HTML, CSS, Javascript • Quick Overview of Python Programming Language • Server-side Programming • Django Web Framework • Modern Web Development: Real-time applications • Advanced Databases: MongoDB, Redis • A bunch of advanced topics! � 56

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend