Learning methods
2015-05-29 14:05
239 查看
学习需要投入和刻苦,但是良好学习方法和习惯就像一剂强大的催化剂 --- 特地开一贴总结编程学习中的学习方法
1.需要找到高效的痛点 - 以不变应万变
我的编程完全属于自学,学校就别提了(重本坑),坑神学院还没能遇到好的队友,还好最后遇到了好的师兄,千言万语的鸡汤文不及师兄的一句中肯的提点。~跑题了额,今天(5-28/2015)无意听到斌哥的一句可以加个tap手势在imageView上实现点击啊,脑子搜索一惊,原来可以在控件上针对性地加手势啊。马上思考了一下,在Xcode上码了个imageview addGestureRecognizer...点进入方法一看:- (void)addGestureRecognizer:(UIGestureRecognizer*)gestureRecognizer NS_***AILABLE_IOS(3_2);
这个加手势的方法是UIView带的,而所用的控件都是继承UIView的,当然都有啊。
面向对象一个非常重要的特点是继承,以上的晕乎就是因为没有抓住继承这个重要的概念,只要是继承UIView的类都可以采用UIView的方法,同理,顺应别的情况。
故:需要找到高效的痛点 - 以不变应万变~
2.对新技术的敏锐
有一句话称为以不变应万变,其实说的是深刻理解原理和基础然后才可以灵活通变,然而,在技术学习上,对新技术的敏锐的sense是何其重要,iOS在iOS6上讲静态库的封装过程和framework的封装过程给分离了,然后在选择部署环境上:Deployment Target上只能从iOS6开始选择,所以凯萍才会说iOS6开始对静态库是支持framework。
3.理解的多方验证,力求对知识的实事求是!
在学习图形绘制的时候,我加了个人“想当然式的”理解和分析,还好加以手动的编程验证才挽回了不必要的曲解,说明了个人的理解最重要是要落实到对事实、对知识的验证,不然理解成了曲解!
4.在适当的时期学习适当的难点
刚毕业的一个月,参与37的工作并不忙,有很多属于自己的学习时间,所以我就想着从官方文档入手来学习,希望搭建一个具体、规范的iOS体系结构,然而事实上,我越看越生晦,越看越没有自信,后来总结才觉得,自己的英文文档的阅读水平的确是有限的,导致阅读庞大的官方文档来学习会让我越感到无力和不自信,而建立体系架构,不一定要从难度较高的官方文档。
5.如何高效学习一个工程
学习一个工程,可以最开头从这个最重效果去看看,比如运行一下所有功能,使用一下炫酷的地方,理解和思考具体的实现是如何的。在工程的代码,你可以从单纯的MVC去了解和理解各个功能部件是怎么实现的,但是比较难的是存在的耦合,例如委托等设计模式的交接,这个时候要懂得如何拆分部件,从而掌握每一个的实现。
但是只是掌握了单纯的实现还不够,除了汲取当中炫酷的实现,还要想着能不能用更优雅的方法去实现!
6.挖掘解决问题的方法
当在解决强更机制无法实现的时候,一脑都是浆糊,怎么办? 面对这种问题我实在无力解决,但是伟哥总能很强大的想到方法 — 用charles抓其他渠道的实现,用Compare工具来比较实现的不同,从来解决!
待续...
1.需要找到高效的痛点 - 以不变应万变
我的编程完全属于自学,学校就别提了(重本坑),坑神学院还没能遇到好的队友,还好最后遇到了好的师兄,千言万语的鸡汤文不及师兄的一句中肯的提点。~跑题了额,今天(5-28/2015)无意听到斌哥的一句可以加个tap手势在imageView上实现点击啊,脑子搜索一惊,原来可以在控件上针对性地加手势啊。马上思考了一下,在Xcode上码了个imageview addGestureRecognizer...点进入方法一看:- (void)addGestureRecognizer:(UIGestureRecognizer*)gestureRecognizer NS_***AILABLE_IOS(3_2);
这个加手势的方法是UIView带的,而所用的控件都是继承UIView的,当然都有啊。
面向对象一个非常重要的特点是继承,以上的晕乎就是因为没有抓住继承这个重要的概念,只要是继承UIView的类都可以采用UIView的方法,同理,顺应别的情况。
故:需要找到高效的痛点 - 以不变应万变~
2.对新技术的敏锐
有一句话称为以不变应万变,其实说的是深刻理解原理和基础然后才可以灵活通变,然而,在技术学习上,对新技术的敏锐的sense是何其重要,iOS在iOS6上讲静态库的封装过程和framework的封装过程给分离了,然后在选择部署环境上:Deployment Target上只能从iOS6开始选择,所以凯萍才会说iOS6开始对静态库是支持framework。
3.理解的多方验证,力求对知识的实事求是!
在学习图形绘制的时候,我加了个人“想当然式的”理解和分析,还好加以手动的编程验证才挽回了不必要的曲解,说明了个人的理解最重要是要落实到对事实、对知识的验证,不然理解成了曲解!
4.在适当的时期学习适当的难点
刚毕业的一个月,参与37的工作并不忙,有很多属于自己的学习时间,所以我就想着从官方文档入手来学习,希望搭建一个具体、规范的iOS体系结构,然而事实上,我越看越生晦,越看越没有自信,后来总结才觉得,自己的英文文档的阅读水平的确是有限的,导致阅读庞大的官方文档来学习会让我越感到无力和不自信,而建立体系架构,不一定要从难度较高的官方文档。
5.如何高效学习一个工程
学习一个工程,可以最开头从这个最重效果去看看,比如运行一下所有功能,使用一下炫酷的地方,理解和思考具体的实现是如何的。在工程的代码,你可以从单纯的MVC去了解和理解各个功能部件是怎么实现的,但是比较难的是存在的耦合,例如委托等设计模式的交接,这个时候要懂得如何拆分部件,从而掌握每一个的实现。
但是只是掌握了单纯的实现还不够,除了汲取当中炫酷的实现,还要想着能不能用更优雅的方法去实现!
6.挖掘解决问题的方法
当在解决强更机制无法实现的时候,一脑都是浆糊,怎么办? 面对这种问题我实在无力解决,但是伟哥总能很强大的想到方法 — 用charles抓其他渠道的实现,用Compare工具来比较实现的不同,从来解决!
待续...
相关文章推荐
- jQuery html()等方法介绍
- JNI- java.lang.UnsatisfiedLinkError: Native method not found
- virtualbox + Debian 模拟linux局域网配置
- android 悬浮窗
- Sublime Text 3能用支持的插件推荐
- sqlserver 备份命令
- 使用vmware workstation 10模拟安装RAC 11g R2
- iOS多线程编程之NSThread的使用
- 深入了解 Dojo 的服务器推送技术
- iBATIS sql(XML)中的大于、小于、like等符号写法
- LFS6.3安装全过程(五)
- Eclipse目录
- LFS6.3安装全过程(四)
- 泡妞与23种设计模式
- LFS6.3安装全过程(二)
- android出现the project was not built due to "a resource exists with a different case问题
- 目录+脚注
- linux initcall机制
- ios7 ios8 cell中下划线偏移(separator Insets)处理方法
- VDI使用Sogou 输入法无法设置并且报错