「GO基础」文件名规范、关键字与标识符


在这里插入图片描述
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
在这里插入图片描述

  • 推荐:「stormsha的主页」👈,持续学习,不断总结,共同进步,为了踏实,做好当下事儿~
  • 专栏导航
    • Python面试合集系列:Python面试题合集,剑指大厂
    • GO基础学习笔记系列:记录博主学习GO语言的笔记,该笔记专栏尽量写的试用所有入门GO语言的初学者
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 运维系列:总结好用的命令,高效开发
    • 算法与数据结构系列:总结数据结构和算法,不同类型针对性训练,提升编程思维

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

💖The Start💖点点关注,收藏不迷路💖

📒文章目录

    • 1、文件名规范
    • 2、标识符
    • 3、关键字
    • 4、总结


1、文件名规范

Go语言的源文件以.go为后缀名存储在计算机中。这些文件名的命名规范对于代码的组织和可读性至关重要。为了保持一致性和可读性,文件名通常由小写字母组成,如 stormsha.go,如果文件名由多个部分组成,则使用下划线_进行分隔,如stormsha_nb.go

例如,一个处理用户登录功能的文件可以命名为user_login.go。这种命名方式使得文件的功能和内容一目了然,方便开发者快速定位和理解代码。

此外,文件名中不应包含空格或其他特殊字符。空格可能会在命令行或代码编辑器中引起歧义,而特殊字符可能会导致文件名在不同的操作系统或文件系统中出现问题。因此,使用简洁、清晰的文件名可以提高代码的可移植性和可维护性。

2、标识符

在Go代码中,标识符是用于命名变量、常量、类型、函数、结构体、接口等实体的名称。标识符的命名规范对于代码的可读性和可维护性同样至关重要。

首先,有效的标识符必须以字母(包括Unicode字母)或下划线(_)开头,然后紧跟着零个或多个字符或Unicode数字。例如,X56group1_x23iөԑ12都是有效的标识符。这种命名方式使得标识符具有描述性,能够准确表达其所代表的实体的含义。

其次,Go语言是区分大小写的,因此myVarMyVar是两个不同的标识符。这种区分大小写的特性使得开发者可以通过使用不同的大小写组合来创建更加清晰和有意义的标识符。

最后,有一些标识符在Go语言中具有特殊的含义或用途,例如空白标识符(_)和关键字。空白标识符可以用于忽略函数返回值中的某些值,或者在导入包时忽略包名。而关键字则是Go语言中具有特定语法意义的保留字,例如ifforfunc等。这些关键字不能用作标识符,以避免语法冲突和歧义。

3、关键字

Go语言中的关键字是具有特定语法意义的保留字,它们在语言的语法和语义中起着重要的作用。以下是Go语言中的25个关键字:

breakdefaultfuncinterfaceselect
casedefergomapstruct
chanelsegotopackageswitch
constfallthroughifrangetype
continueforimportreturnvar
  • break:用于跳出循环或switch语句。
  • default:用于switch语句中的默认情况。
  • func:用于定义函数。
  • interface:用于定义接口类型。
  • select:用于在多个通信操作中进行选择。
  • case:用于switch语句中的条件分支。
  • defer:用于延迟执行函数。
  • go:用于启动一个并发的Goroutine。
  • map:用于定义映射类型。
  • struct:用于定义结构体类型。
  • chan:用于定义通道类型。
  • else:用于if语句中的else分支。
  • goto:用于无条件跳转到指定标签。
  • package:用于定义包名。
  • switch:用于多条件判断。
  • const:用于定义常量。
  • fallthrough:用于switch语句中的穿透。
  • if:用于条件判断。
  • range:用于遍历数组、切片、通道等。
  • type:用于定义自定义类型。
  • continue:用于跳过循环中的当前迭代。
  • for:用于循环。
  • import:用于导入包。
  • return:用于从函数返回。
  • var:用于定义变量。

这些关键字在Go语言中具有特定的语法意义,不能用作标识符。正确使用关键字可以提高代码的可读性和可维护性,同时也能够充分利用Go语言的特性。

4、总结

