Web Applications and Flask programming Flashcards
Define a native application.
A native application is an application software that is developed for use on a particular platform or device
State 3 advantages of using native applications over web applications.
- Native applications tend to have more direct access to device features, such as the camera, GPS and accelerometer, as compared to web applications
- more user friendly
- Native applications can function without Internet access, unlike web applications
- functions the same way on all devices hence = Native applications are usually more efficient than web applications because native applications are customised for a specific platform
State 5 disadvantages of using native applications over web applications
- platform dependant and hence, More costly to develop native applications as every platform and operating system requires a different version of the native application, unlike web applications, which can run on any device that can run a web browser (higher cost of setup)
- difficulty in maintaining code base as there is a need to update and cater to different code for differet versions and different platforms (difficult)
- Native applications require users to install updates, either manually or automatically, which creates more hassle as compared to web applications, which do not require its users to install updates (hassle)
- Users have to download and install native applications in order to use them, creating more hassle as compared to web applications, which do not require any download or installation to be used (installation incurs large memory space)
- less easily shared and requires sharing of files of native app unlike web that only requires a URL (hassle)
Define a web application.
A web application is an application software that runs on a web server and is accessed by a web browser
State 3 advantages of using web applications over native applications. (5 in total)
- Web applications are more platform independent than native applications because web applications can run on any platform that can run a web browser, unlike native applications, which require a specific version of the native application to be developed for each platform
- It is easier to maintain a web application with a single code base as compared to a native application with multiple code bases for different versions for different platforms
- Users do not need to install updates to use web applications because the updating is done on the server-side, unlike native applications, which require users to install updates
- Users do not need to download and install web applications to use them, unlike native applications, which require users to download and install them
- Web applications are more easily shared as compared to native applications as users only need to share a URL in order to share a web application, while users have to share the program files of a native application in order to share it
State 3 disadvantages of using web applications over native applications. (4 in total)
- Web applications usually have less access to device features, such as the camera, GPS and accelerometer, as compared to native applications
- Web applications may not function in the same way across different browsers or even different versions of the same browser
- Web applications require Internet access in order to be used, unlike native applications
- Web applications may have a less ideal user experience as compared to native applications because web applications are not customised for any specific platform, while native applications are more user friendly as they are customised for specific platforms and OS.
What are the roles of HTML and CSS in creating a web application?
HTML is used to structure the content and give it semantic meaning
CSS is responsible for the design, styling, and layout of the content
How is the GET method and POST method different in sending data? (2 differences)
- Sending data using the GET method appends the data being sent to the URL, making it less secure while sending data using the POST method does not cause the data being sent to appear in the URL, making it more secure
- Flask defaults to using the GET method while in order to use the POST method, it must be specified in both the HTML form attribute and the Python function
What is the role of Flask in creating a web application?
Python operates in the background to process user requests and return a response.
When should GET method be used when sending data?
When data is collected in the form of a non-sensitive input
When should POST method be used when sending data?
Mostly used in sending forms, especially when handling file uploads, or sensitive data.
What are the 10 usability principles?
CURVE:
1. Consistency and standards (follow estabished conventions)
2. User control and freedom (allow users to undo and exit easily)
3. Recognistion rather than recall (making options visible)
4. Visibility of system status (keep users informed of wht happening)
5. Error prevention, detection, recognistion and recovery (provide clear error messages)
HAME:
6. Help and documentation (offer useful help if needed)
7. Aesthetic and minimalist design (clean and uncluttered)
8. Match between system and real world (use familar language and concepts)
9. Effeciency and flexibility of use (allow both beginners and experts to use)
What is User Control and Freedom? What is an example of it?
User have the freedom to navigate and perform actions, including undoing accidental actions.
For example, support undo, redo, and cancel (to exit from the current interaction)
What is Flexibility and Efficiency of Use? What is an example of it?
Able to transform itself to suit multiple users, allowing people to pick whatever way that works for them.
Example: Shortcut buttons, personalisation and customisation. May transform itself for novice and advanced users eg. advanced settings.
What are the tags that must be present in an HTML document?
html
head
title
body