An issue with the do-it-yourself code of this example app is the boilerplate code needed
per model class for the storage management methods
add
, update
, destroy
,
etc.;
per model class and property for getters, setters and validation checks.
While it is good to write this code a few times for learning app development, you don't want to write it again and again later when you work on real projects. In Volume 2, we present an approach how to put these methods in a generic form in a meta-class, such that they can be reused in all model classes of an app.
Some of the new HTML5 input field types (like number
,
date
or color
) are intended to allow web
browsers rendering corresponding input
elements in the form
of UI widgets (like date or color pickers) that limit the user's input
options such that only valid input is possible. In terms of usability,
it's preferable to prevent users from entering invalid data instead of
allowing to enter it and only then checking its validity and reporting
errors. Unfortunately, and this is quite disappointing, many browsers
do, in 2017, still not have reasonable widget implementations for these
HTML5 input field types yet.