工作原因,需要快速适应 oo 编程,之前虽然也用过 c++,但是自己感觉技能水平还很差,有没有什么快速提升的方法?用 python 学习 oo 合适吗?
当然我知道这肯定需要大量实践,但是从哪开始呢?希望大家能给点建议,接受推荐中英文网课和电子书。
工作原因,需要快速适应 oo 编程,之前虽然也用过 c++,但是自己感觉技能水平还很差,有没有什么快速提升的方法?用 python 学习 oo 合适吗?
当然我知道这肯定需要大量实践,但是从哪开始呢?希望大家能给点建议,接受推荐中英文网课和电子书。
我学oo的时候用得java7,够学院派
用了多久熟练?有什么建议吗?
quora 上有人推荐这本书:
https://www.amazon.com/Head-First-Design-Patterns-Freeman/dp/0596007124#customerReviews
论坛里有人看过吗?这本书怎么样?
我刚点赞你就删贴,太快了吧
工作应该会指定用哪种语言吧
怕误导你。
没事,说说你的经验也行。我是小白一个。
适应oo 最普遍的选择应该是 Java 或是 Python
如果你的C语言基础比较好 (你用过C++) 再加上你的工作环境中电脑配置比较高的话 Java 应该是合适的(**配置要高 配置要高 ** )
Python是一门脚本语言(现代意义上的脚本语言都已经有自己的虚拟机了 基本上和Java类似了) 如果你只是想试验OO的特性 或工作当中需要用到Python(需要了解大量的类库)或工作环境不允许你开GUI的话可以试试Python
Java和Python的生态都比较完善 Android也可以用Java来写 而亚马逊的云计算则用到了Python
关键是看你的工作要求 以及 你自己的职业规划(应该大于工作 还是应该小于工作呢?)
非常感谢您详细的解答,我其实 python 更熟一些
这个应该怎样理解?
理想与现实的权衡
入门:《C++程序设计实例教程》 http://product.dangdang.com/22821598.html
没什么名气,但非常好用的 C++ 入门教程。应该买不到,但网上能找到电子版。过一遍,就明白 OO 的核心概念了。
进阶:《Beginning Android Games》 Beginning Android Games | SpringerLink
自己从头写一个游戏引擎(只学 OO 的话,可以略过后面讲 3D 的章节),在这个过程中,可以体会到 OO 在实际应用中的美妙之处。过完一遍,实际解决问题时怎么应用 OO,心里就有底了。
原理:研究一下 JavaScript 中是如何实现 class, extends, constructor 等等的,或者看一下 《SICP》 第三章
看看一些相对简单的语言是怎么实现 OO 的,可以加深理解。
非常感谢大家的建议,我先看书吧,另外准备听一下 coursera 上的网课。
比较遗憾的是书和课程都是 java 导向的,我没有学过 java。
看来你是喜欢python了
你可以把这些书的目录合在一起 组成一本书
然后找oo相关的
是的,我喜欢 python,而且工作中也是要用 python
packt 出版的几本书好像评价还都不错
前两本好像可以作为最后一本的先导阅读。这几本都可以在网上找到免费(盗版)的 pdf,链接就不放了。如果有能力的话还是支持正版吧,正版还有代码示范和网页版电子书等福利。
我打算直接从 Mastering object-oriented python 开始看了,遇到不懂的再参考前两本。
有别人的源码