经常有读者在微信上问我:

在学编程的过程中,看了不少书、视频课程,但是看完、听完之后感觉还是不会编程,想找一些项目来练手,但是不知道去哪儿找?

类似的问题,有不少读者问,估计是大部分人的困惑。

练手项目那肯定是去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

https://github.com/lenve/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,一定要多练手。

除了练手之外,找到圈子也很重要。我建了一个群,里面大部分是程序员,一起聊技术、工作、八卦。欢迎加我微信,拉你入群。

去哪找Java练手项目?的更多相关文章

  1. 20个Java练手项目,献给嗜学如狂的人

    给大家推荐一条由浅入深的JAVA学习路径,首先完成 Java基础.JDK.JDBC.正则表达式等基础实验,然后进阶到 J2SE 和 SSH 框架学习.最后再通过有趣的练手项目进行巩固. JAVA基础 ...

  2. Java 练手项目

    HotelSystem:https://github.com/misterchaos/HotelSystem(酒店管理系统 Java,tomcat,mysql,servlet,jsp实现,没有使用任何 ...

  3. 10个相见恨晚的 Java 在线练手项目

    10个有意思的Java练手项目: 1.Java 开发简单的计算器 难度为一般,适合具有 Java 基础和 Swing 组件编程知识的用户学习 2.制作一个自己的 Java 编辑器 难度中等,适合 Ja ...

  4. web前端学习部落22群分享给需要前端练手项目

    前端学习还是很有趣的,可以较快的上手然后自己开发一些好玩的项目来练手,网上也可以一抓一大把关于前端开发的小项目,可是还是有新手在学习的时候不知道可以做什么,以及怎么做,因此,就整理了一些前端项目教程, ...

  5. Python之路【第二十四篇】:Python学习路径及练手项目合集

      Python学习路径及练手项目合集 Wayne Shi· 2 个月前 参照:https://zhuanlan.zhihu.com/p/23561159 更多文章欢迎关注专栏:学习编程. 本系列Py ...

  6. 适合Python的5大练手项目, 你练了么?

    在练手项目的选择上,还存在疑问?不知道要从哪种项目先下手? 首先有两点建议: 最好不要写太应用的程序练手,要思考什么更像是知识,老只会写写爬虫是无用的,但是完全不写也不行. 对于练手的程序,要注意简化 ...

  7. 适合Python 新手的5大练手项目,你练了么?

    接下来就给大家介绍几种适合新手的练手项目. 0.算法系列-排序与查找 Python写swap很方便,就一句话(a, b = b, a),于是写基于比较的排序能短小精悍.刚上手一门新语言练算法最合适不过 ...

  8. 10个有趣的Python教程,附视频讲解+练手项目。

    从前的日色变得慢,车.马.邮件都慢 一生只够爱一门编程语言 从前的教程也好看,画面精美有样子 你看了,立马就懂了 Python最性感的地方,就在于它的趣味性和前沿性,学习Python,你总能像科技节的 ...

  9. 推荐:一个适合于Python新手的入门练手项目

    随着人工智能的兴起,国内掀起了一股Python学习热潮,入门级编程语言,大多选择Python,有经验的程序员,也开始学习Python,正所谓是人生苦短,我用Python 有个Python入门练手项目, ...

随机推荐

  1. CS144学习(1)Lab 0: networking warmup

    CS144的实验就是要实现一个用户态TCP协议,对于提升C++的水平以及更加深入学习计算机网络还是有很大帮助的. 第一个Lab是环境配置和热身,环境按照文档里的配置就行了,前面两个小实验就是按照步骤来 ...

  2. Linux错误记录贴

    add-apt-repository 不要写成 add-apt-repository service  不要写成 sevice 总之在打命令的时候要注意不要拼错单词 对于ls命令权限不够我们可以先su ...

  3. five86-1 (OpenNetadmin RCE+cp命令提权+crunch生成密码字典)

    Vulnhub-Five86-1 实验环境 kali攻击机ip:192.168.56.116 Five86-1靶机ip:192.168.56.121 知识点及工具 nmap扫描 john爆破 Open ...

  4. java变量、数据类型、运算符

    关键字.保留字.标识符 关键字 Java关键字是对Java编译器有特殊含义的字符串,是编译器和程序员的一个约定,程序员利用关键字来告诉编译器其声明的变量类型.类.方法特性等信息 保留字 goto.co ...

  5. Chrome DevTools & performance & keywords

    Chrome DevTools & performance & keywords performance / 优化性能 https://developers.google.com/we ...

  6. element-ui dialog loading

    element-ui dialog loading 指令方式 服务方式 v-loading 当使用指令方式时,全屏遮罩需要添加fullscreen修饰符(遮罩会插入至 body 上),此时若需要锁定屏 ...

  7. Chinese Parents Game

    Chinese Parents Game <中国式家长>是一款模拟养成游戏. 玩家在游戏中扮演一位出生在普通的中式家庭的孩子. https://en.wikipedia.org/wiki/ ...

  8. HTTP vs HTTP/2 vs HTTP/3 (QUIC)

    HTTP vs HTTP/2 vs HTTP/3 (QUIC) Nginx HTTP/1.1 HTTP/2 HTTP/3 (QUIC) HTTPS 计算机网络协议 OSI 协议簇 (7) TCP/IP ...

  9. js 拖拽排序

    See alsoe: https://www.runoob.com/html/html5-draganddrop.html https://developer.mozilla.org/zh-CN/do ...

  10. lua调用dll导出的函数

    参考手册 hello.dll #include "pch.h" #include "lua.hpp" #pragma comment(lib, "lu ...