后端实践:
Go语言的基础语法和常用特性解析: 经过半个多月的学习,我认识了go语言的基础语法和特性,他与其他语言有着许多相似之处,比如注释,以//开头的单行注释和以*/的方式的多行注释与java和c++语言相差不大;go语言的标识符用于命名变量、类型等程序实体,支持大小写字母、数字、下划线,且第一个字符必须是字母或下划线,这点与java相同,他的特别之处在于,声明变量除了int,float等基本类型以外,一个比较有意思的数据类型便是切片,可以使用切片来访问数组的任意连续部分,而不需要单独复制他的元素,且切片长度可变,较灵活,它使得go在处理动态数据集时非常高效和方便,他还可以使用var关键字来声明变量,自动判断变量类型,这一点而言go语言比较高级;运算符方面差别也不大,特别之处在于go语言可以使用:=的方式来初始化变量,同样不用声明变量的类型,自动判断。go语言也具有大量的包来调用,使用“fmt.Sprintf”或“fmt.Printf”进行格式化字符串并赋值或输出。 对于go语言的常用特性,其中一点便是并发性,go语言可以通过在函数调用前加入go关键字来通过并发编程模型实现通信,提供一种安全的方式传递数据。并且go语言与java语言一样有着强大的垃圾回收机制,避免内存的积压和泄露问题,使代码更加安全。go语言还有着丰富的库,涵盖了网络编程,文件操作等方式,使得go语言在很多工作场景中都可以使用到,且十分高效。让我最为兴奋的便是,go语言的代码看起来非常的简洁明了,正是因为他的高级性,使得它可以用很少的代码量来实现复杂的开发工作,大大提高了开发效率。
** 刷题实践:**
谈到AI刷题的亮点功能,我觉得最让人眼前一亮的便是个性化推荐题目,因为作为编程的学习者,在大量的知识中,我们并不知道哪些知识是我们熟悉的会用的,哪些知识是我们遗缺的,不熟悉的,一味的自己选择题目去做,很容易造成误解,因为我们往往选择的是一些自认为做起来轻易的题目,当我们看到较复杂的题目时,便会陷入要不要做的犹豫,因为有些题目是我们当前的水平根本接触不到的,即太难的题目,个性化选题推荐难度适中,而且可以根据我们的需求来挑选题目,同时也解决了“选择困难症”,它可以让我们的学习更加系统而具体,让人感觉到自己在不断进步,提高了我们刷题的荣誉感和自信心! AI刷题的优势之处在于,它能给我们提供具体的思路,我们便可以围绕这个思路来完成编程,同时在这个思路中的不理解之处,我们还可以询问AI,它会详细的告知我们这里这么思考的原因,会给出较为系统的回答,而不是“凭感觉”,有理有据,当我们下次遇到这类题目时,也能灵活的思考,比如这道题:
当时做的时候,这个递归操作简直是封住了我的思路,我一直在思考这个递归循环的原因与传参,一度打算放弃了,直到我去询问AI做法,它告诉我这里递归的原因是因为要不断遍历判断下一个数据是否符合条件,直到最后一个数据符合条件则返回,他是一个一体的操作,从头到尾,将其分解为小的操作,便是判断下一个家伙是否符合条件,因此采用递归的思想,传参也是为了记录位置,从而输出正确结果,通过这个例子我对于递归遍历的思想有了更深刻的理解,不止这一道题,通过AI的帮助我还理解了lambda表达式和一些接口比如Comparable的使用方法,让个人能力得到更好的提升!