当前位置: 首页 > news >正文

【Go语言成长之路】Hello Go

文章目录

  • Hello Go
    • 一、建立工程目录
    • 二、开启代码追踪
    • 三、编写代码
    • 四、测试代码

Hello Go

一、建立工程目录

pzs@pzs-ubuntu22:~$ mkdir go_study/hello -p
pzs@pzs-ubuntu22:~$ cd go_study/hello

​ 在hello目录下,我们会编写属于自己的第一个Go demo例子,以帮助我们快速入门。

二、开启代码追踪

​ 当你的代码导入的包(package)包含了其它模块(modules)的时候,可以通过模块管理这些依赖。这个模块管理主要就是由go.mod文件来定义,该文件会跟踪这些模块,go.mod会跟随你的源代码库一起发布。

​ 要通过创建 go.mod 文件来启用代码的依赖项跟踪,请运行go mod init 命令,并为其指定代码所在模块的名称。该名称是模块的模块路径。

​ 在实际开发中,模块路径通常是保存源代码的存储库位置

pzs@pzs-ubuntu22:~/go_study/hello$ go mod init github.com/pzs/hello 
go: creating new go.mod: module github.com/pzs/hello
go: to add module requirements and sums:go mod tidy

注:go.mod文件的命名规则如下所示:

<domain_name>/<username>/<package_name>

​ 一般来说,domain_namegithub.com,也就是说这个包是会发布到github上的。然后跟着自己的用户名username,表示这个包是谁发布的。最后的package_name表明了包叫什么名称。

​ 然后我们再看看go.mod长啥样:

module github.com/pzs/hellogo 1.21.3

​ 可以看到,初始化的go.mod仅仅只包含了包的名称以及go语言的版本号。当然go.mod文件的内容绝对不仅仅是这么简单,但这也是之后我们再需要去考虑的事,目前只需要知道,它的初始化长这个样子就好了!

三、编写代码

​ 之后新建一个hello.go文件,新建好之后工程目录如下所示:

hello/
├── go.mod
└── hello.go

​ hello.go文件内容如下所示:

package main // 声明一个main包(包是一种对函数进行分组的方式,它由同一目录中的所有文件组成)。import "fmt" // 导入流行的 fmt 包,其中包含格式化文本的功能,包括打印到控制台。该包是安装 Go 时获得的标准库包之一。
func main() { // 实现一个 main 函数来将消息打印到控制台。当您运行main包时,默认会执行main函数。fmt.Println("Hello, World")
}

四、测试代码

pzs@pzs-ubuntu22:~/go_study/hello$ go run hello.go 
hello,world

​ 到此,我们就成功地编写好第一个Go Demo样例了!接下来继续学习其它的内容吧!!就像打怪升级一样,一层一层地往上走!

相关文章:

【Go语言成长之路】Hello Go

文章目录 Hello Go一、建立工程目录二、开启代码追踪三、编写代码四、测试代码 Hello Go 一、建立工程目录 pzspzs-ubuntu22:~$ mkdir go_study/hello -p pzspzs-ubuntu22:~$ cd go_study/hello​ 在hello目录下&#xff0c;我们会编写属于自己的第一个Go demo例子&#xff0…...

大数据应用开发3-Scala笔记1

一、编程框架 Scala语言是在JVM上运行的&#xff0c;兼容Java语法 区分大小写 - Scala是大小写敏感的&#xff0c;这意味着标识Hello 和 hello在Scala中会有不同的含义。 类名 - 对于所有的类名的第一个字母要大写。 如果需要使用几个单词来构成一个类的名称&#xff0c;每个…...

android 网络拦截器统一处理请求参数和返回值加解密实现

前言 项目中遇到参数加密和返回结果加密的业务 这里写一下实现 一来加深记忆 二来为以后参考铺垫 需求 项目在开发中涉及到 登陆 发验证码 认证 等前期准备接口 这些接口需要单独处理 比如不加密 或者有其他的业务需求 剩下的是登陆成功以后的业务需求接口 针对入参和返回值…...

Jmeter直连mysql数据库教程

mysql数据库能够通过Navicat等远程连接工具连接 下载驱动并加入jmeter 1.mysql驱动下载地址&#xff1a;MySQL :: Download MySQL Connector/J (Archived Versions) 找到对应的驱动下载&#xff1a;如下图&#xff1a; 把驱动jar包加入jmeter 配置jmeter连接mysql数据库…...

2024美赛数学建模B题思路分析 - 搜索潜水器

1 赛题 问题B&#xff1a;搜索潜水器 总部位于希腊的小型海上巡航潜艇&#xff08;MCMS&#xff09;公司&#xff0c;制造能够将人类运送到海洋最深处的潜水器。潜水器被移动到该位置&#xff0c;并不受主船的束缚。MCMS现在希望用他们的潜水器带游客在爱奥尼亚海底探险&…...

Tomcat在Java web的应用

Tomcat在Java web的应用 本来这篇博客顺应之前的内容&#xff0c;应该是需要写Tomcat的简介、基本使用、配置和部署项目、Web的项目结构、创建MavenWeb、idea本地集成以及Tomcat的Maven插件的笔记内容&#xff0c;但是总觉得没必要&#xff0c;因为这些内容网上肯定很多了&…...

