面向实习的Golang服务端技能分析

server/2025/1/6 5:24:49/

背景:

这个文章就当总纲看吧,没什么内容,大概是我的一个学习计划

首先,该文章是我希望大二暑期能够找到Go后端开发岗位实习机会,结合boss、2024版go学习路线以及我一个go萌新的现有技能做出的大约四个月时间掌握开发技能的规划。随后我也会做一下自己关于这些技术栈的学习笔记,希望各位大佬多多分享学习资料,写的不对的地方还望多多纠正。

为什么是Go:

  1. 作为一个没有审美的工科生,我认为前端开发真干不了一点。前端对我而言是一个需要了解和会使用简单框架的了解向技能,大约掌握一下三件套、vue和如何和后端交互就差不多了。

  2. 对于开发岗位而言,我个人认为本科阶段就业或者企业实习,后端开发岗位都是性价比最高的岗位。在后端岗位中我了解到的go后端开发相对而言需求量和内卷程度都是适中的。

  3. 结合我个人写的一些Java和go代码,我认为go语言是更好上手和理解的。我个人浅显理解,Java好比是一个严谨的组织结构,每个类和方法等都可以画出清晰的结构图;而go就好像是搭积木,无论是接口或者"类",都可以使用简单的结构体来实现,需要属性就新建属性,需要方法就绑定一个新方法,就像搭积木一样。

  4. 然而,相比于Java成熟的体系,基本要学的每一项技术栈都有一个或者多个优秀的教程,go的资源可能就很有限了,这也是学习Golang不太爽的地方。

技术栈:

我认为需要学习的技术栈大致分为一下几类(不分先后):

开发项:

  1. 基础编程: 这一块主要是Go的基础语法以及Gin框架的简单使用,算是入门内容了。我认为这个大概做一个go的xx管理系统就大致过关了,可以看一下我之前写的Gin项目
  2. 网络编程: 主要是TCP/IP协议的使用,这个基本上实习岗位都会要求的。
  3. 并发编程: 这一块我认为需要大概了解一下如何开辟go协程,大概就是写一些锁。我认为这部分仿写不难,但是理解清楚如何设计是很重要的(建议多画图),这个看一下刘丹冰老师的8小时转职课后面的项目就好
  4. 数据库: 这个主要是Mysql和redis,其他一些DB据我的了解掌握这两个就很好上手。而go为这两类数据库提供了Gorm框架,直接搜文档cv就可以(不过感觉底层还是了解一下为好,我是找了Mysql技术内幕和Redis实现原理两本书看)

会使用项:

  1. 操作系统: 会用Linux,会在云服务器上部署项目感觉就差不多了
  2. 微服务: 很多时候要求的是“理解微服务结构”,我个人了解很少,只是会用grpc,我感觉找第一份实习的话这个其实要求并不高(乱说的啊)
  3. 工具: 会使用K8s和docker感觉也是很多岗位的要求,不过这个要求也就是会用即可

加分项:

  1. 大数据: 这个其实是整个后端开发的加分项,刚好寒假的字节青训营有这部分的课,我学了之后写一写学习笔记吧
  2. 云原生: 就像使用go的第一个程序是聊天程序一样(最有特点),云原生绝对是go的一个热门应用
  3. IM即时通讯: 这个我不太了解

学习资料

这个是牛客网给的学习路线:
在这里插入图片描述

基础语法

  1. 基础内容建议看一下刘丹冰老师的八小时转职go的课程;李文塔的《go语言核心编程》也是一本很好的入门书
  2. 几个经典的包也要看一看(runtime sync net io time reflect)这个看go语言中文文档就好(我接下来也会出一下自己对方法的总结和理解)
  3. Gin框架,这个我感觉做项目是最直接的方法,这是我写的一个小项目

数据库

  1. 数据库的内容建议先学习Gorm框架
  2. 之后尝试搭建一下redis的环境,简单操作
  3. 接下来就是看Mysql技术内幕和Redis实现原理(其他书也是可以的),了解一下底层的原理

