相信很多人在求职面试时都遇到这样的问题,总是觉的自己的项目缺乏亮点,总是在做一些业务上的CRUD,那么我们该怎样去解决这个问题呢,参与别人的开源项目或者建立自己的开源项目就是一个很好的办法。本文将谈谈我们该如何去参与别人的开源项目或是搞自己的开源项目,大家也可以来参与我的开源项目,哈哈。
下面是我接下来想要做的一个开源项目,就是建立一个基础架构平台。我们将通过对一些组件进行封装,然后从架构的角度去解决业务问题,比如:建立专属的缓存机制,建立自己的消息总线等等。我们可以学习吸收其它开源项目的一些精华,集成到一起,重要的是我们能够在这个过程中进行深度思考,去深入理解什么是架构层面,什么是业务层面,如何抽象业务上遇到的问题,怎么解决通用性问题。我们后期在开发其它项目,只需要在这个项目的基础之上写业务代码即可。
项目的地址:
https://gitee.com/zhuhuijie/base-platform
项目的架构图:
参与别人的开源项目
-
寻找项目,clone项目,运行项目。 -
熟悉项目,了解项目的设计,发现项目中存在的问题。或者向项目所有团队自荐,让项目所有团队为你分配开发任务。 -
fork 到自己的仓库。 -
按项目要求切换对应开发分支。 -
开发,调试,自测自己解决的问题,或者是自己对某个地方有更好的见解,将自己的想法编码实现。一定要注意编码规范。 -
push 到自己的代码库。 -
发起 pull request 。 -
等待项目所有团队 CodeReview 。 -
根据项目所有团队意见,修改代码,直到代码通过评审,代码被维护者合并进主分支。 -
完成一次贡献。
注意:
多查看项目的issues ,看看有些问题是不是有些人已解决,或者有的问题自己可以代替开发者解决
很多项目是很欢迎大家一起参与的,但是也为我们的参与提出了一些要求,下面是比较火的Hutool项目对贡献者的要求。
做自己的开源项目
做自己的开源项目就很简单了,随心所欲,为所欲为的,但是一个好的项目才会为你的加分项,自己做自己的产品经理,打造专属程序,多去创造亮点,将自己所学完美落地,自己造轮子,很香的。
- 确定自己的产品方向,深挖产品亮点,创造更复杂的场景,落地技术(设计轮子)
- 建立自己的代码仓库,Github、Gitee,配置开源证书(为轮子建仓库)
- 编码,改Bug,不断优化精进,推送自己仓库(造轮子)
- 推广自己的产品(推轮子)
|