五年时间,对于程序员来说,真的非常非常宝贵,掉的头发都够塞满键盘的缝隙了。就说新一代偶像 TFboys 吧,你应该知道这个组合吧,黄金合作期也就三五年的时间,现在基本上就处于各自单飞(solo)的状态了。
我是一名大专生,因此,大学上了两年,大三出去培训了两个月,然后就参加工作了。
大学的两年时光,对我来说是漫长的,换个难听的词叫做**“煎熬”**。真的是没有任何进步,说原地踏步都算是褒奖了,严格意义上说,是在走下坡路。为什么这么说呢?因为我英语连 4 级也没有过,考了两次啊,想想都难过,做个学渣我容易吗我?想想当年高考的英语成绩可是考了 136 分啊,不算好,也算正常水平了吧。
对于程序员来说,英语是相当重要的,不可否认吧?但我竟然连 4 级都没有过——惭愧惭愧,快来羞辱我吧。那为什么两年时间,我没有进步呢?我来当个标本从里到外剖析一下。
第一,我失去了目标。上小学、上初中、上高中,目标很明确,考大学走出农村嘛。考了两年,竟然只能上个大专,无所谓了,瞎胡混呗。
第二,学校氛围不行。我的自控力很一般,是个随波逐流的家伙。大专院校嘛,自然学生的整体学习能力和本科相比,还是有差距的。没办法,只能自甘堕落。
第三,我打游戏,不学习。上课还带着笔记本打单机游戏呢,那时候最爱的就是极品飞车,现在提起来,还能想起当年的那股兴奋劲。
谁要是也有这种症状,赶紧治疗,还来得及。
知耻而后勇,学会笨鸟先飞
先给大家分享一下面试阿里遇到的面试题吧, 要不然氛围太沉闷了,哈哈 我有点担心读者朋友都会读不下去的,面试题过后会给大家分享一些学习方式的~!
阿里一面:(spring+HashMap+微服务)
- 看过Spring的源码吗,开局 暴击。
- Class.forName0和ClassLoaderloaderClass0有什么区别,开局暴击*2…
- ConcurrentHashMap的原理,为什么是线程安全的,让你设计怎么实现读写安全
- Mysq|中有哪些索引,你能想到哪些作为索引的数据结构, HashMap , B+树,前缀树,面试官提示跳表
- Spring事务传播机制的应用
- 线程安全的单例模式,写完DCL写静态内部类的时候写错了,汗
- 正向代理和反向代理
- http是有状态的吗, tcp呢,为什么http是无状态的
- RPC和微服务框架了解吗
一面面了一个多小时吧,很多常见的面试问题就没列了,列的是以前没碰到过问题,感觉面试官很重视思维能力和总结能力,即对于一个设计中的原理很深刻并且能用于其他地方。
阿里二面(项目,项目,项目)
- 先聊了聊项目
- JVM
- OOM问题和StackOverflow有什么区别
- 好像问了些网络方面的知识
- 思考题,64匹马,8个赛道,最少比多少场可以找出最快的4匹马?首先说15,后来想到了13,最后在网上搜的答案是11,挺有意思的一道题
总结:二面面试官项目方面聊的多一些,然后就是思考题和算法题,也差不多一个小时吧,当时从6点直接面到8点多,饭都没吃,突出一个惨
阿里三面:(项目+高并发+设计模式)
- 聊聊sychronized关键字,用法,底层实现,偏向锁,轻量级锁,自旋锁
- 聊聊偏向锁,轻量级锁的原理和过程
- 除了sychronized ,还有啥,聊聊ReentrantLock ,底层一个继承了AQS的实现类
- 聊聊AQS , volatile修饰的state ,加锁过程,公平锁和非公平锁的实现
- TCP和UDP的区别
- 三次握手和四次挥手的过程,为什么这样
- 聊聊ThreadLocal ,为什么要用threadLocal , ThreadLocalMap中, key和value分别哪个是强引用,哪个是弱引用,我迷之坚持value是强引用。。。
- 线程的状态以及状态变化过程
- CMS和G1的区别
- 聊聊Spring中的动态代理,实现了接口的用JDK动态代理,未实现接口的通过CGlib动态代理,动态代理和静态代理的区别
- 常用设计模式,策略模式的原理和应用
面试官介绍部门和业务的时候很热情也很详细,然后说等HR通知~
找到适合自己的时间管理术,这样学习起来就会事半功倍
关于时间的管理,首先:
要有一个大一点的计划,比如年计划,月计划,周计划。
这一年大体上要打到什么目标,这个月要学习哪些知识。
然后是精确到小时的日计划。
每一天,哪个时间段做什么都详细的列出来。
**其次,不要太盲目自信。**很多人其实从来没有完成过自己的计划。如果你真的能够完成你制定的每一个计划,那现在的你一定已经很了不起了。如果你几乎没有完成过自己的计划,那么你一开始制定日计划的时候,不要给自己太多的任务。因为如果你一旦完不成,就会影响自己的信心。最好的方式是,一开始制定一些简单的计划,然后每天很容易就能做到,然后慢慢的去增加自己每天的任务量。最后找到一个最适合自己的节奏。这个过程可能需要很长的时间,因为你要不断的去尝试,去改进。找到最适合自己的作息时间去休息,找到自己工作状态最好的时间去工作等等。
第一份,spring全家桶全部带走,带你玩转Spring全家桶、
保证你能收获到以下
- 掌握Spring全家桶主要部分的开发、实现
- 可以使用Spring MVC、Spring Boot、Spring Cloud及Spring Data进行大部分的Spring开发
- 初步了解使用微服务、了解使用Spring进行微服务的设计实现
- 奠定扎实的Spring技术,具备了一定的独立开发的能力
01,Spring入门到精通
- 第一部分 Spring架构分析
- 第二部分 Spring应用开发
- 第三部分 Spring高级主题
01,Spring入门到精通
02,Spring Boot技术内幕
- 第一部分 基础应用开发
- 第二部分 分布式应用开发
- 第三部分 核心技术源代码分析
02,Spring Boot技术内幕
03,springMVC学习指南
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还可以是 Struts 这样的 Web 框架。
第二份:SpringCloud微服务学习
Spring Cloud 是一套完整的微服务解决方案,基于 Spring Boot 框架,准确的说,它不是一个框架,而是一个大的容器,它将市面上较好的微服务框架集成进来,从而简化了开发者的代码量。由浅入深带领大家一步步攻克 Spring Cloud 各大模块,接着通过一个实例带领大家了解大型分布式微服务架构的搭建过程,最后深入源码加深对它的了解。
关于面试
很多开发者找工作时,只是一家家投简历,一遍遍做笔试,一次次去面试,然后一次次被拒绝……其实并不知道如何系统准备一场面试,每次面试都像撞大运,这样的求职过程,既困难又痛苦。
小编这边准备了一份互联网Java架构师的面试真题,在这次面试的时候也给了我很大的帮助
涵盖内容:Java常考题目、JVM、多线程、MySQL、Redis、Kafka、Docker、RocketMQ、Nginx、MQ队列、数据结构、并发编程、并发压测、秒杀架构等。