Is the any difference between shape operator and second fundamental form for surfaces?
For the sake of clarity I will restrict my answer to the special case of (regular, embedded) surfaces in $\mathbb R^3$. The difference between shape operator and second fundamental form is that the first is an operator, while the second is a bilinear form. Specifically, if $n$ is the outward normal to your surface $S \subset \mathbb R^3$, we may define the shape operator $S$ by the rule $$S(X) = D_X n$$ while the second fundamental form is given by $$II(X,Y) = D_X n \cdot Y$$ Here $D_x n$ is the directional derivative of $n$ in the direction $X$. Note that some authors use a negative sign in the definition of shape operator, and may also use the same name for both objects. If you know about tensors and type change, then the second fundamental form is what you get when you change the type of the shape operator from $(1,1)$ to $(0,2)$.
If you are interested in coordinate formulas and/or other applications, I would recommend Ted Shifrin's book, available on his website: "Differential Geometry: A first Course in Curves and Surfaces".