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}$