객체지향 언어는 C++ C# 할줄아는데

문법만 대충 알지 


객체지향의 탄생비화, 쓰는이유, 언제쓰는지, 단점 등등 

이런것들 깊게 다루는 책 있나