Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

A POJO is a concept borrowed (and clarified) from Java - POJO, whilst originally representing "Plain Old Java Object" here has J standing for "Javascript", and, unlike in the Java world, is given a very specific operational meaning. An object is a POJO, and hence suitable to be a Model, if when passed to the framework utility function fluid.copy is "successfully duplicated" – that is, the developer considers the copy can faithfully stand in for the original.

More details are at Framework Concepts#POJO.

...

Here's an idea for another way to frame this concept:

model object is any type of JavaScript object that represents the data in your application. Infusion doesn't impose any specific contracts on what

...

type of

...

object can be a model, but all model objects must be successfully copyable using the fluid.copy() function. Ordinarily, this will probably a JSON-compatible object, but the framework doesn't limit you to this

...

.

fluid.copy() uses jQuery's .extend() method to make a deep copy of any object.

Java developers may recognize a similarity to the concept of POJOs (Plain Old JavaScript Objects). Other languages and frameworks have a similar concept; the key here is that Infusion doesn't impose a complex inheritance hierarchy or interface for your model.

More details are at Framework Concepts#Model Objects.