作为rails开发者,无数好用的第三方Gem插件让工作变得更加简单。 不过东西好用,也还是有一些需要注意的问题。这里整理一下我使用Gem的经验。
搜索
第一步是寻找到想要的Gem。最基础的方法是Google搜索,输入想要实现的功能,比如:rails tagging
,
也可以去ruby toolbox网站上面根据分类寻找。
选择
找到Gem之后,需要选择质量高的Gem,不然会出现各种问题。主要看Github上面是否有很多人Follow, 以及项目近期是否有足够的更新。
不能随便引入Gem到项目里面,需要从增加的系统复杂度,拓展性,系统稳定性等方面综合考虑。 除了引入Gem,可以考虑直接拷贝需要的代码文件到项目里面。一些会修改Rails等其他模块的Gem,需要谨慎引入。
使用
Gem导入之后,最好要固定版本,这样防止Gem功能变更引入Bug。
选择好了Gem,需要对它有足够的了解。认认真真看一遍文档,wiki,如果文档不清晰,搜索一下使用教程。
我个人偏好把Gem的实现原理弄懂,最好扫一遍源码,这样出现bug或者问题大概有一个方向, 以及可以学会别人是怎么写ruby的。
当使用Gem的时候出现了问题,可以去项目Github的Issue区块看看有没有人提交类似问题, 没有的话自己可以通过看源码来调试解决,或者提交issue给官方项目。
上面这些工作,关键点最好可以自己留存一份文档,一般一个Gem的问题,可能会重复解决好多次,比如安装rmagick的问题。