eCommerce : Definitions?
It's very open structured, and adaptable ..

Think of it like this: You sell variations of a product to a customer.
Where attributes handle the actual variation.
Products and variations can be arranged by types (like content types)


  Different types can have different properties (ie. fields) a variation
  can be referenced to a product no matter of their types. So here the
  attributes come into place and should available for all variation
  referenced to a instanciated product.


A product field can be on a content type to show your product on a regular node. (and is a referenced entity)
Otherwise products can be shown with the search api.

The variations are also referenced entites on the product. But provide already good AJAX and add to cart functionalities out of the box.

Regarding display:
Fields can be everywhere ... and are in the end displayed. (a basic drupal concept: fieldable-ness)
Forms are only used in the backendfor composing the content.

Maybe the doc from the commerce guys gives you the point (it's d7):

Product Types. (and variation types for d8)
A product type is a specific bundle based on a custom product entity. Each bundle can have fields attached to it, including pictures and other kinds of information.

Product "Informational" Fields. (and variation fields for d8)
Any field on a product can be a simple "informational" field. Typical informational fields include an image of that specific configuration of a product. For example, if you sell a tshirt with a cool print in multiple colors, each product with a different color could have an image field that, when displayed on the product display node, will change when you select different attributes (like color).

Product "Attribute" Fields. (actually variations attributes for d8) 
Any field on a product type with a defined list of options (list of text options, list of taxonomy terms, list of colors). The attribute fields are special because of the way they turn into selection widgets on a product display. Often you will pair an attribute field (like a color dropdown) with an information field (like an image field) to let the user "select" the blue tshirt and the Drupal Commerce system will quickly load the picture associated with the blue product.

Product Displays.
If needed at all, these are groupings of products. You can reference any type and number of products on a product display. In order to make use of product displays, we recommend only showing one type of product per product display. The product display is where you typically see the product with drop downs to "configure" or "order" the right kind of product.

taken form here https://drupalcommerce.org/user-guide/product-attributes-variations