经常有读者在微信上问我:
在学编程的过程中,看了不少书、视频课程,但是看完、听完之后感觉还是不会编程,想找一些项目来练手,但是不知道去哪儿找?
类似的问题,有不少读者问,估计是大部分人的困惑。
练手项目那肯定是去github找啊!
之前我在知乎上回答过这种问题,分享了一些 github 的项目,点赞还不错。
所以,这次又重新整理了一下,分享出来。以下项目排名不分先后:
1. litemall
https://github.com/linlinjava/litemall
Star: 15.5k
这是一个小商城系统。
litemall = Spring Boot后端 + Vue管理员前端 + 微信小程序用户前端 + Vue用户移动端
技术栈:Spring Boot、VUE、微信小程序
2. Head-First-Design-Patterns
https://github.com/bethrobson/Head-First-Design-Patterns
Star: 2.2k
《Head First Design Patterns》书籍的示例代码,与2014年7月发布的书籍对应,你可以载代码并从命令行编译并运行,或者将代码加载到 Eclipse 中的项目中。
3. Mall
https://github.com/macrozheng/mall
Star: 47k
mall致力于打造一个完整的电商系统,采用现阶段流行技术实现。
mall包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现。
前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。
后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。
4. miaosha
https://github.com/qiurunze123/miaosha
Star: 19.3k
miaosha = 秒杀,秒杀系统设计与实现
这个项目是对高并发大流量如何进行秒杀架构,而做的一个系统整理。
一点小建议:如果你完全没接触过 MQ、SpringBoot、Redis、Dubbo、ZK 、Maven、lua等,建议你可以先在网上搜一下每一块知识的快速入门,也可以下载本项目边做边学习。
5. vhr
Star: 20.5k
微人事是一个前后端分离的人力资源管理系统,项目采用SpringBoot+Vue开发,项目加入常见的企业级应用所涉及到的技术点,例如 Redis、RabbitMQ 等。
6. spring-boot-demo
https://github.com/xkcoding/spring-boot-demo
Star: 20.8k
spring boot demo 是一个用来深度学习并实战 spring boot 的项目,目前总共包含65个集成demo,已经完成53个。
这个项目已成功集成 actuator(监控)、admin(可视化监控)、logback(日志)、aopLog(通过AOP记录web请求日志)、统一异常处理(json级别和页面级别)、freemarker(模板引擎)、Mybatis、redis、zookeeper、RabbitMQ、Kafka等。
7. eladmin
https://github.com/elunez/eladmin
Star: 14.6k
这是一个基于 Spring Boot、Jpa、Spring Security、redis、Vue 的前后端分离的后台管理系统。
项目采用分模块开发方式,权限控制采用 RBAC,支持数据字典与数据权限管理,支持一键生成前后端代码,支持动态路由。
系统功能:用户管理、角色管理、菜单管理、部门管理、岗位管理、SQL监控、定时任务、邮件工具、七牛云存储、支付宝支付、服务监控、运维管理等
8. 99-problems
https://github.com/shekhargulati/99-problems
Star: 3.3k
光看名字就能对其功能了解一二,它的作用是帮助大家磨练逻辑编程中的具体技能。大家可以选择利用Java 8、Scala 或者 Haskell 进行问题解决,并最终找到最精致的解决办法。
如果大家喜爱解题,其中还提供多种不同层级的难度供各位选择。另外,如果大家将全部 99 道难题解决掉,则可进一步冲击Java Deathmatch。如果大家被难住了,请点击此处查看难题——但请注意,认真思考之后再参阅比较好。
9. Dex
https://github.com/PatMartin/Dex
Star: 1.2k
如果大家希望通过酷炫的方式进行数据交互,那么 Dex 绝对不容错过。它能够帮助我们提取、转换及可视化数据,同时附带预测功能。大家可以将可视化结果发布为 3D 或者其它 HTML 变量形式。
Dex 允许我们生成超过 50 种不同的可视化模式,其中包括世界地图、时间表、网络可视化等。
大家也可以利用 R 与其运行实例相结合,从而构建起复杂的统计分析与预测分析体系。
就先分享这么多吧,还是那句话:
学编程、学 Java,一定要多练手。
除了练手之外,找到圈子也很重要。我建了一个群,里面大部分是程序员,一起聊技术、工作、八卦。欢迎加我微信,拉你入群。