i was reading HP6 when, it got strucked to me that what if Lily used to like snape and when james used to make fun oh him, she didn't like it at all. But Since Snape always called Lily a Mudblood and may b james came to know that lily like snape, he changed complately. This made Lily to like James from hating him.
And i also read that Snape actually is a good character. PLS post is u have additional information and ur reply.