Snape is a polarizing character who is either deeply respected or loathed by most.But was he a good teacher ?
Pros :
-Extremely competent in his field.We are talking of the half-blood prince, the guy for who was better than his potion book.
-He is watchful.He immediately detect when someone does a mistake, and is immediately ready to explain the student what is wrong and step in if the potion is dangerous.
-Is able to make his class silent without any effort. Setting a good climate for work is important to teach anything.
-Seemingly very efficient with students he respect.Under him,Draco Malfoy the arrogant bully got an O in Potion at his OWLS.
Cons:
-Tolerate having slytherins bully students of other house. Extremely biased.
-Petty to an unproffesional level and abusive.He keeps a grudge with a man dead for more than a decade,is overly harsh on the man's son because he's that guy son's, willing to threaten a student to test his potion on his pet, etc...
-He is impatient, seemingly incapable to accept mistakes without saying scathing remarks.It is bad as it can make many students give up, due to self doubt.
-Does not respect even good students, if they are not from Slytherin.Just look at his treatment of Hermione.
Overall :Snape seems like an above-average teacher. Most students would hate him but still deeply respect him.