Introduction - definitions Flashcards

1
Q
  1. What is the Internet?
  2. What is WWW?
A
  1. A global network of computers and other devices, that allows access to information and allows communication with other devices connected to the internet.
  2. World Wide Web is an information system enabling enabling information to be shared through the internet.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is hypertext and hypermedia?

A

Hypertext is simply text with links. Meaning text that contains references to other text.
Hypermedia gives a similar meaning where there is other forms of media included in addition to text, such as videos, images, graphics, audio, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is Client-Server model?

A

A distributed application structure that divides workload between a resource or service provider, server and resource/ service requester, client.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What was the fundamental tool that made Web 2.0 interactive?

A

HTTP

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is Web 3.0?

A

Web 3.0 is meant to be decentralized and built on top of blockchain technologies, with development in Semantic Web, where the web will be a network of meaningful data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is a Web Application?

A

An application accessible from the web.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is CGI?

A

Common Gateway Interface.
- used to write web applications/ scripts
- enables the web server to call an external program and HTTP request information for it to process.
- Each new request starts a new process.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

List disadvantages of CGI (3)

A
  1. When the number of clients increase, the response time increases.
  2. Server is limited to start processes for each request.
  3. Uses platform dependent languages (C++, Pearl)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is Servlet?

A
  • A technology used to create web applications.
  • Robust and scalable cuz of Java
  • An API that provides many interfaces and classes
  • A class that extends capabilities of servers and responds to any incoming requests.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

List advantages of Servlets (5)

A
  1. Creates threads for incoming requests rather than processes. (shared memory and resources)
  2. Better performance
  3. Portability
  4. Robust - JVM
  5. Secure
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is version control?

A

A system that records changes to a file or file system so that specific versions can be recalled later.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

List features of version controlling (5)

A
  1. revert files back to previous state
  2. revert an entire project back to previous state
  3. compare changes over time
  4. see who last modified a file
  5. identify who introduced an issue and when.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the 3 types of version controlling?
Give 2 examples of each.

A
  1. Localized : Local file system
    - copies of all files are maintained on the local device.
    - manually done
  2. Centralized : Subversion, Perforce
    - single server contains all versioned files
    - losing everything is a possibility
  3. Decentralized : GIT, Mercurial
    - clients get a fully mirrored repository (clone), including history
    - Every clone is a full backup of all the data
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is a webserver?

A

A computer software and underlying hardware that accepts a request via HTTP or HTTPS. It retrieves a requested resource and presents it to the client.
- A web server stores/ processes/ delivers web pages to clients.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

List 4 features of a web server
Give 5 examples

A
  1. A web server stores/ processes/ delivers web pages to clients.
  2. Uses protocols such as HTTP, FTP, SMTP to respond to client requests via WWW.
  3. A static web server consists of computer hardware along with HTTP server software.
  4. A dynamic web server is a static web server with additional software.

eg:
1. Apache HTTP server
2. Nginx Web server
3. Lighttpd
4. MS IIS Server
5. Apache Tomcat
6. NodeJS

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is an API?

A

An interface that enables software programs to interact with other software.

17
Q

What is REST?
Define it’s properties

A

REpresenational State Transfer
- entities/ resources = URLs
- actions = HTTP commands

18
Q

List 3 rules for REST API architecture

A
  1. GET shouldn’t change server state
  2. PUT and DELETE are idempotent (repeats are ignored)
  3. POST will change server state each time
19
Q

What is MVC architecture?
Define the 3 components of it.

A
  • Design patterns in SE are reusable solutions to commonly occurring problems.
  • MVC is used for largely data driven applications.
  • Model - talks to data source to retreive and store data.
  • View - asks model for data and presents it in a user-friendly format
  • Controller - listens for data changes or state changes in the UI and notifies the model and view accordingly.
20
Q

List 3 benefits of MVC

A
  1. Better organization of code
  2. Ease of development
  3. Better flexibility
21
Q

Explain Push VS Pull architecture in MVC

A
22
Q
A