This is a subject I have been learning recently, and one that I really like.
First some history, though my dating may be wildly wrong. Beginning some time in the 1800's, mathematicians sought to categorize areas of mathematics into ever and ever smaller "units" of study. So, it was realized that there were distinct areas of study like monoids, groups, rings, fields, vector spaces, topological spaces etc., each with their own semi-unique properties, defined by the allowable operations on them, and the maps between them.
Then, around 1945, a guy named Saunders Mac Lane asked the simple question: is it possible to come up with a meta-language that will unify all these (by now) different areas of mathematics? He decided that the answer is "yes", and that this language should be called category theory. So let me give a quick definition, and then do some more rambling.
A category $$\mathcal{C}$$ is a collection of mathematical objects with the property that:
for any pair of objects $$X,\;Y \in \mathcal{C}$$, there is a "mapping" $$f:X \to Y$$ where $$f$$ is called a morphism in $$\mathcal{C}$$;
for every object $$X \in \mathcal{C}$$ there is an identity morphism $$\text{id}_X: X \to X$$;
for every $$X,Y,Z \in \mathcal{C}$$, with $$f:X \to Y$$ and $$g:Y \to Z$$, then the composition of morphisms $$(g \cdot f): X \to Z$$ makes sense;
if $$f:W \to X,\; g:X \to Y,\; h: Y \to Z$$, then $$h \cdot (g \cdot f) =(h \cdot g) \cdot f)$$;
if $$ f:X \to Y$$ then $$f \cdot \text{id}_X = f,\;\; \text{id}_Y \cdot f = f$$.
So, first some notational housework; I will always compose morphisms right-to-left. That is, $$g \cdot f$$ means do $$f$$ first, then $$g$$. Notice also that I will sometimes refer to morphisms simply as arrows. You'll see why shortly.
OK, so what are these so-called objects in these so-called categories? Although this question is more profound than it might appear at first sight, for now we can take them to be: a set is an object in a category called Set, whose morphisms are set functions, a group is an object in a category called Grp, whose morphisms are group homomorphisms, a topological space is an object in a category called Top, whose morphisms are continuous functions, and so on.
Notice that, for every category in this sense, I must specificy the exact nature of these morphisms, as they are objects, in this case sets, in the category. This will become clear, if I am allowed to continue.
Notice too that, if this project of generalization is not to be doomed from the outset, we would be wise not to concentrate too closely on the precise definition of our categorical objects; all we really care about are the arrows - the morphisms - hence category theory is sometimes referred to as "arrowology". We would be even wiser not to even think about the elements in these objects (though often it is helpful when constructing proofs).
So, category theory offers us a "function" from one category to another, like this: Let $$ \mathcal{C},\; \mathcal{D}$$ be categories. Then the mapping $$ F: \mathcal{C} \to \mathcal{D}$$ is called a functor.
Now functors are very respectful creatures - they respect everything in sight.
So, if $$ f: X \to Y$$ is a morphism in $$\mathcal{C}$$, and if there is a functor $$F:\mathcal{C} \to \mathcal{D}$$, then $$F(f): F(X) \to F(Y)$$. That is, the functor$$F$$ respects morphisms and their domains and codomains.
It follows that this functor respects the identity: If $$ id_X: X \to X \in \mathcal{C}$$, then $$F(id_X) = id_{F(X)}: F(X) \to F(X) \in \mathcal{D}$$
Functors also respect composition: If $$(g \cdot f): X \to Z \in \mathcal{C}$$ is defined, then $$F(g \cdot f)$$ is also defined, and $$ F(g \cdot f) = F(g) \cdot F(f) \in \mathcal{D}$$
Functors also respect associativity in the obvious way; I shan't insult you by writing this out!
I have a lot more to say on this subject, if anyone is interested, but now I'm going for a beer or five. Then I have to figure out how to offer commutative diagrams.
First some history, though my dating may be wildly wrong. Beginning some time in the 1800's, mathematicians sought to categorize areas of mathematics into ever and ever smaller "units" of study. So, it was realized that there were distinct areas of study like monoids, groups, rings, fields, vector spaces, topological spaces etc., each with their own semi-unique properties, defined by the allowable operations on them, and the maps between them.
Then, around 1945, a guy named Saunders Mac Lane asked the simple question: is it possible to come up with a meta-language that will unify all these (by now) different areas of mathematics? He decided that the answer is "yes", and that this language should be called category theory. So let me give a quick definition, and then do some more rambling.
A category $$\mathcal{C}$$ is a collection of mathematical objects with the property that:
for any pair of objects $$X,\;Y \in \mathcal{C}$$, there is a "mapping" $$f:X \to Y$$ where $$f$$ is called a morphism in $$\mathcal{C}$$;
for every object $$X \in \mathcal{C}$$ there is an identity morphism $$\text{id}_X: X \to X$$;
for every $$X,Y,Z \in \mathcal{C}$$, with $$f:X \to Y$$ and $$g:Y \to Z$$, then the composition of morphisms $$(g \cdot f): X \to Z$$ makes sense;
if $$f:W \to X,\; g:X \to Y,\; h: Y \to Z$$, then $$h \cdot (g \cdot f) =(h \cdot g) \cdot f)$$;
if $$ f:X \to Y$$ then $$f \cdot \text{id}_X = f,\;\; \text{id}_Y \cdot f = f$$.
So, first some notational housework; I will always compose morphisms right-to-left. That is, $$g \cdot f$$ means do $$f$$ first, then $$g$$. Notice also that I will sometimes refer to morphisms simply as arrows. You'll see why shortly.
OK, so what are these so-called objects in these so-called categories? Although this question is more profound than it might appear at first sight, for now we can take them to be: a set is an object in a category called Set, whose morphisms are set functions, a group is an object in a category called Grp, whose morphisms are group homomorphisms, a topological space is an object in a category called Top, whose morphisms are continuous functions, and so on.
Notice that, for every category in this sense, I must specificy the exact nature of these morphisms, as they are objects, in this case sets, in the category. This will become clear, if I am allowed to continue.
Notice too that, if this project of generalization is not to be doomed from the outset, we would be wise not to concentrate too closely on the precise definition of our categorical objects; all we really care about are the arrows - the morphisms - hence category theory is sometimes referred to as "arrowology". We would be even wiser not to even think about the elements in these objects (though often it is helpful when constructing proofs).
So, category theory offers us a "function" from one category to another, like this: Let $$ \mathcal{C},\; \mathcal{D}$$ be categories. Then the mapping $$ F: \mathcal{C} \to \mathcal{D}$$ is called a functor.
Now functors are very respectful creatures - they respect everything in sight.
So, if $$ f: X \to Y$$ is a morphism in $$\mathcal{C}$$, and if there is a functor $$F:\mathcal{C} \to \mathcal{D}$$, then $$F(f): F(X) \to F(Y)$$. That is, the functor$$F$$ respects morphisms and their domains and codomains.
It follows that this functor respects the identity: If $$ id_X: X \to X \in \mathcal{C}$$, then $$F(id_X) = id_{F(X)}: F(X) \to F(X) \in \mathcal{D}$$
Functors also respect composition: If $$(g \cdot f): X \to Z \in \mathcal{C}$$ is defined, then $$F(g \cdot f)$$ is also defined, and $$ F(g \cdot f) = F(g) \cdot F(f) \in \mathcal{D}$$
Functors also respect associativity in the obvious way; I shan't insult you by writing this out!
I have a lot more to say on this subject, if anyone is interested, but now I'm going for a beer or five. Then I have to figure out how to offer commutative diagrams.