西北工业大学吧 关注:261,087贴子:7,199,154

回复:从保研到大厂:如何选择方向、获取信息与规划路径?【就业路线贴】

只看楼主收藏回复

4.4. 刷题应该怎么入手
这一节其实就是教的算法学习,也可以换个标题,我该如何学习算法?
首先先来说一下,算法的理论知识如何学习。
1. Acwing算法基础课
https://www.acwing.com/activity/content/introduction/11/

不太记得价格了,打折应该不到100块,简直超值,讲课是用的C++,但是Java也可以食用,每一道题中都有有很多Java的题解,既适合找工作的兄弟学习,也适合想打算法竞赛的兄弟学习。
2. 左程云LeetCode(B站)

最大的优点就是用Java写代码,并且刷的是LeetCode,相当于把工作前刷LeetCode的时间节省了,写Java的同学可以考虑这个课程。其次就是用什么平台进行刷题:
1. 找工作为目的:可以直接上leetcode和牛客,leetcode主要将hot100和《剑指offer》刷熟练,牛客用于熟悉笔试和面试环境,因为leetcode的题大多数是接口形式,自己不用进行输入输出,而笔试面试一般都需要自己进行输入输出,也就是ACM模式。
2. 学习为目的:Acwing、洛谷和Codeforces,其实都差不多,这几个平台都偏向于算法竞赛,Codeforces中题目难度较大。


