Go语言中文网 为您找到相关结果 24

总结2019常用书单网站

# 总结2019,展望2020新的一年,新的目标,2019定的那些目标是不是都已经实现,2020是否已经指定了新的目标。2019年在手机上花费了大量的时间和金钱。全家人的手机,大概算了一下,能花了有小一万了。你花在手机上的时间越多越可能觉得自己像个文盲当我们看到夕阳西下我们想到的是:“卧槽!好多鸟!”“艾玛,真好看!” 我们早已忘记了:“落霞与孤鹜齐飞,秋水共长天一色”看见一轮明月,我们想到的是“卧槽真尼玛圆。”而不是“但愿人长久,千里共婵娟”,跟心仪对象聊天,吹不出文艺有趣彩虹屁看到稍带点文化的段子接不上梗哪怕是发生了令人气愤的社会新闻也不能完整表达自己的观点只好当个“金句复读机” 更可怕的是,随着语言水平的退步思维能力也随之下降,不着四六的论调频出一篇文章超过600字高呼“太长不看”一条...阅读全文

博文 2020-02-12 07:32:54 思考让人长寿

golang语言中struct的初始化方式

// 先定义结构体 type Rect struct { width int height int } // 再初始化结构体 rect1 := new(Rect) rect2 := &Rect{} rect3 := &Rect{10, 20} rect4 := &Rect{width:10, height:20} // 定义 + 初始化同时进行 rect5 := &struct{width int, height int}{10, 20} 版权声明:本文为博主原创文章,未经博主允许不得转载...阅读全文

博文 2015-08-04 11:00:02 YanJiangbo

数据保护伞—为MaxCompute平台数据安全保驾护航

摘要: 数据安全是大数据发展道路上的重要挑战之一,数据,作为企业的核心资产,80%以上的核心信息是以结构化数据存储,包含个人身份证号、银行账号、电话、客户数据、医疗、交易、薪资等极其重要又敏感的信息。一旦发生数据篡改、盗取、滥用等安全事件,将给企业带来经济和声誉上的双重打击,造成的后果将不堪设想。 近几年随着DT概念在国内持续普及,2016年中国大数据市场规模为168.0亿元,增速达到45%;预计2017-2020增速将保持在30%以上,中国信通院发布大数据发展调查报告(《中国大数据发展调查报告(2017年)》)中指出大部分企业均已意识到数据分析对企业发展的重要性。 59.2%的受访企业已经成立了数据分析相关部门。 35.1% 的受访企业已经应用了大数据,同时, 22.9%的企业计划将...阅读全文

Go 学习之路:Println 与 Printf 的区别

Println 和Printf 都是fmt包中公共方法;在需要打印信息时常用的函数,那么二函数有什么区别呢? 附上代码 package main import ( "time" "fmt" ) const ( Man = 1 Female = 2 ) func main(){ timer := time.Now().Unix() if(timer % Female == 0){ fmt.Println("%d is Female", timer) fmt.Printf("%d is Female", timer) }else{ fmt.Println("%d is Man", timer) fmt.Printf("%d is Man", timer) } } 运行结果 %d is Man 1...阅读全文

博文 2018-06-15 17:34:37 fudomine

神奇的go语言(高级应用)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 其实有了上一篇的基本语法,我们就可以做一些简单的事情,比如说文件服务器。或许大家有点不相信,没关系。下面开始用代码来说明问题,其实整个代码的内容不会超过十行。package main import "net/http" func main() { h := http.FileServer(http.Dir("/home")) http.ListenAndServe(":8888", h) } 有了上面的代码,直接输入go run share.go。说了这么多,大家可以继续看go语言下的高级应用是怎么使用的。 (1)并发运行package main import "fmt" import "...阅读全文

博文 2015-11-27 15:00:02 feixiaoxing

DocHub文库PC端模板,文库系统PC端模板

