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

golang中image/jpeg包和image/png包用法

jpeg包实现了jpeg图片的编码和解码 func Decode(r io.Reader) (image.Image, error) //Decode读取一个jpeg文件,并将他作为image.Image返回 func DecodeConfig(r io.Reader) (image.Config, error) //无需解码整个图像,DecodeConfig变能够返回整个图像的尺寸和颜色(Config具体定义查看gif包中的定义) func Encode(w io.Writer, m image.Image, o *Options) error //按照4:2:0的基准格式将image写入w中,如果options为空的话,则传递默认参数 type Options struct { Qual...阅读全文

博文 2015-06-17 20:03:41 chenbaoke

Go语言程序测试

最近一直在搞各种测试,然后今天周末翻翻书,发现特价萝卜的书上在测试方面写得挺全的。 这书是之前CU(chinaunix.net)论坛。搞活动得到奖品(还有作者亲笔签名),拿回来都没看完. 因为写得太太太细了,又厚。 参考他的书及官网的文档,再把测试方面的东西过一下还是有点意思的. 这篇主要讲这几点: 一.Testing的几种不同形式 功能测试: TestXxxx(t *testing.T) 基准测试: BenchmarkXxxx(b *testing.B) 样本测试: Example_Xxx() 用于测试的Main函数: TestMain(m *testing.M) // // func TestMain(m *testing.M) { // flag.Parse() // os.Exit(...阅读全文

博文 2015-12-15 01:00:04 xcltapestry

5分钟学习基于Go,go-microservice-template,Minke的微服务

【编者的话】本篇文章介绍了Go语言下构建微服务的例子,作者利用一个helloword讲解了如何使用他的微服务框架,该框架不仅包含了构建服务,还包括路由、请求验证、日志记录、测试、动态配置变更,最后将提供了将服务整合到Docker容器并持续集成。本文干货满满,虽然需要一些对Go语言的基础,但是这构建微服务的思路是通用的。 @Container容器技术大会将于6月4日在上海光大会展中心国际大酒店举办,来自携程、PPTV、蚂蚁金服、京东、浙江移动、海尔电器、唯品会、eBay、道富银行、麻袋理财、土豆网、阿里百川、点融网等公司的技术负责人将带来实践经验分享,3月21日之前购票只需238元,欢迎感兴趣的同学抢购。 介绍几周前我去参加一个零售环境下的技术会议,直到午饭时间都没人提及'Docker'或者'...阅读全文

博文 2016-03-25 11:19:45 Sonyfe25cp

自制JVM -- 用GO语言实现JVM

虽然写了很多年的Java代码,但是基本上只把JVM当blackbox处理。介绍JVM的书也看过几本,但效果不佳。看OpenJDK代码?提不起兴趣。最近有几个礼拜的空闲时间,于是我决定用GO语言写了一个JVM,彻底征服JVM这头怪兽! 为什么选择GO 首先不想用动态语言来写。实现JVM的初衷就是想离机器更近一点,所以排除了JavaScript、Python、Ruby等语言。其次也不想用Java来写,原因基本同上。还有一个原因是自己对Java太熟悉了,用它来写,没挑战性。再次也不想用C/C++,原因是自己不喜欢这两个语言。C过于底层,C++过于复杂。所以最终选择了GO。 GO是Google发布的语言,编译型,接近底层,一定程度上可以充当系统语言来使用。GO的语法很简洁,学习曲线平滑,文档也比较详...阅读全文

博文 2015-02-09 13:00:01 SpiderDog

现在招聘比找男朋友还难 T-T(招初级/中级golang开发)

