Calculating derivative by definition vs not by definition I'm not entirely sure I understand when I need to calculate a derivative using the definition and when I can do it normally. 
The following two examples confused me:
$$ g(x) = \begin{cases} x^2\cdot \sin(\frac {1}{x}) & x \neq 0 \\ 0 & x=0 \end{cases} $$
$$ f(x) = \begin{cases} e^{\frac {-1}{x}} & x > 0 \\ -x^2 & x\leq 0 \end{cases} $$
I understand that I can differentiate normally for any $x$ that's not 0 (in both of these examples). 
I'm confused because I saw an example with $f(x)$ in which they calculated the $f'(x)$ by differentiating:
$$ f'(x) = \begin{cases} \frac {1}{x^2}\cdot e^{\frac {-1}{x}}  & x > 0 \\ -2x & x\leq0 \end{cases} $$
and then they calculated $f'(0)$ not using the definition but by $ \lim_{x\to0^-} f'(x)$ $\lim_{x\to0^+} f'(x)$
For $g(x)$ though I know that $g'(0)$ exists (using definition)  but
$$g'(x) = \begin{cases} 2x\cdot \sin(\frac {1}{x})-\cos(\frac {1}{x})   & x \ne 0 \\ 0 & x=0 \end{cases}$$  
and you can't calculate $\lim_{x\to0^-} g'(x)$ or $\lim_{x\to0^+} g'(x)$ since $\lim_{x\to0^{+/-}} 2x\cdot \sin(\frac {1}{x})-\cos(\frac {1}{x}) $  doesn't exist. 
So what's the difference between these two? When can I just differentiate normally like in the first example ($f(x)$) and when do I have to use the definition like in the second example ($g(x)$)?
I'd appreciate the help. 
Edit: When I"m referring to the definition I'm referring to the following: 
$\lim_{h \rightarrow 0} \dfrac{f(x+h) - f(x)}{h}$

Neither of them is calling on the definition of derivatives (at least, not the normal one I think you're thinking of, the limit of the difference quotient.)
In both cases, you are calculuating the derivative "normally" (by which I think you mean through a pre-learned formula) to find out what the derivative of the function is on pieces of the real line.
The limits that appear in what you wrote are checking to see if this combined derivative is continuous near zero. You see, in principal the two derivatives that you get on each side might not match up at $0$, maybe one hits the $y$ axis lower than the other one hits the $y$ axis. In that case the derivative would have a jump discontinuity at $0$, and it wouldn't be continuous.
Actually, the example of $g$ that you have here is even wilder than that: it oscilates wildly on each side of $0$, causing it to have no defined limit as it approaches zero. Thus any computation of the limit from either side results in "undefined", and the derivative isn't continuous.