# DocHub文库PC端模板 [DocHub](https://gitee.com/TruthHun/DocHub)文库PC端模板,使用基于Bootstrap的Flat-UI开发,模板页面是在2016年8月份左右开发出来的,原型我也不记得是参考哪个站点的了,毕竟这个PC端模板差不多算是两年前的作品了。 `DocHub`演示站点[IT文库(http://wenku.it)](http://wenku.it)上的页面,在开发的时候,对样式和页面布局做了一些改动,而且,现在的模板,是没有实现一些js相关功能的。 现以Apache 2.0 开源协议,将模板开源出来,有需要的朋友可以直接拿来使用。 ## 模板托管地址 - GitHub:https://github....阅读全文

"go: missing Git command"的解决办法

在使用go git 取资源包的时候出错误: ============================================================ Microsoft Windows [版本 6.1.7600] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。 C:\Users\wsq>go get github.com/russross/blackfriday go: missing Git command. See http://golang.org/s/gogetcmd package github.com/russross/blackfriday: exec: "git": executable file not found i...阅读全文

博文 2015-06-18 09:09:09 e_wsq

linux boot-go_to_protected_mode

/* * Prepare the machine for transition to protected mode. * 从实模式向保护模式跳转 * 文档: * /arch/x86/include/asm/segment.h 【1】 * arch/x86/boot/pm.c【2】本文 * arch/x86/boot/a20.c【3】 */ #include "boot.h" #include /* * Invoke the realmode switch hook if present; otherwise * disable all interrupts. * * boot loader hooks * 当加载器运行的环境不能布置标准内存布局时,会用到加载器...阅读全文

博文 2016-02-11 02:00:02 zeflove

Go语言Slice操作.