现在招聘比找男朋友难多了!! 招 初级 /中级 golang 开发,base 广州天河( 12-25K ) PS:公司已有较成熟的 GO 语言研发团队,目前团队用到的都是最新技术:K8s,Istio,微服务等,期望有相关经验和有志于往 GO 语言发展的小伙伴加入!!! 职位职责: 1. 负责服务端技术选型和架构; 2. 负责产品功能模块的设计,开发和维护; 任职要求: 1. 1~3年以上Golang开发经验; 2. 熟悉服务端接口开发,熟悉http,protobuf,grpc; 3. 熟悉goroutine,channel,sql,http等模块; 4. 掌握mysql,pgsql,redis基本使用; 5. 掌握linux,...阅读全文

golang中的单元测试

一般为了保证整个系统的稳定性,通常都需要编写大量的单元测试,诸如像java的junit,php的phpunit等都提供了类似的功能。golang中的testing包提供了这个测试的功能,结合go test工具搞起来就很方便了。 golang中的单元测试不单有功能测试,也还提供了性能测试,非常给力。 功能测试 在golang的src目录下新建目录math,测试目录结构如下: golang单元测试目录 fibonacci.go代码如下,主要有一个Fibonacci函数 package lib //斐波那契数列 //求出第n个数的值 func Fibonacci(n int64) int64 { if n < 2 { return n } return Fibonacci(n-1) + Fibon...阅读全文

博文 2015-10-16 21:52:52 陈杰斌

go语言:优雅的模板切割技术

众所周知,一个网页普遍由头、身、脚组成,而一个项目中头和脚基本相同,这些部分就需要提取出来。 比如: ... ... ... 分割的时候就会分成这样: 头: ... 身: ... 脚: ... 然后就可以通过三次调用func (*Template) Execute这个方法来渲染模板了! 可是本人有个强迫症,看到和被分到了两个文件中十分不爽,所以想了下面这个方法: main.html: {{define "main"}} ... 阅读全文

QOR:基于go语言开发的电商系统、CMS工具包

QOR是首个使用Go语言开发的电商系统和CMS的软件工具开发包(SDK),开源项目,包含一系列的通用功能模块,实现快速集成、灵活配置,让开发电商网站、CMS,像搭积木一样简单快捷。 ## 目前已经上线的模块 * Admin: 快速为您的应用程序生成一个漂亮、可跨平台运行、可配置的管理后台。 * Publish: 分别设置预演和正式服务器,使用Publish,内容管理员就能在正式发布之前预览所更新的内容。 * Transition: 用Transition来体现业务流程和执行业务规则。 * Media Library: 支持上传文件至云端或其他位置;支持图像裁剪和调整尺寸。 * Worker: 运行批处理进程,进行批量数据处理或其他耗时的计算。 * Exchange: 应...阅读全文

Golang游戏服务器开发

um-game.com 手游创业公司,团队成员有爱,知名天使投资,知名大厂背景。 坐标:杭州滨江 薪资:10k-20k 看能力、可面谈 工作内容: 1.负责服务器功能模块设计和实现 2.设计游戏相关功能模块架构 3.跟踪和维护上线产品 岗位要求: 1.本科及以上计算机相关专业毕业 2.1年及以上游戏服务器开发经验 3.熟悉C或者Golang编程语言,具有Golang服务器开发经验者优先 4.熟悉操作系统原理,对网络编程、多线程编程有深刻理解 5.熟悉常用的数据结构和算法并能熟练使用 6.熟悉Redis、Mongodb等数据库操作 7.良好的逻辑思维、学习习惯,具备独立解决技术问题的能力 ...阅读全文

golang实现icmp中的ping功能

