当前位置: 首页 > Go语言
  • 读《软件开发的201个原则》有感

    在之前关于软件工程能力的系列文章中,笔者参考了百度章淼老师在工程能力方面的思考。并且老师也是推荐了《软件开发的201个原则》作为参考辅导资料。刚好在2024程序猿节之前章老师预告的译作终于出版了,笔者也是立马订购抢先阅读起来。不过讲句实在的,本书并没有给我眼前一亮的感觉,可能是因为大多数原则其实笔者在 ...

    作者:s0nnet | 发布:2021-10-30 | 分类:Go语言, 代码艺术, 工程能力 | 围观:3,765 次 | 标签:, , | 评论: 2条评论
  • 软件工程能力之思:什么是软件工程

    本文是《软件工程能力之思》这个系列中的第一篇文章,将介绍什么是软件工程。在此我想着重讲三个方面,即:软件工程的定义、为什么软件工程如此重要,以及软件工程对个人发展的作用。当然,笔者也是通过学习前辈们的经验以及一些大公司的方法论,结合自己的学习理解和思考,难免有不足之处,也期望有看见此博文的同道 ...

    作者:s0nnet | 发布:2021-03-23 | 分类:Go语言, 代码艺术, 工程能力 | 围观:3,376 次 | 标签:, | 评论: 抢沙发
  • Go语言开发规范

    相信很多开发者在Go有了一定的熟悉之后,就在思考如何写出更佳go style的代码。在网上搜索了之后,想必肯定找出了两份经典的文档说明: Go Code Review Comments:https://github.com/golang/go/wiki/CodeReviewComments Uber Go Style Guide:https://github.com/uber-go/guide/blob/master/style.md  ...

    作者:s0nnet | 发布:2020-03-20 | 分类:Go语言, 代码艺术, 工程能力 | 围观:5,365 次 | 评论: 1条评论
  • Linux下检测漏洞软件包

    前言 随着开源软件热潮的进一步发展和在互联网上的广泛应用,目前因开源软件存在漏洞而造成的影响变得巨大。如Bash漏洞、Openssl心脏出血漏洞、ImageMagick命令执行漏洞、ffmpeg文件读取漏洞等等。此类软件漏洞往往没能及时修复,主要有以下原因: 1.因为此类漏洞已影响线上业务运行,而往往容易被系统运维管理 ...

    作者:s0nnet | 发布:2018-10-07 | 分类:Go语言, Linux系统, Python, 安全工具 | 围观:8,568 次 | 标签:, | 评论: 抢沙发
  • 深入学习Go语言标准库sync

    一、前言 最近在阅读Go Web框架echo的源码时,有看到在Echo结构体中有定义了一个sync.Pool类型的pool,处于好奇,加上之前在编写多goroutine并发程序时只使用到了sync包的WaitGroup方法。处于好奇就跟踪进去看了下sync这个包的源码。不看不知道,一看吓一跳,这个包可是非常的强大,它提供了在高并发编程时遇到的各 ...

    作者:s0nnet | 发布:2018-09-17 | 分类:Go语言, 代码艺术 | 围观:6,947 次 | 标签: | 评论: 抢沙发
  • Go语言之Channels实际应用

    正如Golang社区中常说的:“不要通过共享内存来通信,要通过通信来共享内存”。在Go语言中,要传递某个数据给另一个goroutine(协程),可以把这个数据封装成一个对象,然后把这个对象的指针传入某个channel中,另外一个goroutine从这个channel中读出这个指针,并处理其指向的内存对象。Golang从语言层面保证同一个时间只 ...

    作者:s0nnet | 发布:2018-09-04 | 分类:Go语言, 代码艺术 | 围观:11,619 次 | 标签: | 评论: 抢沙发
  • 深入理解Go语言中的方法

    Go语言中是没有类对象的,所以也就没有继承、虚函数、构造函数和析构函数、隐藏的this指针等诸多OOP方面的东西。与之相似的是结构体struct。所以 struct接收器的功能是实现go方法的方法。那么struct到底是一种怎样的存在呢? 什么是方法 Go 语言中同时有函数和方法。方法(method)就是一个包含了接受者(receiv ...

    作者:s0nnet | 发布:2018-08-28 | 分类:Go语言, 代码艺术 | 围观:7,954 次 | 标签: | 评论: 抢沙发
  • 深入理解Go语言的Channels特性

    当我第一次使用Go中的通道(Channels)的时候,我误以为把Channels当作一种数据结构。我将Channels看作为队列来在goroutines之间提供同步访问。 这种概念性的误解理解使我编写了许多糟糕而复杂的并发代码。 而随着时间的推移以及对Go语言的深入理解,我逐渐关注到它的行为特性。 所以现在谈到Channels,我就会想到通 ...

    作者:s0nnet | 发布:2018-08-10 | 分类:Go语言, 代码艺术 | 围观:8,928 次 | 标签: | 评论: 抢沙发
  • Go语言中的面向对象编程

    本文为技术翻译,原文出自:《Object Oriented Programming in Go》 。 今天有人在论坛上提出了一个问题,即如何在不嵌入的情况下获得继承的好处。对于 每个团队中的人来说,考虑Go的应用而不是他们留下的代码这是非常重要的。 我无法告诉你我在早期Go项目实现中删除的那些代码,因为它没有必要。 Go语言设计者们拥有多 ...

    作者:s0nnet | 发布:2018-08-05 | 分类:Go语言, 网络翻译 | 围观:8,030 次 | 标签:, | 评论: 抢沙发