WAD Questions Flashcards
Which symbol is used to denote an ID selector?
#
If you wanted to add style to a paragraph, which selector would you use in the CSS?
p
The best way to use CSS is:
external
Given the html code <div>hello</div>, what CSS command would select this element, and only this element?
div
Why do we use CSS?
to separate the presentation from the data
Which CSS command sets the element text to red?
color: red;
List the complexities of web applications
“Everything that is impossible or very difficult to know at the beginning of a project, and which only becomes clear during the project itself.”
Collusion of languages - Markup languages, Programming languages, Database Query languages are all used in a single web application
Shifting standards - Document Object Model, JSON/XML
Web browser compatibility - Browser wars encourage new “unique” features
HTTP is a stateless protocol - most apps require persistence of state
Version control systems provide you with what three important capabilities?
- Reversibility: the ability to back up to a previous state if you discover that some modification you did was a mistake or a bad idea.
- Concurrency: the ability to have many people modifying the same collection of files knowing that conflicting modifications can be detected and resolved.
- History: the ability to attach historical data to your data, such as explanatory comments about the intention behind each change to it. Even for a programmer working solo, change histories are an important aid to memory; for a multi-person project, they are a vitally important form of communication among developers.
List the advantages of the Tiers in the architecture
- Each tier can be coded separately. That way the programmer doesn’t have to deal with everything. Separation of concerns.
- Tiers encapsulate complexity
- Tiers can be distributed across a number of machines - provides flexibility
- Tiers can be replicated across a number of machines - provides scalability.
- The different tiers can be distributed over the network, which increases efficiency.
list reasons for separating the different types of concerns
- Simplifies development and maintenance of programs.
- Allows for individual sections to be reused, developed and updated independently
- Allows for modifying and updating one section of code without the need to know how other parts work or making corresponding changes to those sections.
Define and/or Describe web application frameworks
- A set of classes that embodies an abstract design for solution of family of problems.
- A reusable design of a system or part of a system expressed as a set of abstract classes and the way the instances of those classes collaborate.
- Prefabricated software building blocks that programmers can use, extend or customize for specific solutions.
- Large abstract applications in a particular domain that can be tailored for individual applications.
- Reusable software architecture is comprising both design and code.
- Web Application Framework:
Software framework that is designed to support development of dynamic websites, web services, web applications and web resources.
List and describe the Symfony web application framework
- PHP Based
- Main goal - Speed up the creation and maintenance of web applications and replace repetitive coding tasks
- Follows MVC paradigm
- Integrates with many existing technologies
- Heavily inspired by: Django, Ruby On Rails and Spring.
List and describe the Ruby on Rails web application framework
- Ruby Based
- Main goal - Fast, easy, straightforward development
- Convention over Configuration - Decreases the number of decisions the developer needs to make.
- Only specify unconventional aspects of the application
- Don’t Repeat Yourself - Data is stored in one unambiguous place
- Uses MVC
List and describe the Django on Rails web application framework
- Python Based
- Main goal - Ease the creation of complex, data-driven websites.
- Emphasizes reusability and pluggability of components
- Provides an optional optional CRUD interface - Create, Read, Update, Delete
- No MVC - Uses Model-View-Template
To implement a web page in Django, which shows data from a database, what 3 steps would you have to take?
- Create a view to fetch data from the database (create a query, add data to context dict, pass context dict to template)
- Create a url mapping to present the view
- Create a template for that view to present the web page.