Go语言的命名规范包括文件名规范、标识符和关键字。通过遵循这些规范,开发者可以编写出清晰、可读性和可维护性高的代码。文件名规范使得代码组织更加清晰,标识符的命名规范使得代码的含义更加明确,而关键字的使用则能够充分利用Go语言的特性。因此,在编写Go代码时,开发者应该始终保持良好的命名规范,以提高代码的质量和可读性。


觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏、分享下吧,非常感谢!👍 👍 👍

🔥🔥🔥道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

💖The End💖点点关注,收藏不迷路💖

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/548118.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

WebShell简介

WebShell简介 1、WebShell分类 • JSP类型 • ASP类型 • PHP类型 2、WebShell用途 • 站长工具 • 持续远程控制 • 权限提升 • 极强隐蔽性 3、WebShell检测方法 • 基于流量的 WebShell 检测 • 基于文件的 WebShell 检测 • 基于日志的 WebShell 检测 WebShe…

BCLinux8U6系统部署oceanbase分布式数据库社区版之一、准备 OBD 中控机

本文记录了在BCLinux8U6操作系统的虚拟服务器准备oceanbase开源数据库的 OBD 中控机的过程。 一、中控机环境 1、虚拟服务器硬件配置 2、操作系统版本信息 [rootlocalhost ~]# cat /etc/os-release NAME"BigCloud Enterprise Linux" VERSION"8.6 (Core)&qu…

Superset 二次开发之工具篇 Pycharm 搭建

环境:win10、conda、superset 3.0、node 18、npm 9.8 conda安装和使用教程 File-Settings-Project | Project Interpreter addlocalInterpreter添加本地解释器">Add Interpreter →> add local Interpreter 添加本地解释器 本地虚拟环境 superset4 conda execut…

Win10 启动时数字键盘不亮怎么办?

首先,按住winr 运行 windows 运行框,输入regedit 打开注册表编辑器 1.查找current_user选项下的Control Panel 中的keyboard 点击八initialkeyboard 值设置成2,如图所示即可。2.选择hkey_user 中的。default 下的control Panel 选项下的keyb…

聚酰亚胺PI的特性有哪些?UV胶水能够粘接聚酰亚胺PI吗?又有哪些优势呢?

聚酰亚胺(Polyimide,PI)是一种高性能的聚合物材料,具有许多优异的特性。以下是聚酰亚胺的主要特性: 1. 高耐热性:聚酰亚胺的玻璃化转变温度和熔点都很高,可在非常高的温度下工作,其…

蚂蚁云科技集团应用研究院院长李亚锋先生受邀为第十三届中国PMO大会演讲嘉宾

全国PMO专业人士年度盛会 蚂蚁云科技集团应用研究院院长李亚锋先生受邀为PMO评论主办的2024第十三届中国PMO大会演讲嘉宾,演讲议题为“探索AI技术对项目管理发展的影响”。大会将于5月25-26日在北京举办,敬请关注! 议题简要: 19…

利用国产库libhv动手写一个web_server界面(二)

目录 一、配置参数解析与响应 1.读取参数 2.设置参数 3.恢复默认参数 二、整体的界面实现以及交互效果 三、关于yaml文件乱码问题解决 四、参考文章 一、配置参数解析与响应 使用cJSON解析库,解析接收到的JSON数据字段,区别接收到的配置参数是请…

ASP.NET基于CS应用程序平台多语种技术应用研究

摘 要 C/S应用程序平台多语种技术是一种基于C/S应用技术结构平台的关于多语种的转换和翻译技术。本设计基于Visual Studio.Net集成开发环境,采用SQL Server2000进行数据库后台开发。通过采用数据字典实现应用系统的静态文本转换;通过使用Visual Studio.…

GPT 浅析

GPT 浅析 文章目录 GPT 浅析GPT 1无监督预训练有监督微调任务相关的输入变换 GPT2GPT3 GPT 1 在模型架构上,GPT-1基于Transformer构造,这是因为与其他卷积神经网 络或者循环神经网络相比,Transformer提供了效率更高的方法来处理文本 中的长期…

C#使用PaddleOCR进行图片文字识别✨

