What is the difference between necessary condition & sufficient condition?

My book says :

For having extreme point $a$ of function $f$, the necessary condition is that $f'(a) = 0$. However, it isn't a sufficient condition.

Now, what is the difference between necessary & sufficient condition? And also what is the sufficient condition for a function to have an extreme point?


$P \Rightarrow Q$ $\quad $ [This is read as "If P, then Q"]

$P$ is a sufficient condition for $Q$
$Q$ is a necessary condition for $P$


If it is raining, it is $\textrm{sufficient}$ to conclude that there are clouds. However, presence of clouds is not enough to conclude that there will be rain, but clouds are $\textrm{necessary}$ to have rain i.e.,

$$\rm Rain \implies Clouds .$$