One main point of difference between the prime notation and the $\def\d{\mathrm d}\frac\d{\d x}$ notation is that the former uses functions whereas the latter uses expressions with a free variable $x$. So let me first state with the prime notation the result that you appear to be talking about.
Let $\def\R{\mathbb R}f:\R\to\R$ be a differentiable function. We write (against prevailing convention which would have $x$ to be used for the generic arguments of functions; I'll make do with $y$, though this makes for difficult reading) $f(y)\in\R$ for the value of $f$ at some point $y\in\R$. A new function is determined by $y\mapsto f(y)f'(y)$, mapping $y$ to the product of the value of $f$ and of its derivative, at$~y$. The derivative of this new function is, by the product rule
$$
y\mapsto f'(y)f'(y)+f(y)f''(y) = (f'(y))^2+f(y)f''(y)
$$
If one calls the new function $g$ (something that was not necessary to do the above computation) the result can also be written as
$$
g'(y) = (f'(y))^2+f(y)f''(y) \qquad\text{for all $y\in\R$}
$$
or even (with the usual definition of products of functions, so that $g=ff'$)
$$
g'' = (f')^2+ff''
$$
The point to understand about the $\frac\d{\d y}$ notation is that it operates on expressions, not functions. So the relation between $f$ and its derivative $f'$ can be expressed as $f'(y)=\frac{\d f(y)}{\d y}$, and not as $f'(y)=\frac{\d f}{\d y}(y)$, which makes no sense because there is no $y$ in the expression $f$ (which moreover represents a function, not a real number). The rule is that the expression on which $\frac\d{\d y}$ operates should contain$~y$ (if not, it could only mean a quantity independent of the value of$~y$ which would make the result of $\frac\d{\d y}$ zero); then the derivative is taken of the function sending $y$ to the value of the expression at that $y$, and this (derivative) function is turned into an expression by using $y$ again as name for its argument. This seemingly complicated definition can be justified by the fact that it works rather straightforwardly on concrete expressions, for instance it is easier to say
$$
\frac{\d\sin(x^2)}{\d x}=2x\cos(x^2)
\qquad\text{then it is to say}\qquad
(x\mapsto \sin(x^2))' = (x\mapsto 2x\cos(x^2))
$$
However for abstract functions, the $\frac\d{\d y}$ is more cumbersome. Your rule for differentiating $ff'$ can be written
$$
\frac{\d f(y)f'(y)} {\d y}
=\bigl(\frac{\d f(y)}{\d y}\bigr)f'(y)+f(y)\bigl(\frac{\d f'(y)}{\d y}\bigr)
=\bigl(f'(y)\bigr)^2 + f(y)f''(y)
$$
If as you do, you decide to write $x=f(y)$ then you can could replace only $f(y)$ by $x$, provided you recall explicitly that $x$ stands for an expression containing $y$ (without which caveat you would get something incomprehensible) and write
$$
\frac{\d(xf'(y))} {\d y}
=\bigl(\frac{\d x}{\d y}\bigr)f'(y)+x\bigl(\frac{\d f'(y)}{\d y}\bigr)
=\bigl(f'(y)\bigr)^2 + xf''(y)
$$
You should not write $x'$ for $f'(y)$ (even though many people will do that) since $x'$ would mean $f(y)'$ which makes no sense: $f(y)$ is a function value (an abstract one, depending on the value of $y$), not a function. I think anybody would agree my final equation is horrendous, and I definitely do not propose using it; I just want to say that going further and writing $x'$ and $x''$ instead of $f(y)$ and $f''(y)$ is even worse.