Successfully reported this slideshow.
Your SlideShare is downloading. ×

High performance desktop applications with electron

Ad

High performance
desktop applications
With Electron
1

Ad

About me 2
• Application developer for the past 12 years
• Works for Sahaj Software solutions (http://sahajsoft.com)
• Con...

Ad

What is Electron
INTRODUCTION
3

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Loading in …3
×

Check these out next

1 of 24 Ad
1 of 24 Ad

High performance desktop applications with electron

Download to read offline

Electron is a javascript framework to develop desktop applications. In this presentation we will discuss from a performance perspective, how we can solve different challenges involved in a desktop application.

Electron is a javascript framework to develop desktop applications. In this presentation we will discuss from a performance perspective, how we can solve different challenges involved in a desktop application.

Advertisement
Advertisement

More Related Content

Advertisement

High performance desktop applications with electron

  1. 1. High performance desktop applications With Electron 1
  2. 2. About me 2 • Application developer for the past 12 years • Works for Sahaj Software solutions (http://sahajsoft.com) • Contributor to open source projects (https://github.com/mangroveorg/ datawinners) • Likes to focus on technologies that can solve complex problems in a simple way • Worked extensively in ReactJS, Node and Javascript heavy applications • Currently developing desktop applications for different clients
  3. 3. What is Electron INTRODUCTION 3
  4. 4. Advantage Common Desktop application issues 4
  5. 5. Hello World LET’S START 5
  6. 6. Hello World - Demo LET’S START 6
  7. 7. Understanding Behind the scenes7
  8. 8. Devtron - Demo LET’S START 8
  9. 9. ❌It is not • GUI (Graphical User interface) Library ✅It is • Runtime on top of NodeJS runtime • minimal Chromium browser (libchromiumcontent - a lightweight / single shared lib - includes all it’s dependencies) Fundamentals Coming back 9
  10. 10. Who is using Electron 10
  11. 11. 11
  12. 12. 12
  13. 13. 13
  14. 14. 14Advantage What kind of problems electron can solve Distributed applications • thick clients • sync with central server • bring down the load on server side • huge performance benefits both on client side and server side • example - Financial trading domain, Retail domain (point of sale systems)
  15. 15. 15Advantage What kind of problems electron can solve Offline applications • geographical locations (countries) where internet penetration is less • domains where problem logic can be handled on the client side itself - example - Tax computation application - rules are predefined and can be computed on the client side, at least partially. • Save and resume applications - example - editing a large document and resuming the work (multiple days) and finally submitting to server
  16. 16. 16Advantage What kind of problems electron can solve Computation heavy applications • Data analytics and visualisation needs on client specific data • Raw Data can be delivered to the client app from server and thick client can take care to performing computations on top of it • Media processing (audio, video, image) are CPU and memory intensive.
  17. 17. 17Advantage Performance Benefits existing performance improvement methods on High performance desktop
  18. 18. 18Advantage Performance Benefits Chrome’s V8 engine - high-level overview - will come here how electron can take advantage of chromium - to achieve best performance - low memory footprint
  19. 19. Showcase 19 Space radar - Hard disk space analyser - D3js based visualisations on top of the analytics - An open source electron application - Available in github - https://github.com/ sairamindia/space-radar - Forked from - https://github.com/zz85/space- radar
  20. 20. Showcase 20
  21. 21. Node’s Event driven architecture bringing it to Desktop apps 21 - Node’s EventEmitter - overview - How to take advantage of EventEmitters in electron - Demo of a simple app - Async method invocation and how it can benefit desktop apps
  22. 22. 22Advantage Performance Challenges - different challenges involved in Desktop apps - Areas to focus to improve performance
  23. 23. 23Follow up Resources • https://github.com/sairamindia/space-radar • https://github.com/sairamindia/electron_tutorials
  24. 24. 24To conclude Summary Let’s bring the best of web to the desktop

×