Module Details
Module Code: |
SOFT8039 |
Title: |
Progressive Web Applications
|
Long Title:
|
Progressive Web Applications
|
NFQ Level: |
Advanced |
Valid From: |
Semester 1 - 2017/18 ( September 2017 ) |
Field of Study: |
4814 - Computer Software
|
Module Description: |
A web application can be defined as code that is running inside a web browser with an application-like interface that interacts with some server-side software. Progressive Web Apps also provide a native-like experience to the user. In this module the student will learn the skills required to create these applications. They will learn how to create the application-like interfaces, to facilitate communication and storage strategies, to deploy their applications on a variety of devices and environments, and to use the native features of those devices.
|
Learning Outcomes |
On successful completion of this module the learner will be able to: |
# |
Learning Outcome Description |
LO1 |
Create application-like interfaces using web standards. |
LO2 |
Employ the native APIs and features of the devices running the client-side code. |
LO3 |
Develop web applications that can access persistent data in online, low bandwidth and offline environments. |
LO4 |
Adapt their applications for current methods of web application distribution. |
Dependencies |
Module Recommendations
This is prior learning (or a practical skill) that is strongly recommended before enrolment in this module. You may enrol in this module if you have not acquired the recommended learning but you will have considerable difficulty in passing (i.e. achieving the learning outcomes of) the module. While the prior learning is expressed as named MTU module(s) it also allows for learning (in another module or modules) which is equivalent to the learning specified in the named module(s).
|
|
Incompatible Modules
These are modules which have learning outcomes that are too similar to the learning outcomes of this module. You may not earn additional credit for the same learning and therefore you may not enrol in this module if you have successfully completed any modules in the incompatible list.
|
No incompatible modules listed |
Co-requisite Modules
|
No Co-requisite modules listed |
Requirements
This is prior learning (or a practical skill) that is mandatory before enrolment in this module is allowed. You may not enrol on this module if you have not acquired the learning specified in this section.
|
No requirements listed |
Indicative Content |
Native App Interfaces
Creating app-like web pages. Single page applications. Viewport settings. Icons. Design guidelines. Responsive Web Design, Discoverability/SEO.
|
Application Behaviour
Web Application Manifest, Homescreen Installation, Native APIs (Incl. geolocation, device orientation, push notifications, audio/video capture). User input and control mechanisms (mouse, keyboard, touchscreen, drag and drop). Performance
|
Storing Data & Working Offline
Synchronous vs Asynchronous storage. IndexDB, locastorage object, Service Workers, Promises, Caching API
|
Distributing Web Apps
Types of Web Applications: Native vs Web Applications. App Stores. Saas, Native Wrappers, Mobile Webview Apps. Hybrid Web Apps. Progressive Web Apps: Linkability, Installability, Discoverability, Security, Retention, Responsiveness, Progressive Enhancement
|
Module Content & Assessment
|
Assessment Breakdown | % |
Coursework | 100.00% |
Assessments
No End of Module Formal Examination |
Reassessment Requirement |
Coursework Only
This module is reassessed solely on the basis of re-submitted coursework. There is no repeat written examination.
|
The University reserves the right to alter the nature and timings of assessment
Module Workload
Workload: Full Time |
Workload Type |
Contact Type |
Workload Description |
Frequency |
Average Weekly Learner Workload |
Hours |
Lecture |
Contact |
Lecture delivering theory underpinning learning outcomes. |
Every Week |
2.00 |
2 |
Lab |
Contact |
Lab to support learning outcomes. |
Every Week |
2.00 |
2 |
Independent & Directed Learning (Non-contact) |
Non Contact |
Independent Study. |
Every Week |
3.00 |
3 |
Total Hours |
7.00 |
Total Weekly Learner Workload |
7.00 |
Total Weekly Contact Hours |
4.00 |
Workload: Part Time |
Workload Type |
Contact Type |
Workload Description |
Frequency |
Average Weekly Learner Workload |
Hours |
Lecture |
Contact |
Lecture delivering theory underpinning learning outcomes. |
Every Week |
2.00 |
2 |
Lab |
Contact |
Lab to support learning outcomes. |
Every Week |
2.00 |
2 |
Independent & Directed Learning (Non-contact) |
Non Contact |
Independent Study. |
Every Week |
3.00 |
3 |
Total Hours |
7.00 |
Total Weekly Learner Workload |
7.00 |
Total Weekly Contact Hours |
4.00 |
Module Resources
|
Recommended Book Resources |
---|
-
Tal Ater. (2017), Building Progressive Web Apps: Bringing the Power of Native to the Browser, O'Reilly, [ISBN: 9781491961650].
| Supplementary Book Resources |
---|
-
David Flanagan. (2011), JavaScript: The Definitive Guide, 6. O'Reilly, [ISBN: 9780596805524].
-
Ethan Marcotte, Jeremy Keith. (2014), Responsive Web Design, 2. A Book Apart, [ISBN: 9781937557188].
-
Russ Ferguson, Christian Heilmann. (2013), Beginning JavaScript with DOM Scripting and Ajax, 2. Apress, [ISBN: 9781430250920].
| This module does not have any article/paper resources |
---|
Other Resources |
---|
-
Website, Google. Progressive Web Apps,
-
Website, Mozilla. App Center, MDN,
-
Website, Addy Osmani. Getting Started wth Progressive Web Apps,
|
|