In category theory, why do we define the product by its universal property the way we do? Let $\mathcal{C}$ be a category and let $(X_i)_{i\in I}$ be a family of objects in $\mathcal{C}$. We say that an object $X$ in $\mathcal{C}$ is the product of $(X_i)_{i\in I}$ if we have morphisms $\pi_i:X\longrightarrow X_i$ such that for every object $Y$ in $\mathcal{C}$ and a family of morphisms $f_i:Y\longrightarrow X_i$, there exists a unique $f:Y \longrightarrow X$ such that the following diagram commutes
$$\require{AMScd}
\def\diaguparrow#1{\smash{\raise.6em\rlap{\scriptstyle #1}
   \lower.3em{\mathord{\diagup}}\raise.52em{\!\mathord{\nearrow}}}}
\begin{CD}
&& X\\
& \diaguparrow{f} @VV\pi_iV \\
Y @>>f_i> X_i
\end{CD}$$
This is how I've read we define a product in a given category $\mathcal{C}$. My question is, why do we define this universal property this way and not in any other way? Why is it interesting having this commutative diagram and not any other?
In the category of Sets, I can see how this corresponds to the cartesian product. Indeed, if we take $X=\prod X_i$ and we define $f(y)=(f_i(y))_{i\in I}$ and we take $\pi_i$ as the $i$-th projections, then we have a commutative diagram and the cartesian product becomes the product in Sets. 
However, I still don't see why do we define the product in that way, it looks a bit unnatural to me. Was the definition motivated as a generalization of the cartesian product of sets so we could have a notion of it in other categories? If so, was this the only way to construct such generalization? Why is it important to have the product defined it this way?
It seems to me that by defining this object called product in any category we obtain an object with richer meaning. I wonder if there is any deep intuition about what a product is, or if it is "merely" an object that satisfies such commutative diagram and nothing else.
 A: In sets, and usual categories with underlying sets, an element of a product $\prod_i X_i$ is just a family $(x_i)$ with $x_i\in X_i$ for all $i$. 
Now in category theory, we don't have elements, but we have something to replace them : generalized elements. 
A generalized element of $X$ is just an arrow $Y\to X$; you can think of it as elements of $X$ parametrized by some object $Y$; with this analogy you could say such an arrow is "a generalized element of $X$ of type $Y$" or something along those lines. 
Now the crucial point is that in sets (and again, usual categories) the elements of a set completely characterize this set; and in this analogy we would want generalized elements to completely characterize an object. If you fix the type of the generalized elements (as we do in sets), that's not true, but if you allow any type, any parametrization, then it's true: it's the content of the Yoneda lemma, which essentially says "an object of any category is completely determined by its generalized elements".
If we apply this "philosophy"/interpretation of the Yoneda lemma/analogy between elements and generalized elements to products, we get the following principle (based on my first paragraph) :

A generalized element of a product $\prod_i X_i$ is just a family $(x_i)$ with $x_i$ a generalized element of $X_i$ for all $i$ [all of the same type - this is not clear from the above principle but morally it's clear that for there to be any sort of coherence we have to impose this restriction]. 

Now how do we get from here to the diagrams involved in the usual definition of a product in category theory ? 
Well there is one particularly nice generalized element of any $X$ in any category : $X\overset{id_X}\to X$. So take $\prod_i X_i \to \prod_i X_i$ : this is a generalized element so by the above principle we get a family $(\pi_i)$ of generalized elements with $\pi_j : \prod_i X_i \to X_j$. These are our projections. 
Now something implicit in the above highlighted principle is that the words "is just" should be understood as "the data is equivalent", not a literal "are equal" - and in category when we say that two pieces of data that are allowed to vary (the type of the generalized element is allowed to vary) are equivalent, we mean equivalent "in a coherent way" (whatever coherent means). 
This means that any reasonable diagram that can be drawn commutes (in a very vague sense). 
So now let $x: Y\to \prod_i X_i$ be any generalized element. We have an associated family $(x_i)$. But now $id \circ x$ is also a generalized element, and we have the family $(\pi_i)$ that represents $id$, so for each $i$ we can draw $$\require{AMScd} \begin{CD} Y @>x>> \prod_i X_i @>>> \prod_i X_i \\
@V{x_i}VV @V{\pi_i}VV \\
X_i @>>> X_i \end{CD}$$
The idea of coherence tells us that we should thus have $\pi_i\circ x = x_i$
We now see that the more precise and formal definition of product corresponds exactly to the intuition that I tried to describe above : we have maps $(\pi_i)$ and every generalized element $x$ is uniquely determined by the family of the $x_i = \pi_i\circ x$
A: Thoughts are free, and definitions are free. Your question is what is the purpose to define the product by its universal property the way we do.
Let me first correct your definition. The product of $(X_i)_{i\in I}$ of a family of objects of a category $\mathcal{C}$ is not an object having some property. In fact it is an entity consisting of an object $X$ of $\mathcal{C}$ and a family of morphisms $\pi_i: X\longrightarrow X_i$ such that for each object $Y$ and each family of morphisms $f_i:Y\longrightarrow X_i$ there exists a unique $f:Y \longrightarrow X$ such that the following diagram commutes
$$\require{AMScd}
\def\diaguparrow#1{\smash{\raise.6em\rlap{\scriptstyle #1}
   \lower.3em{\mathord{\diagup}}\raise.52em{\!\mathord{\nearrow}}}}
\begin{CD}
&& X\\
& \diaguparrow{f} @VV\pi_iV \\
Y @>>f_i> X_i
\end{CD}$$
The morphisms $\pi_i$ are an integral part of the product, it 
is not enough to require the mere existence of such morphisms having the universal property. You could of course define a product object of the family $(X_i)_{i\in I}$ as an object $X$ for which there exists a family of morphisms $(\pi_i)_{i\in I}$ having the universal property. But then the morphism $f : Y \to X$ would depend on the particular choice of $(\pi_i)_{i\in I}$ and you end up with the above product concept: To find $f$, you need an object plus a family of morphisms.
You see that the purpose is simply to replace a family of morphisms $f_i: Y\longrightarrow X_i$ by a single morphism $f : Y \to X$. Is this reasonable? This is philosophical question. In fact, most definitions in category theory generalize standard concepts in the category of sets. If you think that the cartesian product of sets is a reasonable concept and agree that it is characterized by the above  universal property, then you should also accept that the general definition is not "unnatural". In fact, products in the categorical sense exist in many categories (e.g. in the categories of groups, abelian groups, rings, topological spaces, ...).
A: This definition is equivalent to requiring that there be bijections
$$
\text{Hom}_\mathcal{C}(Z, X\times Y) = \text{Hom}_\mathcal{C}(Z, X) \times \text{Hom}_\mathcal{C}(Z,Y)
$$ for any object $Z$ of $C$, functorially in $Z$. Here the product on the left is the mysterious "product object" of $\mathcal{C}$, which you wanted more motivation for, but the product on the right is just the usual product of sets. So it is in a sense the "natural" generalization of product in the category of sets.
