程序员书库(ID:OpenSourceTop) 编译
链接:https://javarevisited.blogspot.com/2017/04/top-5-books-to-learn-object-oriented-programming.html
面向对象编程(OOP)是当下最流行的编程架构,它是一种工具,帮助你通过多个对象编写成复杂的软件,它的前身面向过程编程是由C实现的。面向过程,强调的是功能行为。面向对象,将功能封装进对象,强调具备功能的对象。面向对象更加强调运用人类在日志的思维逻辑中采用的思想方法与原则,你可以吧任何东西视为对象,然后找到他们的行为和状态,这将帮助你在代码中模拟该对象。
可惜的是,很多程序员都不学面向对象编程、面向过程编程、函数式编程,他们学习的只是编程语言,许多开发人员学习Java、C++或Python时都学习了OOP,但它们不能称之为真正意义上的OOP,一般的大学毕业生很难在实践中应用OOP概念。
这也是为什么对于专业程序员来说,阅读一些面向对象分析和设计的书籍是至关重要的,只是了解OOP基础知识(抽象、封装、继承或多态性)是没有用的。重要的是你要学会在实践中应用这些原则。
此外,你还要学会权衡,选择解决方案,比如什么时候组合优于继承,什么时候使用抽象类优于接口,了解内聚性和耦合性,并学习如何在编写软件时