SAPUI5, The Comprehensive Guide – my highlights
First of all, I want to thank SAP and the authors of this great book on “SAPUI5, The Comprehensive Guide” – Christine Goabels, Denise Nepraunig, Thilo Seidel and Sarah Frazier. Anyone interested in learning more SAPUI5 and also to learn more advance scenarios, please get one, you will not regret having it.
This great book will complement your SAPUI5 knowledge. It is for anyone starting or an advanced user. I personally like it because I took the openSAP course on how to build SAPUI5 applications and the authors of the book were also the instructors of the class. I am very pleased with the book as I was also with the class.
What I really enjoyed from the book:
1) Very good chapter structure
- Starting on the hello SAPUI5 world – p.59
- Moving into the pieces of the application, best practices, finishing touches –“ Contents at a glance”
- Content easy to follow (entire book – thank you)
2) Great explanation on:
- What is the component file -p.127 *
- This file is important when creating apps for the Launchpad and also used to start our SAPUI5 application as it invokes the app descriptor file below, device model instantiation, etc.
- What is the application descriptor – p.145 *
- manifest.json file decouples the application coding from the application. It allows model instantiation, configuring routes, etc. it maintains the application configuration and it is invoked from the Component.js file via the metadata property
- How to add routing – p.137 *
- Helps in app navigation and also facilitates bookmarking
- Formatters – p.174
- This is great when we need to reuse code on several pages, such as phone number formatting, input validation, etc.
- Every app needs this
- Expression binding – p.196
- Great for control visibility, calculated values, etc.
- It reminds me of some other JS frameworks and SAPUI5 also has these
- When to use view models – p.207
- A lot of questions on scn are related to this – how to manipulate client side data. This is a great way to achieve those scenarios
- REST and how to use it – p.217
- From the point of view of this book, this is how to use REST from the client side, however, REST is a design pattern that can also be leveraged on the backend services (XSJS and XSODATA) where we can apply the same knowledge.
- Application Patterns – Chapter 8 – this was my favorite. It helped me understand the different ways to look at applications, how look at different app types, how to display errors, when and how to develop a stand-alone app vs an app for the FLP (Fiori launch pad)
- Advanced Concepts – another one of my favorites, specially Fragments p.423, how to embed them on a view p.427
- Don’ts – really, you will find some of these everywhere. – Please read!
- Google Chrome plugins – p.655
* these points go hand in hand as they will be interacting with each other
Where I need to spend more time –
- Theming – we all know that web applications can be visually manipulated via CSS. SAPUI5 is no different; however, I think it is advantageous that we can make use of the Theme designer delivered by SAP – over manual manipulation of element by element. Personally, I need to play some more with it, but I would recommend other UI5 developers to take a look at chapter 10 section 1.
- UI unit testing – it is very interesting how we can write some of these tests. I learned new ways to use this.
- Build automation (CI) – this piece is not covered in this book but it is a good thing to have as part of an app development process so that we have the minification process created and avoid the Component-preload.js error, etc.
My advice to anyone new learning or continuing to write web applications, please use different sources of information. And remember that to learn programming you must program. All the other sources is just supporting content for the questions you have/face while developing.
(here is what my copy of the book looks like with a few bookmarks already )
I wish the authors and the book great success – keep it coming SAP 🙂