看到后,我想着应该能帮到不少读者们,于是就去下载体验了一下,摸索了好几天,整体感受还是很不错的,接下来带大家感受一下腾讯云AI代码助手!
- 不知道怎么高效快速刷算法题?教你用「腾讯云AI代码助手」提高刷算法题的效率
- 没有老师带就看不懂工程?不知道怎么准备项目?教你用「腾讯云AI代码助手」如何快速上手拆解项目、理解工程架构
首先我们要安装一个插件:腾讯云AI代码助手,可以直接在Visual Studio Code和JetBrains的IDE里安装。
安装链接:https://acc.cloud.tencent.com/downloads
算法题
算法题分为「写」->「解析」->「总结」->「拓展」四步。
(1)写
我试验了力扣Top 100道算法题,对于Easy和Medium的题目,「腾讯云AI代码助手」基本都能AC。
但显然对于提高算法能力,我们不能完全依赖于「腾讯云AI代码助手」,比较好的方式是:写完后让「腾讯云AI代码助手」帮忙优化代码结构、代码风格、找错误。
比如,如果出现编译错误,你可以选中代码,右键让「腾讯云AI代码助手」帮你修复代码:
(2)题目解析
写完算法题,我们就要需要看题解,看看别人有什么写得好的地方,我们可以学习借鉴。
C同学经验:“如果你实在时间紧迫,来不及慢慢写,或者一开始写感觉到完全没有思路,你可以先看一百道例题的解答方法,看着看着你就会了,再去刷这一百道题。有时间的话,再开始刷其他的变形题。”
有时遇到特别难的问题,加上题解说得不够清楚,很容易让人产生畏难心理。我们就可以把代码or原始题解粘贴过来,让「腾讯云AI代码助手」手帮我们逐步解析。
(3)总结
K同学经验:“我们可能在很多个不同的网站上刷了题,比如力扣、Grind、CodeTop或者GitHub上找的不同人设计的题单等,复习的时候到处找会很麻烦,影响学习效率,所以,我们可以把题目和代码 按照题目类型 分类整理进自己的文件夹。有时间的话,可以附上自己的题解。”
“附上自己的题解”其实是件挺耗时的事情,我们可以用「腾讯云AI代码助手」的生成文档功能,自动加上注释。
注释生成后,再点击右上角的「insert at cursor」,就可以在指定位置贴上「腾讯云AI代码助手」生成的代码了。你也可以点击右上角的三个点,选择「insert as file」,存进新文件里。
(4)扩展
Y同学经验:“做一道题不能局限于一道题,要’发散式’做题,比如做一道排序,就顺便学一下/复习一下归并排序、桶排序等排序方式;做一道二分查找,就顺便复习一下其他查找方式。”
具体而言,你可以选中代码,询问「腾讯云AI代码助手」:“这道题涉及什么考点?”
得到回答是“二分查找”后,再问:“除了二分查找,还有什么其他的查找方式?”以及“这些查找方式有什么经典的算法题?”
学项目
准备秋招,我们除了找热门项目视频课程学习,自主学习GitHub上的优质项目也是很重要的。通过不断模仿和学习,把项目「内化」成自己的。
可是,我最近发现很多同学不知道怎么学项目,怎么看懂工程代码,理解工程架构。拿到一大堆代码,就感觉头晕眼花,没有老师带着不知道怎么下手了。
我这里总结了一套学项目的方法论:(1)理解项目的业务背景 (2)根据业务重点,从入口开始看核心代码 (3)理解技术架构 (4)自己模仿学习
(1)理解项目的业务背景
有些同学习惯于一上来就哐哐看代码,一上手就从main函数开始往下看了。可是,这样怎么能理解这段代码的核心功能呢?
我们写代码其实就像当翻译,产品经理给我们写个需求文档,我们就负责把这些文字翻译成代码。给出问题,我们写答案。
我们首先要了解这个工程的业务背景,用大白话说就是:这堆代码是为了干什么?主要有什么功能?
比如,经典的电商项目,核心模块无非就是「商品管理」、「店铺管理」、「订单管理」等模块;又比如,通讯软件,核心问题就是「怎么把消息发给另一个人?」;又又比如,视频软件,核心问题就是「怎么把视频传输给用户?」
(2)根据业务重点,从入口开始看核心代码
明确了你手上这个系统想解决的问题是什么、想实现的核心功能是什么,你就知道从哪里开始看代码了。
第一步,我们需要从整体到具体地去看,“抓大放小”。从入口开始,我们拿到一个核心模块,理解每句代码的作用是什么,但此时还不用跳进子函数里看,避免被细节绕晕。到重点的函数,就先打个断点。
第二步,我们回到开头,看每一个被打点的重点函数,继续“抓大放小”地看,以此类推。
同理,在这你也可以用「腾讯云AI代码助手」的「解释代码」、「生成文档」功能,帮助你理解这段代码的逻辑。
最后,总结这块代码「解决了什么问题」 「技术难点在哪,怎么解决的」,这部分项目就算是搞明白了。同时,和写算法题一样,我们也要扩展地看看有什么其他的解决方案。这对于面试非常有帮助。
有面试经验的同学应该都知道,面试官通常不会单纯地只问你这个项目的这个细节是怎么做的,通常还会问:
- 1.除了这个方案,你还有其他的解决方案吗?
- 2.这个解决方案有什么优缺点?
- 3.如何提高这个解决方案的性能?
如果你在学项目的时候就举一反三地思考过这些问题,看过一些扩展的解决方案,那么拿下“场景题”就是顺其自然、手到擒来的事了。
(3)理解技术架构
有些同学可能觉得“技术架构”很抽象,简单来说就是我们是「怎么解决业务问题的?」
我们已经在前两步知道了业务问题是什么,具体是怎么做的,现在我们要做的是从宏观视角把这个项目的结构抽出来,包括「核心业务场景的业务流」、「数据流」和「技术选型」。
W同学经验:“我在拆解项目技术架构的时候,会先看maven文件(pom.xml),看看用了什么依赖,这些依赖分别是做什么用的。”
我们可以让「腾讯云AI代码助手」帮我们总结并解释依赖文件,看看用了哪些依赖,以及他们的用处是什么,这样,我们就能清晰地画出这个项目的技术架构图了。
(4)自己模仿学习
最后一步,也是最重要的一步,就是自己模仿着写一个项目。
这时用「腾讯云AI代码助手」的代码补全功能,可以帮助我们把注意力更多放在实现需求、解决问题上。「腾讯云AI代码助手」可以跨文件理解工程,通过其他相关文件、上下文、注释等推测代码,帮助我们补全代码。
这比我们复制粘贴代码去问网页对话式的AI工具方便得多,而且还没有代码长度的限制。
总结
最后做个总结
刷算法题:
- (1)自己动手写,「腾讯云AI代码助手」帮忙润色
- (2)题目解析,让「腾讯云AI代码助手」解释代码,方便理解
- (3)总结整理,让「腾讯云AI代码助手」生成代码文档,方便复习
- (4)扩展学习,“发散式学习”,从点到面
学习项目:
- (1)理解业务架构:这个项目要解决什么问题?
- (2)理解核心代码:抓大放小地理解,这个问题具体是怎么被解决的?
- (3)理解技术架构:项目用到的各种依赖的作用以及怎么交互的?
- (4)模仿学习:重点放在解决问题,让「腾讯云AI代码助手」补全解决细节问题
秋招在即,焦虑是很正常的。不过,焦虑解决不了任何问题,我们实实在在地去做,准备程度到了一定水位,焦虑水平就会慢慢下降了。
相信掌握了这套方法论,大厂offer那必然是手到擒来,加油!
速速 mark 住这份集齐了 10 人均 5 个大厂offer的收割机同学们智慧的备战技巧,打开IDE,下载腾讯云AI代码助手,开搞!
腾讯云AI代码助手官方地址:https://cloud.tencent.com/product/acc?fromSource=kol_730
当然,「腾讯云AI代码助手」也不仅针对算法和项目,实际上对于我们程序员开发工作上也是很有帮助的,比如可以帮助我们代码补全、写单元测试、对现有的代码进行的优化等等。
具体的展示,可以看腾讯官方录制的演示视频: