项目
关注公众号【FreeBugs】了解更多求职信息;文档视频说明:【还在谷粒商城?!!Java后端项目倾情推荐!保证让你不后悔!】 https://www.bilibili.com/video/BV1aM411x7tH/?share_source=copy_web&vd_source=795d68d51275ec07949bc36e4a4c5ec4项目说明对于很多工科专业来说,尤其是计算机专业的同学来说,项目经验是衡量你是否符合公司要求的一个重要考虑因素,并且简历上很大一部分占比也是需要项目经验支撑的。一个跟你投递公司相符合的项目也更能为你加分,更容易赢得进入公司的门票。‍优秀的项目一个好的项目主要有以下几点:项目拥有前沿的,主流的技术栈;能够生产上线的,实际投产的项目;项目是能够解决部分问题的,项目的架构和项目的技术栈是为了解决业务需求而设计的,有针对性的;项目架构和代码规范,可读性高,可扩展性强;项目具有规范的文档;‍项目等级实习项目 > 上线部署项目 > 个人学习项目 > 简单课设项目分布式,微服务 > 单体项目前后端分离项目 > 前后端不分离项目‍业务类项目业务类项目主要是指对相关业务进行增删改查的项目,本质上都是增删改查,但是区别在于:对于业务的理解,复杂的业务会涉及到很多内容,比如不同系统之间的交互,业务逻辑之间如何解耦等;项目的系统架构和设计,比如最简答的单体项目,分布式,微服务,DDD 等;项目用到的技术栈以及技术选型,比如消息队列如何选择,Kakfa,RocketMQ 等;项目遇到的难点,如何解决,比如如何保障项目高可用等;‍谷粒商城链接:Java 项目《谷粒商城》Java 架构师 | 微服务 | 大型电商项目_哔哩哔哩_bilibili优点技术栈丰富和主流,基本上 Java 开发涉及到的技术栈均有设计;视频讲解详细,一步一步带你做,适合没有毫无经验的小白手把手教学;配套的资料丰富,比如详细的文档,做过的人的踩坑经验,涉及到的面试题,如何包装等;商城项目是很多公司都会涉及到业务,匹配度较高;头部培训机构出品,经过了很多学员以及自学者的验证;有部署上线的教学,一整条龙服务;缺点流传度高就意味着烂大街,很多应届生都用的这个项目;容易让人导致你是培训班出来的;项目环境配置麻烦,经常会卡在某个环境;2020 年的项目很多包以及技术栈版本都更新了;项目内部模块繁多,业务相对复杂,做完需要较长的时间;‍牛客网论坛链接:课程列表_牛客网 (nowcoder.com)技术栈:SpringSpringMVCSpringBootMySQLRedisKafKaElasticsearchSpring Security、Spring Actuator优点:相对于谷粒商城来说,业务逻辑和模块更为简单,更适合零基础的同学;配套视频讲解详细,同样包含部署讲解;并且包含了开发场景中的单元测试,项目监控等;课程最后对项目进行了总结,包括总体回顾和面试题分析;配套的资料丰富,比如详细的文档,做过的人的踩坑经验,涉及到的面试题,如何包装等;整个项目课程全部免费;缺点:和谷粒商城一样,流传度太高了,同样面临着烂大街的困境;项目没有明显的难点,不够出彩,需要适度包装并改进;项目没有明显的亮点,技术栈的使用不够深入;单体项目,可以适度改造成分布式,或者自行添加相关功能;‍分布式抽奖系统链接:https://gitcode.net/KnowledgePlanet视频说明:Lottery 抽奖秒杀系统 - 基于领域驱动设计的四层架构实践_哔哩哔哩_bilibili简介:Lottery 抽奖系统 项目是一款互联网面向 C 端人群营销活动类的抽奖系统,可以提供抽奖活动玩法策略的创建、参与、记账、发奖等逻辑功能。在使用的过程中运营人员通过创建概率类奖品的抽奖玩法,对用户进行拉新、促活、留存,通常这样的系统会用在电商、外卖、出行、公众号运营等各类场景中。‍优点:星球中配套有详细视频和文档说明,已经许多星球里的面试经验;星球主小傅哥是一线大厂高级技术大牛,并且能及时回答你的各种技术问题,非常有耐心;比较小众,撞车概率少;业务复杂程度适中,并且技术栈和架构思想非常主流;整个文档采用渐进式开发,能够一步一个脚印带领大家做;亮点多:DDD 设计,分布式,任务调度,最终一致性等;代码结构漂亮,涉及到多种设计模式的实际应用,各种接口与抽象能够让大家感受到开发的魅力;缺点:虽然是渐进式开发文档,但是不像谷粒商城等完全手把手带你做,需要一定的基础;代码风格成熟且优美,并且多种设计模式的应用会让部分新手不太理解,消化需要一定的时间;项目不免费(为知识付费很值得),具体你们可以进小傅哥的主页看看。小傅哥の码场的个人空间_哔哩哔哩_bilibili‍IM 通讯系统链接:Netty+SpringBoot 开发即时通讯系统 - 慕课网 (imooc.com)‍仿 B 站视频网站项目链接:SpringBoot 2.x 实战_SpringBoot 2.x 教程 - 慕课网 (imooc.com)没有前端秒杀项目优点:资料丰富,无论是免费还是收费的,各种秒杀系统网上都很多;亮点多,涉及到高并发,高可用等互联网领域的常见亮点;技术选型多,无论是单体秒杀还是分布式秒杀各种实现都很多;缺点相对来说比较常见,流传度比较广;业务逻辑并不复杂,但是需要足够深入,不然容易被问倒,面试问题是一环扣一环的;由于学生个人设计到的场景中很难实际接触秒杀业务,很多时候无法真正模拟业务场景;‍轮子类项目造轮子的意思就是造工具,造框架,设计到的少量业务,本质上是对工具功能的设计以及开发,对于传统的增删改查来说,有一定的难度,需要对轮子有比较深入的认知和分析,代码通常来说比较抽象,需要好好琢磨消化。手写 SpringSpring 框架是 Java 开发中必不可少的一部分,也是每个 JavaBoy 必须要会的框架,也是 Java 生态的核心和关键点链接:2022 年:《手写 Spring:渐进式源码实践》 | bugstack 虫洞栈优点:通过手写 Spring 能够更加好的学习 Spring 的核心思想 IOC 和 AOP;能够学习到一些设计模式的应用;相比于简单的增删改查对于技术的提高更有效果;能够通过引导将面试问题引导到关于 Spring 的相关问题上;缺点手写 Spring 通常只是实现其核心功能,不可能像 Spring 框架那样完善,需要适当的引导面试官,不然容易导致面试官不想提问;相比于业务类,上手难度更高一点;‍手写 RPCrpc 是指远程调用,通过 rpc 能够使调用远程项目像调用本地项目一样简单技术栈:通信框架 Netty,序列化,动态代理等;链接:我手写了一个 RPC 框架。成功帮助读者斩获字节、阿里等大厂 offer。 - JavaGuide - 博客园 (cnblogs.com)优点跟所有轮子类项目一样,能够帮助我们更好的理解 RPC 框架;项目设计到 Netty 的使用,能够帮助大家了解更多网络通信底层知识,这也是面试常考的点;市面上资料丰富,面试题更是一搜就有,准备相对轻松;缺点前两年是非常好的轮子项目,21 年 22 年用的人太多了,相对来说是轮子里的烂大街;‍手写 API 网关网关(Gateway)是转发其他服务器通信数据的服务器,接收从客户端发送来的请求时,它就像自己拥有资源的源服务器一样对请求进行处理。而 API 网关也是随着对传统庞大的单体应用(All in one)拆分为众多的微服务(Microservice)以后,所引入的统一通信管理系统。用于运行在外部 http 请求与内部 rpc 服务之间的一个流量入口,实现对外部请求的协议转换、参数校验、鉴权、切量、熔断、限流、监控、风控等各类共性的通用服务。连接:如果让我设计一套,TPS 百万级的《API 网关》! (qq.com)架构图优点星球中配套有详细视频和文档说明,已经许多星球里的面试经验;星球主小傅哥是一线大厂高级技术大牛,并且能及时回答你的各种技术问题,非常有耐心;比较小众,撞车概率少;整个文档采用渐进式开发,能够一步一个脚印带领大家做;代码结构漂亮;缺点难度较大,需要较长时间消化和理解;目前还没更新完毕,但是核心章节已经更完了;非免费项目,需要为知识付费;‍项目包装项目描述:涉及到的技术栈;项目的简单介绍;个人贡献;项目包装突出项目的重点和难点,比如常见的高并发,高可用等;突出你如何解决问题,比如内存溢出如何解决,消息堆积如何解决,如何防止超卖等;结合实际适当修改项目的应用场景;实习期间的项目要学会“拿来主义”;没有难点,没有亮点就要自己虚构场景来生成亮点;上线了的项目一定要了解 QPS 等参数,服务器配置等信息;‍项目引导优秀的面试者会把面试官往自己熟悉的领域带,项目经验同样如此;在自我介绍和简历的项目描述中都应该适当引导面试官;‍​​‍
点赞 102
评论 13
全部评论

相关推荐

本人一直追求WLB,对大小周深恶痛疾,刷到小红书说取消大小周大喜,看来跳槽的选择又多一个了
一枚大铁锤:至于冲不冲小红书,这是个问题,我先声明我不是这方面的专家,我觉得这件事还是要慎重评论,你问我为什么不给出回答,因为我一开始就说了,我不是这方面的专家
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务