1、基本用法: a = append(a, b...) 例如:list = appened(list,[]int{1,2,3,4}...) 可以用来合并两个列表. 不用这样了 :list := make([]int,len(list1)+len(list2)) 然后再copy(list,list1) copy(list[len(list1):],list2) 2、Copy: b = make([]T, len(a)) copy(b, a) 或者: b = append([]T(nil), a...) 3、Cut: a = append(a[:i], a[j:]...) 4、Delete: a = append(a[:i], a[i+1:]...) 或者: a = a[:i+copy(a[i:...阅读全文

博文 2015-11-09 11:00:42 fyxichen

数据库防火墙DBShield

DBShield 是用 Go 语言开发的数据库防火墙,用来保护你的数据免受 SQL 注入的侵扰。 支持的数据库包括:DB2、MySQL、MariaDB、Oracle、PostgreSQL。 一般正常的数据库访问如下图所示: ![image](https://static.oschina.net/uploads/img/201702/16084257_prsM.png) 使用 DBShield 进行查询检测: ![image](https://static.oschina.net/uploads/img/201702/16084258_vSls.png) 收集完数据库运行在保护模式下: ![image](https://static.oschina.net/uploads/img...阅读全文

开源项目 2017-02-17 03:56:14 nim4

Hexo 博客快速整合公众号导流工具,不用互推也能实现粉丝躺增!

readmore 插件简介 Hexo 整合 OpenWrite 平台的 readmore 插件,实现博客的每一篇文章自动增加阅读更多效果,关注公众号后方可解锁全站文章,从而实现博客流量导流到微信公众号粉丝目的. ???? 主页 效果 用法 Step #1 - 更新 _config.yml 配置文件 在 _config.yml 配置文件中,配置 readmore 插件相关信息,详情见 OpenWrite 微信公众号增长神器 "ReadMore" 简介. plugins: readmore: blogId: 15702-1569305559839-744 name: 雪之梦技术驿站 qrcode: https://snowdreams1006.github.io/snowdreams1006-w...阅读全文

博文 2019-10-11 18:02:40 雪之梦技术驿站

Go语言自己实现的异步小log程序.

slog.go package slog import ( "errors" "fmt" "os" "strings" "time" ) type Logger struct { console bool warn bool info bool tformat func() string file chan string } func NewLog(level string, console bool, File *os.File, buf int) (*Logger, error) { log := &Logger{console: console, tformat: format} if File != nil { FileInfo, err := File.Stat() if err ...阅读全文

博文 2015-10-30 19:00:00 fyxichen

go 数组

package main import "fmt" import "reflect" func main() { var arr[5]int fmt.Println(reflect.TypeOf(arr)) var sli[]int fmt.Println(reflect.TypeOf(sli)) arr1 := [1]int{100} arr2 := [2]int{1,2} arr3 := [...]int{1,2,3,4,5} fmt.Println(arr,"\n",arr1,"\n",arr2,"\n",arr3) fmt.Println("二维数组") arr4 := [2][3]int {{1,2,3},{4,5,6}} fmt.Println(arr4) arr5 := [2]...阅读全文

博文 2015-11-07 13:00:05 eclipser1987

Go语言的排它锁sync.Mutex

package main import ( "fmt" "sync" "time" ) var m *sync.Mutex func main() { m = new(sync.Mutex) go lock(1) time.Sleep(time.Second) lock(2) fmt.Printf("%s\n", "exit!") } func lock(i int){ println(i, "lock start") m.Lock() println(i, "lock") time.Sleep(10 * time.Second) m.Unlock() println(i, "unlock") } 版权声明:本文为博主原创文章,未经博主允许不得转载...阅读全文

博文 2015-11-05 15:00:52 wkyb608

go hot update (1)

package main import ( "net" "reflect" "fmt" "os" ) func main() { listener, _ := net.Listen("tcp", ":8000") for { c , _ := listener.Accept() go connHandler(c) } } func connHandler(c net.Conn) { defer c.Close() e := reflect.TypeOf(c).Elem() n := e.NumField() for i := 0 ; i < n; i++ { fmt.Fprintf(os.Stdout, "e.Field(%d) = %v %v\n", i, e.Field(i).Name,...阅读全文

博文 2015-10-23 23:00:11 eclipser1987

How to serialize/unserialize type struct in GO

How to serialize/unserialize type struct in GO package main import ( "bytes" "encoding/gob" "fmt" "log" ) type Data struct { id int name string } func (d *Data) GobEncode() ([]byte, error) { w := new(bytes.Buffer) encoder := gob.NewEncoder(w) err := encoder.Encode(d.id) if err != nil { return nil, err } err = encoder.Encode(d.name) if err != nil { ...阅读全文

博文 2015-11-09 13:00:10 u012413865

gitbook 入门教程之从零到壹发布自己的插件

什么是插件 Gitbook 插件是扩展 Gitbook 功能的最佳方式,如果 Gitbook 没有想要的功能或者说网络上也没有现成的解决方案时,那么只剩下自食其力这条道路,让我们一起来自力更生开发插件解决问题吧! 幸运的是,Gitbook 提供了插件机制留给开发者去扩展自定义功能,虽然官方开发文档不是特别完善,甚至有时候需要翻阅相关源码才能定位到暴露出的 api,但是这一切都不影响开发的热情,谁让我们一开始就选定了 Gitbook 呢! 遗憾的是,目前 Gitbook 已经停止了旧版服务,gitbook-cli 脚手架甚至也早已停止了维护,但是我心依旧钟爱于轻量级的脚手架,不抛弃不放弃,所以花费了一定心血整理出相关的资料文档. gitbook 官方文档 「雪之梦技术驿站」: Gitbook ...阅读全文

博文 2019-10-08 18:02:42 雪之梦技术驿站

神奇的go语言(基本语法)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 学习一门新的语言无非就是从基本的语法开始的。通过语法书来学习语言毕竟是非常枯燥的,所以我们不妨从最简单的例子开始学习一门新的语言。例子不多,但是有代表性。 (a)最简单的代码package main import "fmt" func main() { fmt.Println("hello, world") } (b)基本的函数package main import "fmt" func sub(a int, b int) int { return a - b; } func main() { fmt.Println(sub(2, 3)) } (c)if语句学习package main i...阅读全文

博文 2015-11-19 12:00:02 feixiaoxing

神奇的go语言(面向对象)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 有过C++语言学习经历的朋友都知道,面向对象主要包括了三个基本特征:封装、继承和多态。封装,就是指运行的数据和函数绑定在一起,C++中主要是通过this指针来完成的;继承,就是指class之间可以相互继承属性和函数;多态,主要就是用统一的接口来处理通用的逻辑,每个class只需要按照接口实现自己的回调函数就可以了。 作为集大成者的go语言,自然不会在面向对象上面无所作为。相比较C++、java、C#等面向对象语言而言,它的面向对象更简单,也更容易理解。下面,我们不妨用三个简单的例子来说明一下go语言下的面向对象是什么样的。 封装特性,package main import "fmt" ty...阅读全文

Go语言免费入门视频教程:Redis介绍安装和使用

###### @author:Davie ###### 版权所有:北京千锋互联科技有限公司 ### Redis的操作和使用 在安装好redis以后,我们这里给大家讲一下redis操作的一些知识。 Redis支持的数据类型:**string**,**hash**,**list**,**set**,**sorted set** 我们来练习一下redis的使用: - **字符串String:**string类型是redis最基本的类型,一个key对应一个value。redis的string可以包含任何数据,比如jpg图片,或者序列化的对象,都可以存储。string类型最大的能够存储512MB。 1)存储String操作:**set key value** 2)获取String操作:**get ke...阅读全文

windows下生成go的全平台交叉版本

allplatform.cmd :: darwin/386 darwin/amd64 freebsd/386 freebsd/amd64 freebsd/arm linux/386 linux/amd64 linux/arm windows/386 windows/amd64 call compileplatform.cmd darwin 386 call compileplatform.cmd darwin amd64 call compileplatform.cmd freebsd 386 call compileplatform.cmd freebsd amd64 call compileplatform.cmd freebsd arm call compileplatform.cmd...阅读全文

博文 2015-10-28 20:00:06 lzf_china

Golang高并发抓取HTML图片

版权所有,转载请注明:http://www.lenggirl.com/language/go-picture.html 使用准备 1.安装Golang 2.下载爬虫包 go get -v github.com/hunterhug/marmot/expert go get -v github.com/hunterhug/marmot/miner go get -v github.com/hunterhug/parrot/util 程序 该程序只能抓取HTML中src="http"中的图片, 必须带有协议头http(s), 其他如data-src和混淆在JS中的无法抓取 See: https://github.com/hunterhug/marmot/blob/master/example/le...阅读全文

博文 2019-05-13 03:34:55 veeeeeeeeeeee

Golang快速排序

版权所有,转载请注明:http://www.lenggirl.com/language/go-quicksort.html 定义 快速排序由C. A. R. Hoare在1962年提出。快速排序是对冒泡排序的一种改进,采用了一种分治的策略。 基本思想 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 步骤 先从数列中取出一个数作为基准数。 分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。 再对左右区间重复第二步,直到各区间只有一个数。 /* Created by superpika on 17-11-15. Tip:...阅读全文

博文 2019-05-13 03:34:48 veeeeeeeeeeee

Go 学习之路:引用类型与值类型

Golang中只有三种引用类型:slice(切片)、map(字典)、channel(管道); 引用类型 引用类型理解为(C语言):指针 值类型 值的拷贝 下面以值类型和slice(切片)例子可知: package main import "fmt" func main(){ a := [5]int{2, 3, 4, 5, 6} b := a fmt.Println(a,b) b[2] = 77 fmt.Println(a,b) } 上面定义了一个数组a,它是值类型,复制给b是copy,当b发生变化后a并不会发生任何变化,结果如下: package main import "fmt" func main(){ a := []int{2, 3, 4, 5, 6} b := a fmt.Print...阅读全文

博文 2018-06-28 15:34:40 fudomine