从毕业实现到现在,满打满算已经Java开发4年了。算上实习,呆过3家公司(在职ing),最近心血来潮,想参加一些开源项目还升华自己的开发经历。大家觉得哪些类型的开源项目比较牛逼一点呢?
这之前,楼主接触的都是前端的开源项目:
比如自己
1.仿jQuery封装过类似的js Dom库。
https://gitee.com/springchang/jSelect
2.用原生js写过日期插件,
https://github.com/Spring-Chang/datepicker
3.已经读过canvas框架oCanvas源码。
这些都是前端的框架,去年一年都集中精力在前端编程上面,今年想集中经历在Java后台。也想跟着别人造轮子参加一些Java开源项目之类的,大家有没有啥子含金量高的,适合新人收入的Java开源项目推荐呢?
我个人想法是:
1.读一读tomcat源码,原因:目前正在看《How tomcat works》这本书,虽然才开头,但是书中揭秘了Tomcat其实就是HTTP+Socket编程,外加观察者设计模式。这有利于回忆Java网络编程,毕竟干了4年的Java Web开发,思维模式都固定,想换种编程思维看看。
缺点就是:现在Tomcat快被淘汰了,研究一个快被淘汰的服务器源码还有没有价值?
2.写一个编译器,自我感觉在学校学的C语言并不差,说实话当时学的编译原理根本没学进去,最近在网易课程看到相关的视频教程,用Java实现一个编译器,
https://study.163.com/course/courseMain.htm?courseId=1002830012&_trace_c_p_k2_=1c5d11076d3146be8b36513e905b1f48我觉得这对JVM或者编译原理的理解很有帮助。
缺点就是:干了4年的开发,从没发现数据结构和编译原理上东西派上用场,而且现在招Java程序员都没听说哪家公司说懂编译原理是加分项,不知道对求职简历有没有帮助?
3.参加一些Java电子商城之类的开源项目?用到微服务+并发框架的点子商城。
https://github.com/macrozheng/mallhttps://github.com/macrozheng/mall-admin-web这类开源项目是偏向于应用型的。