Creating High Performance Ionic Applications
This module focuses of various aspects of creating high performance applications with Ionic and Angular. Topics include how the browser rendering process works, using debugging tools to profile and fix performance, reducing bundle sizes, and architecting code to increase performance.
Perceived Performance
Increase how fast your application feels
PROModule Outline
- Source Code & Resources PRO
- Lesson 1: Introduction PUBLIC
- Lesson 2: Understanding Browser Rendering PUBLIC
- Lesson 3: Creating Production Builds PRO
- Lesson 4: Measuring Network Requests PRO
- Lesson 5: Debugging Network Issues PRO
- Lesson 6: Measuring Memory PRO
- Lesson 7: Debugging Memory Issues PRO
- Lesson 8: Measuring Frame Rate PRO
- Lesson 9: Debugging Frame Rate Issues PRO
- Lesson 10: Bundle Size & Lazy Loading PRO
- Lesson 11: Interacting with the DOM Efficiently PRO
- Lesson 12: Perceived Performance PRO
- Lesson 13: Dealing with Large Lists PRO
- Lesson 14: Animation Performance PRO
- Lesson 15: Speeding up Observables & Promises PRO
- Lesson 16: Faster Change Detection with the OnPush Strategy PRO
- Lesson 17: Using Web Workers for Heavy Lifting PRO
- Lesson 18: Conclusion PRO
Lesson Outline
Perceived Performance
I struggled with where this lesson should belong - the performance module, or the user interface and user experience module? It is very much a UI/UX matter as it has no impact on the actual performance of the application, but it does greatly affect how performant your application feels to the user.
I think this concept is critical to understand in the context of both of these modules, so I will be briefly be covering some concepts in this module, and we will spend more time in the UI/UX module walking through specific implementations.
What is Perceived Performance?
You know how often weather services will report a "feels like" temperature as well as the actual temperature? Some factors like the wind and humidity can make the temperature feel hotter or colder to humans than it actually is.
A similar concept applies to performance, the way in which our application is designed can alter the user's perception of how performant it is. There may be no actual difference.
A big part of making an application feel faster is to provide feedback to user interactions as quickly as possible. We've run into scenarios in this module where we have clicked a button and faced a delay before the page actually started loading due to a massive amount of rendering we were asking the browser to do. The process for this specific interaction looked something like this:
- Click page button
- Wait ~2 seconds as page loads
- Navigate to page
Thanks for checking out the preview of this lesson!
You do not have the appropriate membership to view the full lesson. If you would like full access to this module you can view membership options (or log in if you are already have an appropriate membership).