package main import ( "fmt" "net" "os" ) func checkSum(msg []byte) uint16 { sum := 0 len := len(msg) for i := 0; i < len-1; i += 2 { sum += int(msg[i])*256 + int(msg[i+1]) } if len%2 == 1 { sum += int(msg[len-1]) * 256 // notice here, why *256? } sum = (sum >> 16) + (sum & 0xffff) sum += (sum >> 16) var answer uint16 = uint16(^sum) return answer } ...阅读全文

博文 2015-06-18 08:02:32 u011843461

Go语言中append函数的强大功能

Go语言中append的功能十分强大,使用它可以使很多功能的实现变得更加简洁。以下为简单对比: .将一个slice插入到另一个slice的指定位置: 不使用append: func insertSliceAtIndex(slice_origin []int, slice_to_insert []int, insertIndex int) (result []int, err error) { if insertIndex > len(slice_origin) { return nil, errors.New("insertIndex不能大于slice_origin的长度") } result = make([]int, len(slice_origin)+len(slice_to_inse...阅读全文

博文 2015-06-17 23:01:37 books1958

[Golang]Socket编程01----实现基本功能的Client和Server

支持多连接。 Server运行之后,进入Accept阻塞状态。Accept得到一个Conn之后,开启一个协程,分别有两个协程阻塞在Read和Write。当Read一个数据之后,将Read得到的数据写入readChannel中,之后再对其进行处理。在writeChannel得到一个数据之后,向Conn写入数据。 Client运行后,接入Server,之后开启两个协程阻塞在Read和Write的Channel中。在Scan得到一个数据之后,向writeChannel写入数据,唤醒阻塞的协程向Conn中写入数据。当Server中有数据返回时,read协程被唤醒,将数据写入readChannel中。 当然,还有诸多细节要处理。比如Conn的关闭在什么时候等等。 客户端源码 package clien...阅读全文

博文 2017-01-13 03:00:02 码农小骚年

ST的自动完成功能怎么让它不自动加上“CR”符号

![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqkAAAGFCAIAAABRwv1AAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAgAElEQVR4nOydeUBVZf7/P88BNS1XVtNJQFEBQ0kNpxlXLNwSW5iwmtKyYqxJzGkzs82casbEmm+hbdq3Rvo6FTAWOomKtmjpD2ViERVwR5BELHO75/n9cfZ7z7ncCxcucN+vbnjPc57lc57nOc/72c65bGfFL0REjBEREVO+MiYI8hemukt+ZLjjd27vyHSn9acMh3YnSDbE3pmbfjXB5CyXonTZv/tw...阅读全文

垂直领域爬虫框架go_spider

本项目基于golang开发,是一个开放的垂直领域的爬虫引擎,主要希望能将各个功能模块区分开,方便使用者重新实现子模块,进而构建自己垂直方方向的爬虫。 本项目将爬虫的各个功能流程区分成Spider模块(主控),Downloader模块(下载器),PageProcesser模块(页面分析),Scheduler模块(任务队列),Pipeline模块(结果输出); ![enter image description here][1] [1]: https://github.com/hu17889/doc/raw/master/go_spider/img/project.pn...阅读全文

Golang绑定Lua脚本,小小封装一下

好吧,我承认我有点无聊! 原来的时候,自己用C写过一个小东东,里面集成了lua脚本,lua主要用于配置系统,感觉很不错。 最近折腾了一段时间的Golang,写代码的感觉,的确比C爽,所以想着用Golang写个爬小说的稍微通用的爬虫,基本功能搞定后,发现配置还是用lua比较方便,便试着封装一下lua c-api的bindings,整了半天,发现挺累的,就去github搜了下,发现了几位前辈写的东东,但是感觉都不太满意,最后终于通过golang官网找到了这个。 恩,github.com/aarzilli/golua,这个封装,相对完整。试用了一下,和C-API基本一致,问题是,从配置文件里面取个东东,依然和C-API一样,繁琐无比。哎,之后只能自己再封装一下算了。整了2小时,感觉不错,读取基本配...阅读全文

博文 2015-06-17 20:01:46 u013125772

光线游戏(北京)诚聘GO游戏服务器开发人员

##公司简介 北京光线游戏是一家专注于手机和网页游戏开发的游戏公司,隶属于北京光线传媒集团旗下。依托于光线传媒在影视、动画等多个领域的IP授权优势,着力打造原创精品游戏。 从业人员大多来自盛大、搜狐畅游、蓝港、热酷等各大公司,核心团队从业经验人均在8年以上。 现随着游戏业务的快速成长,急聘各类精英加盟,相信您的诚心加盟,将为公司带来更强的竞争力与经济效益,同时您也将获得丰厚的收入并享受到与公司一起成长的乐趣,成为受益终身的财富。 ##招聘职位 ####游戏服务器开发工程师 ######职位描述: 负责游戏具体功能模块的设计、编码工作。 ######任职条件: 1. 一年以上软件开发工作经验 2. 熟悉go/python/c++中任意两门语言,并精通其中一种...阅读全文

[译] Go 1.7 中程序结构的解析

Go 1.7终于发布了,这个版本的一大特色是引入了一个新的基于SSA的编译器! SSA是一个描述低层次的操作集合的方法,比如隐射到系统底层操作的加载和存储操作。而SSA的特殊之处在于它有无限数量的寄存器。它本身不是特别有趣,除了它启用了一类很容易理解的优化传值这一点以外,因为这个特性使得编译速度更快,编译出的二进制文件更小。Go的新版本发布说明实现正在成熟,并且开始利用llvm(wider world of compiler technology)中的技术和实践。 新的基于SSA后端除了带来的性能提升,还提供了一系列的新工具允许开发者与SSA机制交互。这个工具输出了SSA过程语句,优化传值,和Go特有的汇编。当使用go工具来反汇编时,可以通过设置GOSSAFUNC环境变量为函数名,比如: $...阅读全文

博文 2016-08-23 05:00:01 shenjiaxu

用go语言和org-mode搭建自己的博客环境

2012-12-23 用go语言和org-mode搭建自己的博客环境 设计目标 操作流程 目录格式 博文头部meta格式 功能实现 设计目标 半静态的博客。尽量是self-contain的,没有数据库依赖。只要完全基本功能。使用博文头部有元信息来分类别,tag等,go语言后台动态生成按类别浏览。 静态部分包括: css样式文件 各种显示的模板 大多数博文都是由org文件使用emacs生成的html 动态部分包括: 由go语言程序生成rss的feed 管理博文的分类,tag,等 评论等功能后期再考虑 操作流程 手写org格式的博文。文件格式有特殊头部存储博文json格式的meta信息。然后用emacs加工,将org文件转化为html导入到pub/post目录,只生成body部分。 go语言写后...阅读全文

博文 2015-03-16 11:50:39 zenlife

自动化接口测试

一、 自动化测试的现状一般测试,我们会分成上图几个层级,开发人员完成单元测试,测试人员完成第二层和顶层,但是在大部分企业中,往往会忽略第二层,也即集成、接口测试。更多的是侧重于开发人员的单元和ui,或者说功能测试。 二、 为什么做自动化接口测试 1.节省测试成本。底层的一个bug往往会引发上层的多个bug,而且底层的bug很容易引起全网的宕机。相反接口测试能够提供系统复杂度上升情况下的低成本高效率的解决方案。 2.fail fast。即快速失败,主要是让异常或错误尽快的抛出。在接口测试中,由于接口测试是相对底层的测试,所以,可以更快的发现错误。 3.提高测试效率。接口测试是自动化并且持续集成的,相对UI、功能测试,测试效率也大大的提高。 三、自动化接口测试的选择 1....阅读全文

go语言 功能测试和性能测试的示例

F:./src └─hello hello.go hello_test.go hello.go ========= package hello import "fmt" func Add(a, b int) (result int) { return a + b } func main() { fmt.Println("Hello, world. 你好,世界!") c := Add(1, 2) fmt.Println("c=", c) } hello_test.go package hello import ( "fmt" "testing" "time" ) func TestAdd1(t *testing.T) { fmt.Println("进行Add测试") r := Add(1, 2...阅读全文

Golang1.7使用ICMP协议实现ping功能,带TIME和TTL

package main import ( "errors" "fmt" "math/rand" "net" "os" "time" "golang.org/x/net/icmp" "golang.org/x/net/ipv4" ) func Lookup(host string) (string, error) { addrs, err := net.LookupHost(host) if err != nil { return "", err } if len(addrs) < 1 { return "", errors.New("unknown host") } rd := rand.New(rand.NewSource(time.Now().UnixNano())) return a...阅读全文

博文 2016-09-17 15:00:02 fyxichen

自制JVM -- 用GO语言实现JVM

虽然写了很多年的Java代码,但是基本上只把JVM当blackbox处理。介绍JVM的书也看过几本,但效果不佳。看OpenJDK代码?提不起兴趣。最近有几个礼拜的空闲时间,于是我决定用GO语言写一个JVM,彻底征服JVM这头怪兽! 为什么选择GO 首先不想用动态语言来写。实现JVM的初衷就是想离机器更近一点,所以排除了JavaScript、Python、Ruby等语言。其次也不想用Java来写,原因基本同上。还有一个原因是自己对Java太熟悉了,用它来写,没挑战性。再次也不想用C/C++,原因是自己不喜欢这两个语言。C过于底层,C++过于复杂。所以最终选择了GO。 GO是Google发布的语言,编译型,接近底层,一定程度上可以充当系统语言来使用。GO的语法很简洁,学习曲线平滑,文档也比较详细...阅读全文

博文 2015-03-01 11:27:55 zxhoo

go语言(使用了cgo与硬件交互),算上空行和注释共200行代码

go语言(使用了cgo与硬件交互),算上空行和注释共200行代码 实现了贪吃蛇的基本功能,好吧你不能指望我还加上声音啥的,我不会啊 很多时间花在"图形"界面上了,其实时间还可以缩短的 package main import ( "fmt" "math/rand" "os" "time" ) /* #include #include // 使用了WinAPI来移动控制台的光标 void gotoxy(int x,int y) { COORD c; c.X=x,c.Y=y; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c); } // 从键盘获取一次按键,但不显示到控制台 int d...阅读全文

博文 2015-06-17 23:00:25 a771948524

go.image/tiff 的一些问题

最近给 go.image/tiff 增加了 Tile/Gray/Gray16/RGB16bit 等格式的支持. 还有一些特性以后会陆续完善. Go语言图像库的基本思路是能尽量提供完善的解码功能(当然只支持文件的第一个图像). 而编码功能则比较有限, 主要是支持基本的不同颜色模型, TIFF特有的特性应该不会完整支持. 最近有用户反馈生成的tiff在Mac系统不能正常浏览(Issue6421). 而我自己的Win7/64可以正常打开有问题的图像. 用 tiffinfo 也没有看到什么异常的Tag(有问题的已经修改之后). 之后无意中用GIMP也不能打开Mac有问题的tiff影像. 既然问题已经重现, 查找原因就容易多了. 初步分析之后, 发现问题主要是针对非RGB的图像(灰度和调色板). 然后...阅读全文

博文 2014-10-06 06:14:32 chai2010

垃圾回收面面观

垃圾回收面面观 2015-06-18 下一篇准备写Go1.5的垃圾回收的,所以这一篇先做一些垃圾回收相关的基础知识的铺垫。 基本垃圾回收算法 实际上大多数的垃圾回收算法,都是下面三种基本垃圾回收算法之上的变种。 引用计数(reference counting) 基本思路是为每个对象加一个计数器,记录指向这个对象的引用数量。每次有一个新的引用指向这个对象,计数器加一;反之每次有一个指向这个对象引用被置空或者指向其他对象,计数器减一。当计数器变为 0 的时候,自动删除这个对象。 引用计数的优点是: 相对简单,不需要太多运行时的支持,可以在原生不支持GC的语言里实现。 对象会在成为垃圾的瞬间被释放,不会给正常程序的执行带来额外中断。 它的问题是循环引用,对象A包含一个引用指向对象B,同时对象B包含...阅读全文

命令行网络诊断工具 myLG

myLG,是一个命令行网络诊断工具。my looking glass是一个开源软件工具,将不同网络探测器的功能结合到一个网络诊断工具中。 **特性:** * 200多个国家的DNS查询信息 * 本地快速ping和实时跟踪 * 数据包分析 -  TCP / IP和其他数据包 * 本地HTTP / HTTPS Ping(GET,POST,HEAD) * RIPE信息(ASN,IP / CIDR) * PeeringDB信息 * 快速端口扫描 * 网络LAN发现 * 可配置的选项 * 直接从shell 访问 命令 * 支持vi和emacs模式的几乎所有基本功能 * CLI自动完成和历史记录功能 **运行效果:** ![image](https://static.o...阅读全文

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

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

《Kubernetes集成外部服务实践》- 第三期Docker技术沙龙主题剖析系列【第一篇】

分享嘉宾:柴宗三,亚信大数据云平台部高级研发工程师。目前负责亚信DataFoundry大数据PaaS云平台。本文源自于3月12号《第三期Kubernetes沙龙》四个Topic之一,是《第三期kubernetes沙龙主题剖析系列·第一篇》。本文对如何将后端服务(backend service)接入kubernetes进行了比较详尽的介绍。 ### Part I. Kubernetes简介 Kubernetes不同组件的交互是异步的,不同组件负责不同的功能模块。Kubernetes集群目前为单master结构,一般情况下master节点上运行APIServer、kube-controller-manager、kube-scheduler、etcd,node节点上运行kubelet、...阅读全文

App开发者:一个你从未体验过的自动化测试平台

“测试”在移动互联网界应该是耳熟能详的词汇了,目前几乎所有开发者在进行研发的过程中都要进行应用的测试,常用的使用模式大致有三类: 完全黑盒、基于脚本、基于录制回放 但使用过的朋友应该知道这三类模式都存在很难解决的缺陷,那么同作为开发的笔者,也是尝试、更换了无数的测试平台与工具,最终对自己的工作效率或者效果提升都不明显,而接下来,笔者将向大家推荐一款最近正在试用的一个自动化测试平台,目前来说效果还不错,经过笔者的研究和梳理总结,整理出了这个平台的构架与理念,希望各位做开发、测试的朋友能够有机会来尝试一番。 逻辑架构 ![图片 1.png](http://studygolang.qiniudn.com/170214/79ee116e9126cdad8e5a8ebe00...阅读全文

beego入门示例-简易购物车

稍微整理了一下 电脑里面之前做过的小demo github : beegoshoppingcart可以做为beego入门示例:数据库自动生成go 和beego的安装可以参考之前写的go&beego安装教程 基本功能包括,包括产品选择,购物车增删改查,订单的生成 demo示例图: 首页 购物车 数据库设计见models文件夹,只需建库,不用建表。 注意,当时赶时间写的示例,代码很多地方并不规...阅读全文

博文 2017-03-05 19:46:21 cowkeys

golang配置文件热更新

配置文件热更新是服务器程序的一个基本功能,通过热更新可以不停机调整程序的配置,特别是在生产环境可以提供极大的便利,比如发现log打得太多了可以动态调高日志等级,业务逻辑参数变化,甚至某个功能模块的开关等都可以动态调整。 每种语言都有自己的热更新实现方式,在golang里面我看到了有人采用了一种错误的实现方式,如下: type Config struct { Test1 string `json:"Test1"` Test2 int `json:"Test2"` } var ( config *Config ) func loadConfig() { f, err := ioutil.ReadFile("config.json") if err != nil { fmt.Println("lo...阅读全文

博文 2017-03-17 05:52:28 失去梦想的咸鱼

Golang的GC信息

本文转自:http://studygolang.com/articles/2701 一、GC信息的信息收集 设置环境变量GODEBUG=gctrace=1。 使用方法,如果程序为myserver。正常的启动方法为./myserver,如果需要收集GC信息启动方式如下GODEBUG=gctrace=1 ./myserver。 二、GC信息分析 gc5(6): 11+12+357+77 us, 0 -> 1 MB, 4294 (5261-967) objects, 67/2/0 sweeps, 6(115) handoff, 6(9) steal, 170/56/5 yields gc5(6):表示第5次GC,共有6个线程参与GC。 11+12+357+77 us:表示停止各个goroutine...阅读全文

博文 2015-06-17 20:00:10 chenbaoke

Dashboard - Kubernetes的全功能Web界面

编者按:这篇文章是关于Kubernetes 1.3新功能一系列深入文章的一部分,本文是第八篇。 Kubernetes Dashboard(仪表盘)是一个旨在将通用的基于Web的监控和操作界面加入 Kubernetes 的项目。 三个月前,我们发布了第一个可用于生产环境的版本,从那时起,我们对 dashboard 进行了巨大改进。现在你在浏览器中就能完成 Kubernetes 的主要操作。 本文中,我们将重点讨论 dashboard 的新功能和未来的开发计划。 ## “全功能的dashboard ” 感谢社区和项目成员的大量贡献,我们才能在 Kubernetes 1.3中加入许多新功能。 我们认真倾听了用户(见图表 https://tatic.lwy.ioi...阅读全文

大牛都是怎么设计产品的?

在社会大环境中,每个岗位都有明确的分工,产品设计师的岗位就是要做好产品的设计工作,那如何才能做好呢?今天小编就和大家分享分享。 闲来没事,在知乎、麦子圈等这些专业网站上溜达,总是会有收获的。本文既然是为大家分享产品的设计,那么我们就从产品的角度来聊聊吧。 1、寻找一个切入点 切入点的目的就是为了给用户一个使用的理由,而且这一个理由必须是强需,比如:打车类应用为什么会那么火,很简单,因为人们打不到车,不用你这个东西,他很不爽。网络游戏为什么是大多数互联网公司的现金牛?因为在中国,很多年轻人不打游戏,他就觉得不爽。这就是切入点,一个可以让用户费非用你不可的理由。它可以是一个比较吸引别人的功能,也可以是一个解决刚需的产品概念。 当然这个切入点必须是有市场规模的,也...阅读全文

Go Web 开发(一)

目的 了解 Go 开发 Web 应用的基本原理。 效果 代码 package main import ( "fmt" "http" ) type User struct { Name string } func Register(w http.ResponseWriter, r *http.Request) { if "GET" == r.Method { fmt.Fprintln(w, "Register" + "" + " User Name: " + "") return } user := &User{r.FormValue("userName")} fmt.Fprintln(w, "Hello ", user.Name) } func main() { http.HandleFun...阅读全文

博文 2015-06-18 09:09:04 DL88250

测试用例设计该怎么做

测试什么,按照什么顺序测试,覆盖哪些需求做到心中有数。测试用例编写者不仅要掌握软件测试的技术和流程,而且要对被测软件的设计、功能规格说明、用户试用场景以及程序/模块的结构都有比较透彻的理解。测试用例设计一般包括以下几个步骤:   1、测试需求分析   从软件需求文档中,找出待测试软件/模块的需求,通过自己的分析、理解,整理成为测试需求,清楚被测试对象具有哪些功能。测试需求的特点是:包含软件需求,具有可测试性。   测试需求应该在软件需求基础上进行归纳、分类或细分,方便测试用例设计。测试用例中的测试集与测试需求的关系是多对一的关系,即一个或多个测试用例集对应一个测试需求。   2、业务流程分析   软件测试,不单纯是基于功能的黑盒测试,还需要对软件的内部处理逻辑进行测试。...阅读全文

golang小结

go build calc go test:http://www.cnblogs.com/yjf512/archive/2013/01/22/2870927.html 关于build flags,调用go help build 关于packages,调用go help packages 关于flags for test binary go的log模块基本功能:例如如何输出到文件中 log.New()时可以传入io:Writer const itoa 下标和range遍历字符串 rune panic传入任何类型 recover如何恢复:在提前的defer中进行recover,recover返回的是panic传入的interface,可以是任意类型 数据也是值语义 引用语义包含4个:slice、...阅读全文

博文 2014-11-04 01:00:02 chuqingq

一个golang项目笔记 (二) 动态加载库

这个项目需要用到动态链接库技术, 主程序动态加载一些功能模块,这样在扩充功能时,无须修改主程序,只需要新增功能模块动态调用就可以了。 研究了一下golang官方支持的plugin功能,发现有几点不足。 1.官方plugin功能本质上是用cgo实现的,编译一个so文件,然后再调用 2. 只支持linux, 不支持windows 3. plugin模块panic时, 主程序也会panic, 无法做到隔离。 基于上述原因,我开始另外寻找合适的第三方支持。后来发现这样一个开源库,https://github.com/hashicorp/go-plugin , 感觉符合我的需求。它基于net/rpc ,grpc实现,主程序和plugin程序是两个qtj独立进程,可以通过主程序调用plugin进程启动,...阅读全文

博文 2018-08-20 00:30:01 elonlee

网站后端开发维护

服务器开发工程师 岗位职责: 1. 产品研发:参与服务器端后台系统的研发,按照设计完成功能模块的编写. 2. 负责IOS、Android移动应用服务器端的设计、开发、重构与扩展. 3. 负责移动应用服务器的系统模块开发. 4. 移动应用服务器上线运营的技术支持. 5. 根据需求进行功能设计,以及程序设计、开发、优化工作. 6. 与客户端工程师、测试人员一起完成功能模块开发与调试. 7. 能独立部署WEB 服务环境,并根据硬件配置对系统进行优化. 熟悉JMS,UML. 任职要求: 1.本科以上学历,2年以上服务端开发经验,有实际大型网络产品的开发经验; 2.语言基础扎实,精通一种主流的编程语言,C++/Java/C#/Python/lua均可; 3.掌握关系数据库理论,...阅读全文

[上海-莘庄]互联网公司golang 职位急招!

职位月薪:15-25 K,技术大牛可具体面谈! 工作内容: -负责对公司手机APP项目的服务器端开发,维护。 职位要求: -本科或以上学历、计算机软件、通讯相关专业优先; -具备扎实的相关软件开发技能,能根据架构要求,开发设计可扩展、可复用、高性能的功能模块; -具备网络编程知识的实际应用和优化经验; -有分布式系统、大规模分布式储和数据处理经验者优先; -有基于MYSQL, Redis, MongoDB的开发经验; -具备Linux/Unix平台下的编程和操作经验,熟悉shell等脚本语言; -优秀的分析问题和解决问题的能力,对解决具有挑战性问题充满激情。 工作地址:上海闵行莘庄,简历投递邮箱:lina@liao.co...阅读全文

打造容器工作流的云原生平台 Cyclone-caicloud

![image](https://static.oschina.net/uploads/space/2016/1108/174047_xW7k_2894582.jpeg) Cyclone是一个打造容器工作流的云原生持续集成持续发布平台。 Cyclone主要致力于将代码从本地开发环境用任意容器引擎封装搬运到测试或者生产环境运行。Cyclone包括一下特性: * 容器原生: 每次构建、集成、部署均在容器中运行,完全解决运行时环境不一致的问题。 * 依赖关系: 定义依赖规则或简单的组件关系,确保执行顺序依照既定策略。 * 版本控制: 基于版本控制构建,检索镜像/流水线历史就像查询版本管理接口一样简单。 * 双向绑定: 记录每次CI/CD操作用于回答类似问题:“各容器镜像部署在集群哪个角...阅读全文