从谷歌面试翻车到实习offer收割的心路历程
首先声明,这只是我的播客随感,其中无法避免有一些个人色彩的见解,请不要在意,我尊敬任何的互联网公司,尊敬研究生期间的老师同学,我只希望给在求学路上的CS同学一些启发。 先介绍一下背景,我是ACM铜牌退役狗,在某985读研,今年找暑期实习。过去两年一直准备去谷歌或者其他好的IT外企实习,坚持刷了两年CF,kicks...
2020-04-17 16:09
阅读(223)
从谷歌面试翻车到offer收割的心路历程
首先声明,这只是我的播客随感,其中无法避免有一些个人色彩的见解,请不要在意,我尊敬任何的互联网公司,尊敬研究生期间的老师同学,我只希望给在求学路上的CS同学一些启发。 先介绍一下背景,我是ACM铜牌退役狗,在某985读研,今年找暑期实习。过去两年一直准备去谷歌或者其他好的IT外企实习,坚持刷了两年CF,kicks...
2020-04-17 16:09
阅读(173)
面试官在“逗”你系列:不借助第三变量交换两个变量值的方案你有几种?
引言 在我们学习编程之初,就学习过变量的赋值操作,同时也学习了将一个变量的值赋值给另外一个变量。对于交换两个变量的值,很多童鞋都有解决方案。然鹅,对于面试官提出的不借助第三变量来交换两个变量的值,你能想到几种解决方案呢? 如果你只知道一种方案,请你认真看下去... 如果你知道两种方案,那么你可以来了解更多方案...
2020-04-15 00:50
阅读(212)
【高并发】为何高并发系统中都要使用消息队列?这次彻底懂了!
写在前面 很多高并发系统中都会使用到消息队列中间件,那么,问题来了,为什么在高并发系统中都会使用到消息队列中间件呢?立志成为资深架构师的你思考过这个问题吗? 本文集结了众多技术大牛的编程思想,由冰河汇聚并整理而成,在此,感谢那些在技术发展道理上默默付出的前辈们! 场景分析 现在假设这样一个场景,用户下单成功...
2020-04-14 20:13
阅读(138)
【高并发】你知道吗?大家都在使用Redisson实现分布式锁了!!
写在前面 忘记之前在哪个群里有朋友在问:有出分布式锁的文章吗~@冰河?我的回答是:这周会有,也是【高并发】专题的。想了想,还是先发一个如何使用Redisson实现分布式锁的文章吧?为啥?因为使用Redisson实现分布式锁简单啊!Redisson框架是基于Redis实现的分布式锁,非常强大,只需要拿来使用就行了,...
2020-04-14 00:04
阅读(219)
基于OAuth2.0的token无感知刷新
目前手头的vue项目关于权限一块有一个需求,其实架构师很早就要求我做了,但是由于这个紧急程度不是很高,最近临近项目上线,我才想起,于是赶紧补上这个功能。这个项目是基于OAuth2.0认证,需要在每个请求的头部携带access_token,如果这个access_token过期,需要利用已有的refresh _t...
2020-04-12 18:57
阅读(327)
在vue项目中封装echarts的正确姿势
为什么需要封装echarts * 每个开发者在制作图表时都需要从头到尾书写一遍完整的option配置,十分冗余 * 在同一个项目中,各类图表设计十分相似,甚至是相同,没必要一直做重复工作 * 可能有一些开发者忘记考虑echarts更新数据的特性,以及窗口缩放时的适应问题。这样导致数据更新了echarts...
2020-04-11 15:39
阅读(174)
为什么要用内插字符串代替string.format
知道为什么要用内插字符串,只有踩过坑的人才能明白,如果你曾今使用string.format超5个以上占位符,那其中的痛苦我想你肯定是能够共鸣的。 一:痛苦经历 先上一段曾今写过的一段代码,大家来体会一下: LogHelper.WriteLog(string.Format(@"=== Square发送服务中 ==...
2020-04-11 13:40
阅读(247)