在移动开发中常用的开源库总结

1、为什么需要开源库?

我个人觉得有以下几个原因:

1>我们的项目比较赶,但是又用到一些比较复杂的模块,这些模块不是系统自带的,或者说系统自带的满足不了需求,同时在一些开源网站上面又有类似的或者是满足我哦们需求的开源项目和库,拿来就可以减少我们很多的工作量。

2>开源库从另外一方面来说就是为了提高代码的重用性,大家使用了这个开源库,然后提交一些bug,通过大家的力量完善这个开源项目。

2、我常用的开源库?

我使用的一些开源项目主要都是在github上面很热门的项目:

图片加载:Android-Universal-Image-Loader

图片操作(放大、缩小)PhotoView

下拉刷新,加载更多:Android-PullToRefresh

导航栏:ActionBarSherlock

3、如何深入学习这些开源库(经典的开源项目)?

我个人觉得是这样一个过程:学以致用这四个字概括了整个过程。

第一层学习:如何使用这个开源项目,通过官方提供的文档、sample、当然别人用了这个开源项目也会写一些总结,可以用google搜索一些这个方面的资料,学会了这些,然后把这个项目运用到实际的项目中去。这是学以致用一

第二层学习:弄清这个开源的项目的流程和思路,基本理清这些思路,学习了它的思路和方法,我们应该可以尝试按照这种学来的思路用代码实现出来(这一步非常重要)。

第三层学习:学习这个开源项目使用的技术、代码中异常的处理、代码的参数验证、命名规则等等一些常用的技术,学习到这些,通过与平时自己的代码风格进行总结,在以后的代码中运用起来

第四层学习:学习这个开源项目的整体架构,学习它使用的设计模式。学习完以后进行总结,然后在以后的项目中运用这些知识。

第五层学习:开始找这个开源项目的bug,一般是通过在项目的中的运用以及为这个开源项目写测试用例来测出bug

第六层学习:开始修改这个开源项目,扩展这个开源项目,为这个开源项目做点贡献。

4、开源库对于开发者的利与弊?

开源项目的好处:从开发者方面来说,开源项目加快了我们开发项目的速度,提升了工作效率

开源项目的弊端:有一些开发者因为有开源项目就感觉自己不需要学习什么东西了,因为一切都可以用开源搞定,容易造成浮躁的心理,这样是很不好的。

在移动开发中常用的开源库总结,码迷,mamicode.com

时间: 2024-12-28 02:03:58

在移动开发中常用的开源库总结的相关文章

iOS开发中常用第三方库的使用和配置-GDataXML

这篇文章旨在给自己以后需要时能及时的查到,省得每次都去baidu. 1. xml解析库-GDataXML 参考文章:http://blog.csdn.net/tangren03/article/details/7868246 GDataXML下载地址: (1)GDataXML.h/m文件 http://code.google.com/p/gdata-objectivec-client/source/browse/trunk/Source/XMLSupport/ (2)DGataDefines.h

iOS开发中常用的轮子 第四篇 收集齐7个轮子,准备高仿部分微博APP页面

产品原因有几张页面会参考微博APP来做,先收集齐轮子:计划这周完成,然后放到github上开源. 1,微博流刷新: 2,浏览微博中的图片: 3,发布微博: 4,发微博时选择照片: ============分割线:具体如下 ============= 选择相册中图片: 1,UzysAssetsPickerController 链接:https://github.com/uzysjung/UzysAssetsPickerController 介绍:用于替换UIImagePickerControlle

iOS开发中常用的轮子 第四篇 抽屉和侧滑效果

为避免重复造轮子,很多效果和功能都可以从github上找到.清点以前的项目,整理出了很多用过的开源代码,每天奉送一批. 学习例子的方法: 1,了解:运行一遍例子,弄清这些代码的究竟是什么: 2,使用:在之后开发工程中使用这些例子: 3,研究代码:研究例子的代码的实现,简单修改做出自己的效果. 记得要么是facebook,或是twitter第一个使用了个交互效果:而后风靡全球,是产品必用抽屉:再后来就是延生出了各种变形过的效果: 所以,产品经理要你实现抽屉和侧滑效果时,一定要确定到底是什么样抽屉和

项目开发中常用的PHP函数

日期操作 为了便于存储.比较和传递,我们通常需要使用strtotime()函数将日期转换成UNIX时间戳,只有在显示给用户看的时候才使用date()函数将日期转换成常用的时间格式. strtotime()  函数将任何英文文本的日期时间描述解析为 Unix 时间戳 eg: <?php echo(strtotime("now")); echo(strtotime("3 October 2005")); echo(strtotime("+5 hours&

前端开发中常用的几种图片格式及其使用规范

在介绍图片格式之前,首先说一些额外的东西. 矢量图与位图. 矢量图是通过组成图形的一些基本元素,如点.线.面,边框,填充色等信息通过计算的方式来显示图形的.一般来说矢量图表示的是几何图形,文件相对较小,并且放大缩小不会失真. 这里有一点要注意的是web开发中用到的图片都不是矢量图,即使是一个三角形,只有一个边框,都是位图. 那么矢量图在哪里有用到呢? 我目前的知识池就知道一个图标字体,比如 font-awesome 目前在前端的开发中常用的图片格式有三种:jpg,png,gif.这些都是位图.

c++实现游戏开发中常用的对象池(含源码)

c++实现游戏开发中常用的对象池(含源码) little_stupid_child2017-01-06上传 对象池的五要素: 1.对象集合 2.未使用对象索引集合 3.已使用对象索引集合 4.当前使用量 5.最大使用量 http://download.csdn.net/download/little_stupid_child/9730912

开发中常用Fel的写法

直接看代码吧: package javademo; import java.util.HashMap;import java.util.Map; import com.greenpineyu.fel.Expression;import com.greenpineyu.fel.FelEngine;import com.greenpineyu.fel.FelEngineImpl;import com.greenpineyu.fel.context.FelContext;import com.gree

IOS开发中常用的宏定义

有些时候,我们需要将代码简洁化,这样便于读代码.我们可以将一些不变的东东抽取出来,将变化的东西作为参数.定义为宏,这样在写的时候就简单多了. 下面例举了一些常用的宏定义和大家分享: 1. 判断设备的操作系统是不是ios7 #define IOS7 ( [[[UIDevice currentDevice].systemVersion doubleValue] >= 7.0] ) 2. 判断当前设备是不是iPhone5 #define kScreenIphone5 (([[UIScreen main

WebApp 开发中常用的代码片段

其实这里面的多数都是 iOS 上面的代码.其他平台的就没有去验证了. HTML, 从HTML文档的开始到结束排列: <meta name=”viewport” content=”width=device-width, initial-scale=1.0″/> 让内容的宽度自适应为设备的宽度, 在做Mobile Web时必须加的一条 <meta name=”format-detection” content=”telephone=no”]]> 禁用手机号码链接(for iPhone)