We have still included the repetitive code structures (called
boilerplate
code) in the model layer per class and per property
for constraint validation (checks and setters) and per class for the data
storage management methods add
, update
, and
destroy
. 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 when
you work on real projects. For avoiding repetitive boilerplate code,
generic forms of these methods are needed, such that they can be reused in
all model classes of an app. For instance, the cLASSjs library
provides such an approach.