A very vague question about the cartesian product in mathematics. Motivated by this question, I am wondering about Cartesian product analogs in various subfields of mathematics.
The set theoretic Cartesian product creates an "output" set from a set of "input" sets, so that each member of the output set corresponds to the selection of one element each in every input set.  There is also a standard Cartesian product of graphs and a standard Cartesian product of functions.
My question is, if I am learning a new subfield of mathematics and I see a "Cartesian product" analog, then what properties should I expect it to have?  My naive intuition would be that it should change a list of objects that have sizes $n_1, n_2, \dots , n_k$ into a new object that has size $n_1 \cdot n_2 \cdots n_k$ and that to learn exactly the definition I would have to carefully read how it is defined.  Is this intuition misleading or incomplete?  Does the concept of "Cartesian product" have a technical meaning that is as wide in scope as it is used in various subfields, or would something like category theory be required for such a meaningful generalization?
 A: Arturo has suggested the categorical product. I would agree, but don't think you need to learn a lot of category theory to understand the idea of a product (in that sense), so have a look. Descartes will not mind if the word cartesian is not used! Once you think you understand the categorical definition of product, a further step is to try to understand the tensor product, first for vector spaces, and then you will hit a question: what is the connection of that idea with a categorical product? 
If you are still on board, think that in calculus you can think of a function of two variable as a function of the first variable with values in a 'space' of functions in the second variable (this is what is 'going on' in partial differentiation at least up to a point). This trick says
$f:X\times Y\to Z$ gives a function $X\to \mathrm{Functions}(Y,Z)$ and vice versa.
and this is another neat property of the product of sets. This one generalises to give a whole set of other types of product, whenever there is a reasonable notion the maps between 'things' give a 'thing' of maps. For 'thing = vector space' you find that the corresponding idea on the left is a tensor product. Now look at graphs, and loads of other settings and you will get a very full answer to your query. 
That is the plan of action. You should be able to skim over the top of any deep category theory... at least unless you fall victim to its seductive charms ;-)
