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

管城网站建设线上推广

管城网站建设,线上推广,西乡做网站多少钱,网站建设先进个人一、Hello World 最简单的教程,就需要从最简单的事情开始说起: mkdir myappcd myappgo mod init myapp // myapp是主项目名 这行命令将生成一个go.mod文件,这个文件会记录所有的包的依赖关系,一个空的go.mod只有项目名称和go版本…

一、Hello World

最简单的教程,就需要从最简单的事情开始说起:

  1. mkdir myapp
  2. cd myapp
  3. go mod init myapp // myapp是主项目名

这行命令将生成一个go.mod文件,这个文件会记录所有的包的依赖关系,一个空的go.mod只有项目名称和go版本号.

  1. nano main.go :
package mainimport "fmt"func main() {fmt.Println("Hello World!")
}
  1. go run main.go 直接运行或 go build -o run.exe 编译执行。

二、import go标准库/包

导入go语言的标准库非常简单,参见上例的Hello World中我们就导入了一个名为 fmt 的标准库,调用这个库里的Println函数:fmt.Println(“Hello World!”)


三、import 第三方包

  1. nano main.go:
package mainimport ("fmt""github.com/kataras/iris/v12" // iris是一个开源的Web框架
)func main() {fmt.Println("Hello World!")app := iris.New()fmt.Println(app.APIBuilder)
}
  1. 如何安装第三方包?
    这时候直接执行 go build -o run.exe 会报错提示找不到这个包:

no required module provides package github.com/kataras/iris; to add it:
go get github.com/kataras/iris/v12

错误信息里也提示了你需要用 go get 命令去获取这个包,现在输入:
go get github.com/kataras/iris/v12
当然,出于不能明说的原因,当你输入这行命令后,基本上是没有反应的,我们还需要这样一下:
go env -w GOPROXY=https://goproxy.cn,direct
然后再次输入:
go get github.com/kataras/iris/v12
系统将自动下载 iris 所需的文件,再次执行:
go build -o run.exe
一切正常。

现在,再次打开 go.mod,会发现自动添加了一堆包的依赖关系,因为iris这个包本身也引用了大量其他的第三方包,这些都会记录在go.mod里。

那么,刚才系统自动下载的iris包的文件实际存储在哪?
首先我们要知道GOPATH系统变量的值,在Windows下用:
echo %GOPATH% ,Linux下用 echo $GOPATH
得到这个变量的值后,打开 C:\Users\USERNAME\go\pkg 发现这些包都在这。


四、import 自己创建的包

  1. 在主项目的根目录下创建一个子目录:mkdir mypackage
  2. cd mypackage
  3. nano mypackage.go
package mypackage // 注意包名是我们自定义的,与文件夹名称一致import ("fmt"
)func Sayhi() { // 这里定义了一个Sayhi的函数,注意首字母一定要大写,否则外部无法访问,这和其他OOP语言的public和private类似fmt.Println("Hello I come from another Package")
}
  1. 回到主项目 nano main.go
package mainimport ("fmt""myapp/mypackage" // myapp是我们的主项目名,mypackage是我们自定义包名
)func main() {mypackage.Sayhi() // 调用mypackage下的Sayhi函数
}

五、后记

1、关于package main的特殊性
任何一个go项目都需要一个package main和一个 func main()函数,否则程序没有入口,无法运行。假设我们现在尝试一下在main.go中的第一行不使用package main而是随便创建一个比如package myapp,然后用build -o run.exe编译,尽管代码可以通过编译但却无法执行:

在这里插入图片描述


2、 相同的package但文件名不同的函数调用

比如说现在有2个文件: main.go 和 file.go

file.go 的内容是:

package mainimport "fmt"func Sayhello() {fmt.Println("Hi, I come from file1")
}

main.go的内容是:

package mainfunc main() {Sayhello()
}

尽管函数 Sayhello 并不存放在 main.go 中,但因为两个文件的第一行都是package main,因此在main.go 中我们不需要任何声明就可以正常调用 file.go 里的函数。存储在不同的文件中的代码,通过相同的package名聚合在一起,简单地将之视为一个大文件即可。

http://www.rdtb.cn/news/17786.html

相关文章:

  • wordpress手机登录跳转页面模板百度seo软件曝光行者seo
  • 杭州网站建设招聘品牌软文营销案例
  • 微信哪里可以做视频网站口碑营销有哪些
  • 小说网站建设的支柱公司网站怎么申请怎么注册
  • 如何做网站的页面黑马培训价目表
  • 兖矿东华建设网站做运营需要具备什么能力
  • wordpress 网页程序seo是哪个英文的缩写
  • seo教程技术整站优化小姐关键词代发排名
  • 做影视网站需要的软件哪个搜索引擎最好
  • 社团的工商年检网站在哪里做怎么开发自己的网站
  • 开一个网站的流程网站seo如何优化
  • 潍坊专科院校优化搜索关键词
  • 做免费外贸网站营销活动方案
  • 大连网站制作团队四川seo优化
  • 长春新建高铁站做百度seo
  • 网站相对路径和绝对路径营业推广方案
  • 企业网站建设的思路百度官网推广
  • 医疗服务网站素材郑州计算机培训机构哪个最好
  • 443是端口网站建设优化落实疫情防控
  • 企业如何做网站百度seo优化怎么做
  • 纺织品公司网站建设seo综合查询站长工具怎么用
  • 阿里云ecs 做网站莆田seo
  • asp.net 如何设置网站首页日本今日新闻头条
  • php+ajax网站开发典型实例pdf如何发布自己的html网站
  • 广州做网站专业公司厦门网站的关键词自动排名
  • wordpress默认登陆地址修改优化游戏卡顿的软件
  • 个人网站 目的产品代理推广方案
  • 放网站的图片做多大分辨率网站页面怎么优化
  • 台州椒江网站建设公司线上营销培训
  • 网站风格包括什么意思黑科技引流软件是真的吗