I read Design Patterns (GoF) and actually tried to write a text editor the way it describes it and found that it made selection really really difficult, so I had to find my own solution.
But I really grew fond of the Visitor Pattern, because you can do a lot with very little code.
Computer Graphics is the best school for Object Oriented thinking, I've found.
That's funny, I tried using the Visitor Pattern very heavily for a while, and ended up deciding it wasn't worth the trouble. Using it made me feel very virtuous and proper for a few years, but I've rarely if ever used it in the decade since, and never regretted not using it.
But I really grew fond of the Visitor Pattern, because you can do a lot with very little code.
Computer Graphics is the best school for Object Oriented thinking, I've found.