在移动开发中常用的开源库总结
1、为什么需要开源库?
我个人觉得有以下几个原因:
1>我们的项目比较赶,但是又用到一些比较复杂的模块,这些模块不是系统自带的,或者说系统自带的满足不了需求,同时在一些开源网站上面又有类似的或者是满足我哦们需求的开源项目和库,拿来就可以减少我们很多的工作量。
2>开源库从另外一方面来说就是为了提高代码的重用性,大家使用了这个开源库,然后提交一些bug,通过大家的力量完善这个开源项目。
2、我常用的开源库?
我使用的一些开源项目主要都是在github上面很热门的项目:
图片加载:Android-Universal-Image-Loader
图片操作(放大、缩小)PhotoView
下拉刷新,加载更多:Android-PullToRefresh
导航栏:ActionBarSherlock
3、如何深入学习这些开源库(经典的开源项目)?
我个人觉得是这样一个过程:学以致用这四个字概括了整个过程。
第一层学习:如何使用这个开源项目,通过官方提供的文档、sample、当然别人用了这个开源项目也会写一些总结,可以用google搜索一些这个方面的资料,学会了这些,然后把这个项目运用到实际的项目中去。这是学以致用一
第二层学习:弄清这个开源的项目的流程和思路,基本理清这些思路,学习了它的思路和方法,我们应该可以尝试按照这种学来的思路用代码实现出来(这一步非常重要)。
第三层学习:学习这个开源项目使用的技术、代码中异常的处理、代码的参数验证、命名规则等等一些常用的技术,学习到这些,通过与平时自己的代码风格进行总结,在以后的代码中运用起来
第四层学习:学习这个开源项目的整体架构,学习它使用的设计模式。学习完以后进行总结,然后在以后的项目中运用这些知识。
第五层学习:开始找这个开源项目的bug,一般是通过在项目的中的运用以及为这个开源项目写测试用例来测出bug
第六层学习:开始修改这个开源项目,扩展这个开源项目,为这个开源项目做点贡献。
4、开源库对于开发者的利与弊?
开源项目的好处:从开发者方面来说,开源项目加快了我们开发项目的速度,提升了工作效率
开源项目的弊端:有一些开发者因为有开源项目就感觉自己不需要学习什么东西了,因为一切都可以用开源搞定,容易造成浮躁的心理,这样是很不好的。