文档章节

go编程基础

xiejunbo
 xiejunbo
发布于 2015/04/23 21:51
字数 554
阅读 59
收藏 0
点赞 0
评论 0

Go于2009年正式由谷歌发布.

Go的主要特点:

1.类型安全和内存安全

2.以直观和低代价的方案实现高并发

3.高效的垃圾回收机制

4.快速编译(同时解决C语言中头文件太多的问题)

5.为多核计算机提供性能提升方案

6.UTF-8编码支持,原生支持UTF-8


Go的实际应用和资源:

  1. 全球最大视频网站Youtube(谷歌)

  2. 七牛云存储以及网盘服务(Q盘)

  3. 已在服务端使用Go开发的著名企业:谷歌,盛大网络,七牛,360.


安装Go语言:

  1. Go源码安装

  2. Go标准包安装

  3. 第三方工具安装


Go环境变量与工作目录:

Gopath下需要建立3个目录:

  1. bin:存放编译后生成的可执行文件

  2. pkg:存放编译后生成的包文件

  3. src:存放项目源码


命令行:go env    显示go环境变量配置

Go常用命令:

go get:获取远程包,需提前安装git或hg

go run:直接运行程序

go build:测试编译,检查是否有编译错误

go fmt:格式化源码(部分IDE在保存时自动调用)

go install:编译包文件并编译整个程序

go test:运行测试文件

go doc:查看文档(chm手册)

在浏览器上浏览go官方网站:命令行输入:godoc -http=:8080    即可在浏览器输入:localhost:8080查看


约定:函数名小写即为private  大写即为public

基本类型:

  1. bool类型:true false  占1字节,不可用0,1代替

  2. 整型:int/uint 根据运行平台可能为32位或64位

  3. 8位整型:int8/uint8  占1字节

    4.接口类型:interface

 5.函数类型:func

类型零值:当变量被声明为某种类型后的默认值,通常情况下的默认值为0,bool为false,string为空字符串


指针:

Go虽然保留了指针,但不支持指针运算以及-->运算符,而是直接采用 . 选择符来操作指针目标对象的成员,

操作符&取变量地址,使用*通过指针间接访问目标对象,默认值为nil而非null.










© 著作权归作者所有

共有 人打赏支持
xiejunbo
粉丝 41
博文 144
码字总数 132363
作品 0
广州
后端工程师
Go开发实战

写这本书主要是灵感来自于: https://github.com/thekarangoel/Projects 然后我就想到了当初做PHP的时候,也有类似的项目,觉得golang也可以实现一个类似的书籍,暂且把书名定为《Go实战开发...

astaxie
2013/08/05
6.1K
0
扒一扒传智播客深藏在背后的内幕

扒一扒传智播客深藏在背后的内幕 —— 传智坚持开Java基础班有何猫腻 Java基础太简单,自学一个月就能搞定?大学学了计算机基础的,感觉报基础班有点浪费钱,浪费时间!找工作会项目都行了,...

小梦想家
2015/12/25
428
0
深度机器学习56G视频资源分享

此视频教程是朋友的技术群分享出来的,我们都要有分享精神,所以分享给我的朋友们,并且希望你们转发出去分享给更多的人 深度学习分为三部分: 深度神经网络算法之数学基础 深度神经网络算法...

互扯程序
2017/12/19
0
0
网易java实习生面试10个问题,你会几个?

此前,w3cschool app分享了阿里巴巴java面经、小米java面经、网易java面经。 近日,我们在w3cschool app开发者头条上,可以看到网易java实习生面经。 在分享网易java实习生面经之前,我们还是...

W3Cschool
2017/12/05
0
0
《程序员的数学》1-2-3.PDF

简介 如果数学不好,是否可以成为一名程序员呢?答案是肯定的。 本书最适合:数学糟糕但又想学习编程的你。 没有晦涩的公式,只有好玩的数学题。 帮你掌握编程所需的“数学思维”。 日文版已...

jackmk
2017/12/21
0
0
Go语言学习资料整理

整理网上找到的Golang语言学习资料 基础 基础教程 书籍在线版 Go 指南-A Tour of Go Go语言圣经(中文版) Effective Go中文版 Go Web编程 build-web-application-with-golang Go入门指南 Th...

nothingfinal
2017/11/28
0
0
推荐几本对于Python初学者比较好的书籍(内含PDF)