IP属地:北京93楼2025-03-18 19:28
收起回复
    4.5. 数据库
    关系型数据库一般学习MySQL,这里只推荐一些MySQL,像Redis这种非关系型数据库在中间件学习中再进行推荐。的这里不区分C++和Java,Java的大佬为我们铺好了路。
    1. 尚硅谷MySQL

    康师傅伟大,无需多言,最全、最细的教程,没有之一。
    2. 《MySQL实战45讲》

    进阶版教程,需要有一定MySQL基础进行学习。极客时间的内容一般需要付费,网上也有很多学习版。


    IP属地:北京94楼2025-03-18 19:46
    回复
      2025-12-30 13:24:14
      广告
      不感兴趣
      开通SVIP免广告
      4.6. 操作系统
      这一章主要就是基本功了,特别是C++的同学需要自己学习Linux等操作系统。
      1. 《鸟哥的Linux私房菜》

      我Linux的入门书籍,讲解得很全面,后端将前部分看完就可以了,想要做SRE的同学需要将其学完,强烈建议边看边敲。
      2. 《CSAPP》

      伟大,无需多言,程序员必看书籍,带你深入理解计算机系统,建议配合课程一起看,有时间可以将实验也做了,瓜大的计基实验就是抄的这个。
      3. 小林coding《图解系统》
      https://xiaolincoding.com/os/#%E5%B0%8F%E7%99%BD%E9%80%82%E5%90%88%E7%9C%8B%E5%90%97

      找工作必看,图解清晰,内容完善,非常好的八股文。


      IP属地:北京95楼2025-03-18 20:03
      回复
        4.7 网络
        不论是前端还是后端,计算机网络都是必学的内容之一,只有将一个个电子设备相连接进行,设备间可以进行通信,才有了今天的生活。计算机网络主要学习HTTP、DNS、TCP/UDP、IP以及MAC等,了解网络的基本原理,有助于在编程中使用合适的协议,也有助于网络架构的调优。计算机网络是大厂面试必问的内容,特别是C++,还要掌握Linux下网络编程。
        下面推荐一些资源:
        1. 《计算机网络:自顶向下方法》

        伟大的黑书,无需多言。
        2. 《图解HTTP》《图解TCP/IP》


        图片清晰,原理讲解得比较清楚,但是不涉及实操。
        3. 《UNIX网络编程》

        C++的兄弟们看过来,要学习在Linux下进行网络编程可以看这本经典书。
        4. 尚硅谷JavaWeb

        Java的网络编程,这个教程没有涉及SSM,想学SSM的可以看黑马那一套。
        5. 小林coding《图解网络》
        https://xiaolincoding.com/network/
        伟大的八股,不适合没有基础的去看,适合已经开发过网络相关的内容,去进行深度的扩充。


        IP属地:北京96楼2025-03-18 20:29
        回复
          4.8. 编译原理
          这个大厂基本不问,属于是基本功,为了保证学习路线全面,白晨还是简单地推荐一些课程。如果想真正学好编译原理,可以去GitHub上找一些简单的编译器实现,甚至只用做编译器的前端都可以。
          1. 《编译原理》

          经典的龙书,如果大家上过编译原理的课,相信老师或多或少都会提到这本书。、
          2. 哈工大公开课

          配合龙书食用。


          IP属地:北京97楼2025-03-18 20:59
          收起回复
            4.9. 框架学习
            这里主要讲Java的框架Spring、SpringMVC、MyBatis(MyBatis Plus)、SpringBoot、SpringCloud,其实也没有什么必要推荐了,到这一步基本上大家都能自己去资源学习了,如果迷茫,就去找国内两大Java黄埔军校——尚硅谷和黑马的资源。
            一般来说,学习路线是:JavaWeb->MyBatis->Spring->SpringMVC->SpringBoot->SpringCloud
            速成可以看黑马的,时间比较短,比较干练。
            非速成可以看尚硅谷的,时间长,但是讲的比较深。
            这里我就不水字数把这些资源放出来了,直接去B站搜就有。

            这里推荐一些Java的内功:
            - JVM

            对于Java程序员来说,JVM是不可或缺的基石,它不仅实现了Java的跨平台能力,让代码能够“一次编写,到处运行”,还通过自动内存管理和垃圾回收机制,减轻了程序员的内存管理负担。JIT提升了程序的执行效率,而其安全机制和丰富的性能调优工具,则帮助程序员构建稳定、高效且安全的应用程序。此外,JVM支持多种语言,拓宽了开发选择,其在Java生态系统中的中心地位,使得Java程序员能够充分利用各种框架和工具,提升开发效率和应用性能。
            还是那句话,有时间看尚硅谷,没时间看黑马。
            - JUC

            适合有开发经验的人去学习,不适合小白。掌握JUC不仅是实现线程安全、提升系统稳定性的关键,更是进阶为高阶Java开发者的必备技能,尤其在分布式系统、实时数据处理等现代应用场景中不可或缺。


            IP属地:北京99楼2025-03-18 21:09
            回复
              4.10 中间件学习
              4.10.1. Redis
              必学,无论什么后端开发,缓存数据库,顶在MySQL前面的男人。

              这里只推荐尚硅谷的,因为新,讲解了Redis7,最好把基础篇和高级篇都看了,高级篇讲的很深入,基本涵盖了面试的所有问题。


              IP属地:北京100楼2025-03-18 21:24
              回复
                4.10.2. 消息队列
                消息队列入门,kafka、RocketMQ、RabbitMQ 这三个选一个学就行。
                这里比较推荐学RabbitMQ,因为提供友好的 Web 管理界面,便于监控和调试,并且基于 AMQP 协议,概念清晰(生产者、消费者、Exchange、Queue、Binding),逻辑直观。

                选择其一就行。


                IP属地:北京101楼2025-03-18 21:36
                回复
                  2025-12-30 13:18:14
                  广告
                  不感兴趣
                  开通SVIP免广告
                  4.10.3. Nginx
                  Nginx 是一款高性能的 开源Web服务器 和 反向代理工具,以其轻量级、高并发处理能力和灵活的配置著称。运维的同学必学,应届生一般只要学怎么用就行,再往深意义不大。

                  看前面基础部分就行,后面意义不大。


                  IP属地:北京102楼2025-03-18 21:42
                  回复
                    4.10.4. Netty
                    Netty 是一款基于 Java NIO 的高性能异步网络编程框架,会用就行,面试一般问的就是其背后的NIO思想,不会深入到Netty底层。


                    IP属地:北京103楼2025-03-18 21:43
                    回复
                      4.10.5. Elasticsearch
                      Elasticsearch 是一款基于 Lucene 构建的分布式搜索和分析引擎,一般项目里写到搜索就会问有没有用过ES,建议还是理解一下里面的正排索引和倒排索引的思想。

                      这个课相比于其他课资料比较全,可以直接在尚硅谷的网盘里面拿。


                      IP属地:北京104楼2025-03-18 21:43
                      回复
                        4.11. 工具
                        4.11.1. Git
                        代码管理工具,程序员必学,不学进公司就有福了🤪。

                        常用命令很简单,多用用就会了,命令忘了直接上网查就行。


                        IP属地:北京105楼2025-03-18 21:45
                        回复
                          4.11.2. Docker
                          容器化平台,用于将应用程序及其依赖项打包成轻量级、可移植的容器,实现快速部署和跨环境一致性运行。就算自己没用过,拉别人项目的时候,一般也能看到用Docker部署的字样,不难,有时间多熟悉熟悉命令就行。


                          IP属地:北京106楼2025-03-18 21:45
                          回复
                            4.11.3. k8s
                            容器编排与管理的事实标准,用于自动化部署、扩展和运维容器化应用,简单来说就算管理Docker容器的,会用就行,应届生要啥自行车。


                            IP属地:北京107楼2025-03-18 21:46
                            回复
                              2025-12-30 13:12:14
                              广告
                              不感兴趣
                              开通SVIP免广告
                              多更,把瓜兵都带进大厂


                              IP属地:江苏108楼2025-03-18 21:48
                              回复