Human Factors of XR: Using Human Factors to Design XR Systems
Modern API's.pptx
1. Augustina Adjei - February 2021
An introduction to APIs
What are API’s, how are they used, and how do we use them in
Fintech? - A Simplified Primer on API’s
2. Understanding servers
• A server is a computer program (software)/hardware that provides functionality for other devices (clients).
• Can be a virtual machine (a virtual representation of a physical server, and includes its own operating
system and application, which is kept separate from any other virtual servers that might be running on the
physical server) or physical machine.
• They can share data or resources.
• Servers require at the very least an OS and an application
• The OS acts as a platform for running the server application.
• A single server can have many clients, and a single client can use multiple servers.
• Types of servers: database servers, file servers, mail servers, print servers, web servers, game servers
and application servers.
• Servers are always on because they are commonly used to deliver services that are constantly required,
most servers are never turned off.
3. Understanding servers
Client/server model
• Request - response / client /server model:
• Client sends a request to the server
• The server performs and action and sends the response back to the client
with a result.
4. Understanding servers
Examples of servers
• A web server is a computer program that serves requested HTML pages or files. In this case, a web browser acts as
the client.
• An application server is a program in a computer in a distributed network that provides the business logic for an
application program.
• A proxy server is software that acts as an intermediary between an endpoint device, such as a computer, and another
server from which a user or client is requesting a service.
• A mail server is an application that receives incoming emails from local users -- people within the same domain -- and
remote senders and forwards outgoing emails for delivery.
• A virtual server is a program running on a shared server that is configured in such a way that it seems to each user that
they have complete control of a server.
• A blade server is a server chassis housing multiple thin, modular electronic circuit boards, known as server blades.
Each blade is a server in its own right, often dedicated to a single application.
• A file server is a computer responsible for the central storage and management of data files so that other computers on
the same network can access them.
• A policy server is a security component of a policy-based network that provides authorization services and facilitates
tracking and control of files.
5. Understanding the web.
• Every page is stored in a server - part of a remotely located computer that is
optimised to process requests.
User types in
www.ambitiond.co
Request goes out to ambitiond remote server
Waits for browser to receive
a response
Browser receives a response,
interprets the code and displays
the page
• An API and a server is not the same, the API is a part of a server that receives
the request and sends the response.
6. What is an API?
• API: Application Programming interface
• Application can refer to a piece of software with a distinct function that can
be separated from its environment; or the whole server, app or small part of
an app.
• APIs are a software intermediary that allows two applications to talk to each
other.
• Companies can build APIs for their personal use, or internal use e.g. Weather
apps selling access to its weather data.
7. Benefits of using an API
• Users don’t have to leave your site.
• It tends to be easier to implement, and cheaper than building a solution from
the ground up, making it also more reliable (less bugs etc).
• Extra layer of security as the server is never fully exposed to your phone - the
server only shares what is necessary.
• Allows components to be reusable.
• Scalable and platform independent.
8. A non tech example of an API
Adapted from Mulesoft.
• Sitting in a restaurant with a menu.
• The kitchen is the ‘system’ that will prepare your order.
• The waiter is the API that will take your request and tell the kitchen. Then the
kitchen will make the food. The waiter will wait for the food and then he will
bring it to you.
9. Modern APIs
• Modern APIs are treated like products, designed for consumption for specific
audiences e.g. developers.
• It has its own SDLC of design, testing, building, managing and versioning.
• Modern APIs adhere to standards (i.e. HTTP) that are developer friendly,
easily accessible and easy to understand.
10. An example: VISA API
• Used commonly with
companies, as well as issuer
banks.
• e.g. if you order something
from a site, you enter your
bank details. An
authentication API may be
used to confirm information
about a cardholder, and the
results are given to the client
(the site) in order to continue
processing the order.