Python爬虫某云免费音乐——多线程批量下载

重点一&#xff1a;每首音乐的下载地址 重点二&#xff1a;如何判断是免费音乐 重点三&#xff1a;如何用线程下载并保存 重点四&#xff1a;如何规避运行错误导致子线程死掉 重点五&#xff1a;如何管理子线程合理运行 需要全部代码的私信或者VX:Kmwcx1109 运行效果&…...

Python实现TCP和UDP通信

目录 一&#xff1a;TCP 二&#xff1a;UDP 一&#xff1a;TCP 在Python中实现TCP通信可以通过使用内置的socket模块来完成。以下是一个简单的示例&#xff0c;展示了如何使用Python的socket模块创建一个TCP客户端和服务器。 TCP服务器 import socket def start_server(): s…...

用HTML5 + JavaScript实现下雪效果

用HTML5 JavaScript实现下雪效果 下面是用HTML5 JavaScript实现下雪效果示例&#xff0c;展示了如何使用 HTML5 的 <canvas> 元素以及 JavaScript 来创建下雪效果。效果如下&#xff1a; 源码如下&#xff1a; <!DOCTYPE html> <html lang"en">…...

PDF操作——批量删除末页

一、说明 由于PDF末页为空白页或者是免责声明需要删除&#xff0c;涉及的文件比较多&#xff0c;因此写了一小段代码进行处理。 二、完整架构流程 这个代码的整体架构流程可以分为以下几个步骤&#xff1a; 导入所需的库&#xff1a;首先&#xff0c;代码导入了PyPDF2和os两…...

Jasperreport 生成 PDF之省纸模式

省纸模式顾名思义就是节省纸张&#xff0c;使用 Jasper 去生成 PDF 的时候如果进行分组打印的时候&#xff0c;一页 A4 纸只会打印一组数据。这种情况下&#xff0c;如果每组数据特别少&#xff0c;只有几行&#xff0c;一页 A4 纸张根本用不了&#xff0c;就会另起一页继续打印…...

IDEA反编译Jar包

反编译步骤 使用IDEA安装decompiler插件 找到decompiler插件文件夹所在位置&#xff08;IDEA安装路径/plugins/java-decompiler/lib &#xff09;&#xff0c;将需要反编译的jar包放到decompiler插件文件夹下&#xff0c;并创建一个空的文件夹&#xff0c;用来存放反编译后的…...

MySQL 备份恢复

1.1 MySQL日志管理 在数据库保存数据时&#xff0c;有时候不可避免会出现数据丢失或者被破坏&#xff0c;这样情况下&#xff0c;我们必须保证数据的安全性和完整性&#xff0c;就需要使用日志来查看或者恢复数据了。 数据库中数据丢失或被破坏可能原因&#xff1a; 误删除数…...

UbuntuServer22.04LTS在线安装MySQL8.x

UbuntuServer22.04LTS在线安装MySQL8.x 文章目录 UbuntuServer22.04LTS在线安装MySQL8.x1. 安装1. 官网2. 在线安装3. 修改密码及设置远程登录4. 其他配置参考 2. 启动和停止1. 查看运行状态2. 开机自启3. 查看默认服务器配置命令 3. 登录 1. 安装 1. 官网 官网安装文档&#…...

GmSSL - GmSSL的编译、安装和命令行基本指令

文章目录 Pre下载源代码(zip)编译与安装SM4加密解密SM3摘要SM2签名及验签SM2加密及解密生成SM2根证书rootcakey.pem及CA证书cakey.pem使用CA证书签发签名证书和加密证书将签名证书和ca证书合并为服务端证书certs.pem&#xff0c;并验证查看证书内容&#xff1a; Pre Java - 一…...

面试题:为什么MySQL不建议使用NULL作为列默认值?

文章目录 前言介绍总结 前言 今天来分享一道美团高频面试题&#xff0c;5 分钟搞懂“为什么 MySQL 不建议使用 NULL 作为列默认值&#xff1f;”。 对于这个问题&#xff0c;通常能听到的答案是 使用了 NULL 值的列将会使索引失效,但是如果实际测试过一下,你就知道IS NULL会使…...

ClickHouse基于数据分析常用函数

文章标题 一、WITH语法-定义变量1.1 定义变量1.2 调用函数1.3 子查询 二、GROUP BY子句&#xff08;结合WITH ROLLUP、CUBE、TOTALS&#xff09;三、FORM语法3.1表函数3.1.1 file3.1.2 numbers3.1.3 mysql3.1.4 hdfs 四、ARRAY JOIN语法&#xff08;区别于arrayJoin(arr)函数&a…...

c语言编译和链接

文章目录 翻译环境和运⾏环境编译预处理编译词法分析语法分析语义分析 汇编 链接地址和空间分配符号决议重定位 翻译环境和运⾏环境 在c语言标准&#xff08;ANSI C&#xff09;中的任何⼀种实现中&#xff0c;存在两个不同的环境。 翻译环境&#xff1a;在这个环境中将人写的…...

C++ printf解释