PaddlePaddle介绍✨ PaddlePaddle(飞桨)是百度开发的深度学习平台,旨在为开发者提供全面、灵活的工具集,用于构建、训练和部署各种深度学习模型。它具有开放源代码、高度灵活性、可扩展性和分布式训练等特点。PaddlePaddle支持端…

大世界基尼斯见证辉煌,云仓酒庄首届酒类培训新高度诞生

近日,一场规模盛大的酒类培训盛会,在云仓酒庄的精心组织下圆满落幕。此次培训活动以其卓着的成果和盛大的规模,创下了大世界基尼斯纪录,为酒类培训领域树立了新的标杆。这一成就的取得,背后是云仓酒庄团队无数的心血与…

【JAVA进阶篇教学】第一篇:JDK8介绍

博主打算从0-1讲解下java进阶篇教学,今天教学第一篇:JDK8介绍。 Java 8 引入了许多令人兴奋的新特性,其中包括 Lambda 表达式、Stream API、函数式接口、方法引用、默认方法等。下面我将为您详细介绍这些新特性,并提供相应的代码…

代码随想录刷题随记22-回溯2

代码随想录刷题随记22-回溯2 216.组合总和III leetcode链接 注意与之前的题目不同的是需要求和。从左到右的范围尝试模型。 class Solution { public:void backtrace(vector<vector<int>> &ret,int k,int n,int index,vector<int>& path,int &…

【XR806开发板试用】软件模拟IIC驱动OLED显示图片自己遇到的坑

前言 首先&#xff0c;非常感谢极术社区和全志举办此次开发板申请试用活动。由于自己水平太低&#xff0c;拿到板子后不知道要干点啥&#xff0c;偶然看见一个大佬写的I2C外设使用及控制OLED屏显示&#xff0c;文章中使用了硬件IIC控制OLED&#xff0c;正好我手里也有一块OLED…

【ElasticSearch】安装

1.官网寻找合适版本下载 这里我选择的是8.11.1 2.解压并启动 然后在浏览器输入http://localhost:9200/&#xff0c;判断是否启动成功 如下所示&#xff0c;则表示启动成功 安装过程中遇到过几个bug&#xff0c;记录在这篇文章中 【ElasticSearch】安装&#xff08;bug篇&am…

MySQL——基础

SQL 全称 Structured Query Language&#xff0c;结构化查询语言。操作关系型数据库的编程语言&#xff0c;定义了一套操作关系型数据库统一标准 。 SQL 通用语法 SQL语句可以单行或多行书写&#xff0c;以分号结尾。SQL语句可以使用空格/缩进来增强语句的可读性。MySQL数据库…

mysql使用逗号分隔的一行数据转多行数据

文章目录 学习链接准备建表插入数据 方法MySQL逗号拼接的列拆分为多行&#xff08;不使用mysql.help_topic&#xff09;遇到字段以逗号分隔符分号分隔符存放多个值&#xff0c;需要一行转化多行&#xff0c;以用来关联&#xff08;使用mysql.help_topic&#xff09;改为LEFT JO…

git 上传代码到 github

准备工作 git Git LFS&#xff08;大文件>100Mb&#xff09; git 参考手册 github 建立仓库&#xff1a;New repository git 指令 git add . 用于将当前目录下的所有文件添加到 Git 仓库的暂存区中。 git add . 命令会将当前目录下的所有文件添加到 Git 仓库的暂存区中…

五、流程控制之循环

目录 5.1 步进循环语句for 5.1.1 带列表的for循环语句 5.1.2 不带列表的for循环语句 5.1.3 类C风格的for循环语句 5.2 while循环语句 5.2.1 while循环读取文件 5.2.2 while循环语句示例 5.3 until循环语句 5.4 select循环语句 5.5 嵌套循环 5.1 步进循环语句for for…

如何使用ArcGIS Pro进行路径分析

路径分析是一种空间分析技术&#xff0c;用于确定两个或多个地点之间最佳路径或最短路径&#xff0c;这里为大家介绍一下在ArcGIS Pro中如何进行路径分析&#xff0c;希望能对你有所帮助。 数据来源 教程所使用的数据是从水经微图中下载的道路数据&#xff0c;除了道路数据&a…