第一次做开源项目,从0到1024个star数量经历了一个多月的开发和维护,从新手到入门(至于之后的阶段,我也还在摸索中)。在这里我就来分享一下我的经历吧,希望能够对想做开源但是没行动的小伙伴有所帮助。
GitHub:全球最大的代码托管平台
项目地址:[传送门]
1024 为什么做这个项目?最近一段时候在编写项目(APP应用)的时候使用列表控件频率非常高,写着就发现很多代码冗余了,于是就想封装一下,开始做起了代码优化,之前做过类似的优化,于是根据之前的优化经验,最终代码量得到了大幅度的优化。只要原有代码量的30%即可完成显示功能,后来随着项目需求的增加不断的完善封装,使得只需要简单的几行代码就可以完成的需求(如:添加头部尾部、添加列表动画、等等)。最终形成了一个还不错的基类,本着分享的精神就上传到了GitHub上面。
在github上面没有查找到有满足我的需求的开源项目,我才造轮子的。 切入点解决实际问题 优化Adapter代码(减少百分之70%代码) 添加点击item点击、长按事件、以及item子控件的点击事件 添加加载动画(一行代码轻松切换5种默认动画) 添加头部、尾部、下拉刷新、上拉加载(感觉又回到ListView时代) 设置自定义的加载更多布局 添加分组(随心定义分组头部) 自定义不同的item类型(简单配置、无需重写额外方法) 设置空布局(比Listview的setEmptyView还要好用!)
除了解决问题,还有就是让更多人知道,所以接下来就是「推广」。 推广我的方法是通过写作平台去推广,写一些文章关于该项目的 我用的写作平台有(你也可以选择更多,多多益善): 写完之后再发链接到分享平台(你也可以选择更多,多多益善): 这些都是开发者平时比较关注的平台(你也可以选择更多,多多益善)。 推广后,开发者就会进入你的项目首页所以接下来看的就是「README.md」的编写。
README(自述文件)我的README(英语版、中文版),它的结构: gif案例效果 demo下载方式 框架导入方式 框架使用方式
效果(看)=》demo(玩)=》源码(用) 当开发者使用过后就要想到后续的「开发及维护」
开发及维护有任何需求可以在github提issue,(bug我通常在24小时内就会解决)但是很重要的一点是,由于每个人的精力都是有限的,做开源项目都是用的业余时间,所以要寻找小伙伴一起来维护项目,所以我就建了一个Q群(目前134人),让感兴趣的开发者加入进来,一起来完善,形成一个圈子,这样遇到问题的人多了,自然解决方法就多了,最开始也许都需要问我,但是到了现在,已经有很多成员会主动的去帮助新入群的小伙伴解决问题了,形成了一种解决问题的气氛。
入群门槛:star我的项目,为什么呢? 开源项目的好处帮助自己的同时,帮助了别人 结交志同道合的朋友 收获反馈,技术提升
总结其实做开源项目并不难(我行,你也行!)主要是要迈出第一步,然后及时接受反馈,不断满足用户需求!我建议大家都去开源实践,无论你的技术如何,分享是互联网的一种精神,献出自己的一份代码,帮助更多人吧,也许你曾经使用过别人的开源框架,而现在你也开源以同样的方式献出自己的一份力量,无论结果怎样,你总会有收获。
出处:简书,作者:陈宇明 |