在C中&#xff0c;printf 是一个用于格式化输出的函数。它是C语言中标准库函数的一部分&#xff0c;被继承到了C中。 printf函数的基本语法如下&#xff1a; int printf(const char* format, ...); 其中&#xff0c;format 参数是一个格式化字符串&#xff0c;用于指定输出的…...

paddle环境安装

一、paddle环境安装 如pytorch环境安装一样&#xff0c;首先在base环境下创建一个新的环境来安装paddlepaddle框架。首先创建一个新的环境名叫paddle。执行如下命令。 conda create -n paddle python3.8创建好了名叫paddle这个环境以后&#xff0c;进入到这个环境中&#xff…...

向华为学习——解读华为战略执行全解码从规划到行动的DSTE与BLM模型集成应用方案【附全文阅读】

华为通过DSTE流程与BLM模型集成,实现战略从规划到执行的全流程管理。DSTE构建战略执行时间轴,BLM模型提供战略制定到执行框架,两者协同将长期规划拆解为年度计划,并通过绩效与资源保障闭环落地[4]。 关联阅读索引: 收藏不迷路——耗时三天完成整理 华为IPD流程体系战略解码…...

PHP安全漏洞之文件包含与SSRF攻击全解析

在Web安全领域&#xff0c;PHP应用程序的安全问题一直备受关注。本文将深入探讨两种常见的PHP安全漏洞&#xff1a;文件包含漏洞和服务器端请求伪造(SSRF)&#xff0c;帮助开发者理解漏洞原理、利用方式以及防御措施。 第一部分&#xff1a;文件包含漏洞详解 什么是文件包含漏洞…...

贵州公共活动策划公司名录

2026年想在贵州办一场出圈的公共活动&#xff1f;从企业年会到文化展览&#xff0c;从体育赛事到艺术节庆&#xff0c;选对策划公司是关键&#xff01;但贵州公共活动策划公司鱼龙混杂&#xff0c;如何避开“低价陷阱”“执行脱节”等坑&#xff1f;本文结合本地市场真实案例&a…...

从「投稿难」到「录用快」:Paperxie 期刊论文智能写作,解锁学术发表新效率

paperxie-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/期刊论文https://www.paperxie.cn/ai/journalArticleshttps://www.paperxie.cn/ai/journalArticles 引言&#xff1a;学术发表的「拦路虎」&#xff0c;AI 正在重构发表逻辑 对于科研人而言&#xff0c;期…...

svgpath:突破SVG路径操控瓶颈的底层技术解密

svgpath&#xff1a;突破SVG路径操控瓶颈的底层技术解密 【免费下载链接】svgpath SVG path low level transformations toolkit 项目地址: https://gitcode.com/gh_mirrors/sv/svgpath 开篇&#xff1a;当动画遇到坐标迷宫 在开发交互式SVG图表时&#xff0c;你是否曾…...

轻量嵌入模型实战:all-MiniLM-L6-v2部署与简单应用

轻量嵌入模型实战&#xff1a;all-MiniLM-L6-v2部署与简单应用 还在为文本搜索、智能问答或者文档分类项目寻找一个既快又准的文本向量化工具而发愁吗&#xff1f;传统的BERT模型虽然效果好&#xff0c;但动辄几百兆的体积和缓慢的推理速度&#xff0c;在资源有限的生产环境中…...

构建企业级 AI 工作流:基于 OpenClaw 接入纯血 Claude Opus 4.6 实战指南

构建企业级 AI 工作流&#xff1a;基于 OpenClaw 接入纯血 Claude Opus 4.6 实战指南 文章目录构建企业级 AI 工作流&#xff1a;基于 OpenClaw 接入纯血 Claude Opus 4.6 实战指南一、 为什么在生产环境死磕顶级大模型&#xff1f;二、 Claude Opus 4.6 核心能力与底层原理漫谈…...

什么是电商CRM系统?从入门到精通,全面解析其定义与功能模块

在电商行业竞争日益激烈的今天&#xff0c;如何高效管理客户关系、提升用户价值已成为品牌增长的关键。本文将带您全面了解电商CRM系统&#xff0c;从基础概念到功能模块&#xff0c;再到行业解决方案&#xff0c;助您掌握这一提升业绩的利器。一、电商CRM&#xff1a;数字化时…...

HWA_03 leetcode874模拟行走机器人

题目map方法的作用解题思路 class Solution:def robotSim(self, commands: List[int], obstacles: List[List[int]]) -> int:#初始化结果result 0#从原点0&#xff0c;0位置开始出发x0y0#机器人前进的方向#初始方向:正北#0表示向北#1表示向东#2表示向南#3表示向西direction0…...

Qwen3.5-9B-AWQ-4bit电路仿真辅助:Multisim设计文档自动生成

Qwen3.5-9B-AWQ-4bit电路仿真辅助&#xff1a;Multisim设计文档自动生成 1. 电子工程师的文档痛点 硬件设计工程师每天都要面对一个耗时又不得不做的工作——撰写电路设计文档。从电路原理说明到元器件清单&#xff0c;从测试步骤到注意事项&#xff0c;这些文档不仅要求专业…...