Summary

In this chapter, we covered the background content for working with web applications. We learned about HTML, CSS and JavaScript, the three core technologies used on the World Wide Web today. We also learned about HTTP, the protocol used to request a website from a web server and then receive a response from that server.

We then explored static web pages, which made up the majority of the World Wide Web in the early days. However, as the web became more commonplace, the need for dynamic web pages increased. Initially, that process was very rudimentary, but eventually many web frameworks were created to simplify that process.

A web framework follows the same request-response model used by HTML. However, it uses the path of the web request, along with any additional data included in the request, to determine what page to render. This is a process called routing.

Finally, we saw how many template engines today support template inheritance, allowing us to define a hierarchical set of templates that make each page in our web application include the same basic information and structure.

With this information in hand, we can start building a web application as part of our semester project.

Review Quiz

Check your understanding of the new content introduced in this chapter below - this quiz is not graded and you can retake it as many times as you want.

--- primaryColor: '#512888' secondaryColor: '#cccccc' textColor: black shuffleQuestions: true shuffleAnswers: true locale: en --- # HTML **HTML** is an acronym for what technology? 1. [X] Hypertext Markup Language 1. [ ] Human Text Machine Language 1. [ ] Hyper Technology Marking Language 1. [ ] Home Time Marketing Language # Tim Berners-Lee **Time Berners-Lee** was instrumental in the development of what technology? 1. [X] The World Wide Web 1. [ ] The Internet 1. [ ] The Cloud 1. [ ] Web 2.0 # HTML Elements HTML consists of **elements** that build from text that is surrounded by what construct? 1. [X] Tag 1. [ ] Quote 1. [ ] Paragraph 1. [ ] Punctuation # Basic Page Place the opening and closing tags of the elements of a basic HTMl page in the correct order. (Click and drag to reorder elements) 1. `<html>` 2. `<head>` 3. `<title>` 4. `</title>` 5. `</head>` 6. `<body>` 7. `</body>` 8. `</html>` # CSS **CSS** is an acronym for what technology? 1. [X] Cascading Style Sheets 1. [ ] Covered Style Setups 1. [ ] Combined Setup Style 1. [ ] Cascaded Sheet Setup # CSS Selectors Which of the following CSS selectors would select all HTML elements with the attribute `class="bar"`? 1. [X] `.bar` 1. [ ] `#bar` 1. [ ] `bar` 1. [ ] `class > bar` # JavaScript Which of the following statements about **JavaScript** is true? 1. [X] It is dynamically typed 1. [ ] It was developed alongside Java 1. [ ] It does not support the functional programming paradigm 1. [ ] Variables declared in an `if` statement are only accessible within that statement # HTTP **HTTP** is an acronym for what technology? 1. [X] Hypertext Transfer Protocol 1. [ ] Human Text Transport Process 1. [ ] Hyper Technology Text Patterns 1. [ ] Home Time Talking Pictures # Web Server A **web server** is a piece of software that performs what task? 1. [X] Receiving and Responding to HTTP Requests 1. [ ] Converting HTML into CSS 1. [ ] Uploading Images to the Cloud 1. [ ] Making HTTP Requests and Displaying the Results # Template A **template** in a dynamic web page is best described by which statement? 1. [X] HTML with snippets of code that fill in dynamic values 1. [ ] A default web page used whe the server is first installed 1. [ ] Software that automatically builds web pages from a database 1. [ ] Tool to determine if a website is loading properly # Web Framework A **web framework** is best described by what statement? 1. [X] Software to help developers build web applications 1. [ ] Tools that translate web requests into data 1. [ ] A webpage with blank spaces for data to be inserted 1. [ ] A method for interfacing with a database # Request An **HTTP Request** represents data sent along which pathway? 1. [X] From an HTTP Client to an HTTP Server 1. [ ] From an HTTP Server to an HTTP Client 1. [ ] From a Controller to a View Model 1. [ ] From a View Model to a Controller # Request An **HTTP Response** represents data sent along which pathway? 1. [ ] From an HTTP Client to an HTTP Server 1. [X] From an HTTP Server to an HTTP Client 1. [ ] From a Controller to a View Model 1. [ ] From a View Model to a Controller # Routes A **route** in a web application is best described by which statement? 1. [X] A mapping from a URL to a function call, along with parameters 1. [ ] A database table representing a real-world object 1. [ ] A method for rendering templates in a controller 1. [ ] A pathway for caching data in an HTTP server # Constructed Templates Which concept from object-oriented programming can be used to build **reusable template portions** in a web application? 1. [X] Inheritance 1. [ ] Encapsulation 1. [ ] Message Passing 1. [ ] Polymorphism