How do we define $df(a)$ for $a$ belong to the domain of $f$? A defination from Spivak Calculus On Manifold:
A function $f\colon \mathbb R^n \to  \mathbb R^m$ is differentiable at $a \in \mathbb R^n$ if there is a linear transformation $\lambda \colon \mathbb R^n \to \mathbb R^m$ such that $\lim_{h \to 0}\frac{|f(a+h)-f(a)-\lambda(h)|}{|h|} =0$.
They said the linear transformation $\lambda$ is denoted $Df(a)$ and called derivative of $f$ at $a$. So we can say $Df(a) \colon \mathbb R^n \to \mathbb R^m$
So my question how do we define $df(a)$? what is the domain and codomain? 
 A: Given an $f$ and a point $a$ in the domain of $f$ there is at most one linear transformation $\lambda$ such that
$$f(a+h)-f(a)=\lambda.h +o\bigl(|h|\bigr)\qquad(h\to0)\ ,\tag{1}$$
because two different such transformations would differ by more than $o\bigl(|h|\bigr)$ when $h\to0$. It follows that the $\lambda$, if it exists, is uniquely determined by $f$ and $a$. It therefore can be denoted by $df(a)$ (this is just a typographical picture, not something infinitely small), or $Df(a)$, or similarly.
A: $\newcommand{\R}{\mathbb{R}}$
To long for a comment but not really an answer (also relates to this discussing):
I haven't read the text by Spivak. But since he is mentioning manifolds in the title let me stress this point: When it comes to considering the $\mathbb{\R}^n$ as a canonical manifold basically every abstract concept necessary for manifolds becomes the "simpler" version known from multivariable calculus. So in that setting it is only good(!) that concepts are the same, because really they were developed to be exactly that. But, the definition of differential you give with the difference quotient can not be adapted for abstract manifolds, so we need a knew concept. And only in case of a scalar (!) function $f : \R^n \to \mathbb{R}$ can one identify the differential $Df(a)$ with the $1$-form $df(a)$. 
Is this addressing your problem add all? 
EDIT
Okay, now I had a look into the book by Spivak. And here is what I think he is doing:


*

*Define for simplicity differential forms first on $\R^n$. Thereby you can always check that this concept really is just a different view on what is know as vector calculus, I guess. 

*But with this amazing advantage that everything he is developing with differential forms can in the next chapter be easily applied also for manifolds! Which he will introduce in the next chapter.
And to address your point, why having two definitions for the same thing? Because to me this is one of the mile stones in every theory I would say, when seeing that under a special situation this concept actually coincides with an already established concept. Just keep studying this stuff and just worship how elegant for example the fundamental theorem of calculus in any (!!!) dimensions turns out to be, when formulated in differential forms.