并发

  1. 这个我觉得就是先做(抄)一个聊天类的项目
  2. 然后自己画出来这个程序信息的传输路径,这样最清楚

网络

  1. Tcpip这个我之后出一下自己的学习笔记(感觉这个也是了解底层的)
  2. http感觉也是要学的

面试

  1. 这个可以找一些面经,或者刷一些b站上几面几面的短视频,不过这个不着急,先把基础内容学会再看

http://www.ppmy.cn/server/155732.html

相关文章

题海拾贝:[USACO3.4] 美国血统AmericanHeritage(求先序排列问题)

Hello大家好&#xff01;很高兴我们又见面啦&#xff01;给生活添点passion&#xff0c;开始今天的编程之路&#xff01; 我的博客&#xff1a;<但凡. 我的专栏&#xff1a;《编程之路》、《数据结构与算法之美》、《题海拾贝》 欢迎点赞&#xff0c;关注&#xff01; 1、求…

植物活性长末端重复序列反转录转座子研究进展-文献精读95

Plant active LTR retrotransposons: a review 植物活性长末端重复序列反转录转座子研究进展 摘要 长末端重复序列 (Long terminal repeat&#xff0c;LTR) 反转录转座子是真核生物基因组中普遍存在的一类可移动的DNA序列&#xff0c;它们以RNA为媒介&#xff0c;通过“复制粘…

Bash 中的 2>1 | tee 命令详解

Bash 中的 2>&1 | tee 命令详解 在 Linux 和 Unix 系统中&#xff0c;命令行提供了强大的输出控制功能&#xff0c;能够灵活地处理标准输入&#xff08;stdin&#xff09;、标准输出&#xff08;stdout&#xff09;和标准错误&#xff08;stderr&#xff09;。本文将详…

深入AIGC领域:ChatGPT开发者获取OpenAI API Key的实用指南

在AIGC&#xff08;人工智能生成内容&#xff09;领域&#xff0c;ChatGPT作为一种强大的自然语言处理工具&#xff0c;正逐渐成为开发者们不可或缺的助手。然而&#xff0c;要充分发挥ChatGPT的潜力&#xff0c;首先需要获取OpenAI的API Key。本文将详细介绍如何获取OpenAI AP…

Redis数据库——数据结构类型

本文详细介绍Redis 提供的5种基本数据结构类型和4种特殊类型&#xff0c;除此之外&#xff0c;还有8种底层数据结构&#xff0c;每种结构类型有其特点和适用场景。 文章目录 基本数据类型1. String&#xff08;字符串&#xff09;使用场景缓存计数器ID 生成器分布式锁 2. Hash&…

并联带阻滤波器带通滤波器对幅值和相位的影响(IIR)

一、背景 输入信号input分别经过bp(带通滤波器)和bs&#xff08;带阻滤波器&#xff09;处理后相加输出。分析输出信号的幅值和相位受到的影响。 根据上图公式推导可知&#xff0c;并联滤波器对输出的影响可以直接分析&#xff0c;带通滤波器与带阻滤波器在频域上的加和。 二、…

MYSQL无法被连接问题

如果您在尝试连接到MySQL服务器时遇到问题&#xff0c;以下描述了您可以采取的一些措施来纠正该问题。 确保服务器正在运行。如果没有&#xff0c;则客户端无法连接到它。例如&#xff0c;如果尝试连接到服务器失败并出现以下消息之一&#xff0c;则可能是服务器未运行&#xf…

力扣面试题 43 - 递归乘法 C语言解法

题目&#xff1a; 递归乘法。 写一个递归函数&#xff0c;不使用 * 运算符&#xff0c; 实现两个正整数的相乘。可以使用加号、减号、位移&#xff0c;但要吝啬一些。 示例1: 输入&#xff1a;A 1, B 10输出&#xff1a;10示例2: 输入&#xff1a;A 3, B 4输出&#xff1…