我们提供一个初学者最好的Python书籍列表。Python是一个初级程序员可以学习编程的最友好语言之一。为了帮助您开始使用Python编程,我们分享此列表。泡一杯茶,选一本书阅读,开始使用Python编...

柯西带你学编程
06/08
0
0
北京尚学堂:小白如何快速入门编程

版权声明:本文为北京尚学堂原创文章,未经允许不得转载。 大学里面学的是理论知识,比较广泛,主要是对编程进行一个大体的介绍,对于在大学之前已经对编程有过了解的人,可能大学的东西就是...

SXTkaifa
2016/11/14
7
0
Python为什么这么火?

人生苦短,我用Python!对于学习Python的人来说肯定特别熟悉,当然这要归功于python强大的功能:它能把复杂的语言简单化,满足企业运维日常的数据分析和运维系统的管理,编写自动化运维平台,...

让往事随风
2016/05/03
509
2
年度教育机器人 | 索尼 KOOV:寓教于乐的新方式

摘要 丰富详实的拼搭基础教学,直观易懂的可视化编程内容,以及随时配合 PC 以及移动设备的方便性,KOOV 无疑会让孩子从游戏中获得足够丰富的基础知识,从而激发出创造新奇物品的能力。 「年...

谁是大英雄
2017/12/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

记elasticdump 备份数据导出导入

版本: elasticsearch 5.5.2 elasticdump 2.2 系统 CentOS7.3 因项目需求 从生产导出一份索引到测试 帮助文档 https://github.com/taskrabbit/elasticsearch-dump?utm_source=dbweekly&utm_m......

雁南飞丶
10分钟前
0
0
saltstack配置目录管理

1.服务端配置 -接着编辑之前的 top.sls 文件 #vim /srv/salt/top.sls //修改为如下 base: 'slaver.test.com': - filedir -新建 filedir.sls 文件 # vim /srv/salt/filedir.sls file-dir: fi......

硅谷课堂
10分钟前
0
0
python日期时间

日期和时间 Python内建的datetime模块提供了datetime、date和time类型。datetime类型结合了date和time,是最常使用的: In [102]: from datetime import datetime, date, timeIn [103]:...

火力全開
17分钟前
0
0
你不了解的v-show

vue指令v-show的使用 1、判断谋个元素是否显示或隐藏 <el-button v-show="list.power == 1" @click="toUpload" class="toUpload" type="primary">去上传<i class="el-icon-upload el-icon--r......

不负好时光
18分钟前
1
0
网站从一万到亿级流量的全景描述

故事的开头 如果你一毕业参见工作就进入了大型互联网公司,那么恭喜你了,你将体验到大公司深厚的技术底蕴以及企业文化。 如果你进入到了一个初创的中小型企业,那么也恭喜你了,你将可能体会...

大大枣
18分钟前
0
0
Tomcat中JAVA JVM内存介绍、内存溢出及合理配置

一、Java JVM内存介绍 JVM管理两种类型的内存,堆和非堆。按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创...

學無止境
19分钟前
0
0
centOS7.4+nginx 1.12.2负载均衡

centOS7.4+nginx 1.12.2负载均衡 2018年04月10日 09:24:51 阅读数:58 1:参数信息 三台 centOS7.4 A,B,C A作为主服务器,B C作为分流的服务器 都搭建 nginx 1.12.2 一:安装 nginx 1:下载...

linjin200
25分钟前
0
0
分布式之抉择分布式锁

前言: 目前网上大部分的基于zookpeer,和redis的分布式锁的文章都不够全面。要么就是特意避开集群的情况,要么就是考虑不全,读者看着还是一脸迷茫。坦白说,这种老题材,很难写出新创意,博...

Java大蜗牛
30分钟前
1
0
rm: cannot remove `xxx’: Operation not permitted

rm: cannot remove `xxx': Operation not permitted可以先用lsattr xxx查看文件的隐藏属性。如果看到-----a-------的情况,可以用chattr -a xxx去除a属性,然后再进行删除就可以了....

殘留回憶
30分钟前
0
0
oracle 如何查看当前用户的表空间名称

如何查询当前用户的表空间名称?因为oracle建立索引,需要知道当前用户的表空间,查找了一下资料 --查询语法-- select default_tablespace from dba_users where username='登录用户' 如,...

youfen
34分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部