Generally, applications need not interact directly with this class because
the default operation of the JForm component will invoke this factory as
necessary to construct the form based on how the application binds the form
to the application's data models.
This factory provides methods for 3 key form-building operations:
This factory can handle non-visual data fields - createComponent will return
null in that case.
Note that a form factory is stateless and these methods operate independent
of each other, thus an application may invoke only those methods it requires
to construct the form. For example, an application that wishes to use the
form factory's components and bindings, but intends to handle the layout
itself, may choose to invoke only the first two methods.