个人简介

Echo Blog


江湖无名 安心练剑
  • Go语言核心36讲-26sync.Mutex与sync.RWMutex
    26 sync.Mutex与sync.RWMutex 我在前面用20多篇文章,为你详细地剖析了Go语言本身的一些东西,这包括了基础概念、重要语法、高级数据类型、特色语句、测试方案等等。 这些都是Go语言为我们提供的最核心的技术。我想,这已经足够让你对Go语言有一个比较深刻的理解了。 从本篇文章开始,我们将一起探讨Go语言自带标准库中一些比较核心的代码包。这会涉及这些代码包的标准用法、使用...
    2015-01-01 15:20:27 | Go语言核心36讲
  • Go语言核心36讲-25更多的测试手法
    25 更多的测试手法 在前面的文章中,我们一起学习了Go程序测试的基础知识和基本测试手法。这主要包括了Go程序测试的基本规则和主要流程、 testing.T 类型和 testing.B 类型的常用方法、 go test 命令的基本使用方式、常规测试结果的解读等等。 在本篇文章,我会继续为你讲解更多更高级的测试方法。这会涉及 testing 包中更多的API、 go test 命令...
    2015-01-01 15:20:27 | Go语言核心36讲
  • Go语言核心36讲-24测试的基本规则和流程(下)
    24 测试的基本规则和流程(下) 你好,我是郝林。今天我分享的主题是测试的基本规则和流程的(下)篇。 Go语言是一门很重视程序测试的编程语言,所以在上一篇中,我与你再三强调了程序测试的重要性,同时,也介绍了关于 go test 命令的基本规则和主要流程的内容。今天我们继续分享测试的基本规则和流程。本篇代码和指令较多,你可以点击文章查看原文。 知识扩展 问题 1:怎样解释功能测试的测试...
    2015-01-01 15:20:27 | Go语言核心36讲
  • Go语言核心36讲-23测试的基本规则和流程(上)
    23 测试的基本规则和流程 (上) 你好,我是郝林,今天我分享的主题是:测试的基本规则和流程(上)。 你很棒,已经学完了本专栏最大的一个模块!这涉及了Go语言的所有内建数据类型,以及非常有特色的那些流程和语句。 你已经完全可以去独立编写各种各样的Go程序了。如果忘了什么,回到之前的文章再复习一下就好了。 在接下来的日子里,我将带你去学习在Go语言编程进阶的道路上,必须掌握的附加知识,比...
    2015-01-01 15:20:27 | Go语言核心36讲
  • Go语言核心36讲-22panic函数、recover函数以及defer语句(下)
    22 panic函数、recover函数以及defer语句(下) 你好,我是郝林,今天我们继续来聊聊panic函数、recover函数以及defer语句的内容。 我在前一篇文章提到过这样一个说法,panic之中可以包含一个值,用于简要解释引发此panic的原因。 如果一个panic是我们在无意间引发的,那么其中的值只能由Go语言运行时系统给定。 但是,当我们使用 panic 函数有意...
    2015-01-01 15:20:27 | Go语言核心36讲
  • Go语言核心36讲-21panic函数、recover函数以及defer语句(上)
    21 panic函数、recover函数以及defer语句 (上) 我在上两篇文章中,详细地讲述了Go语言中的错误处理,并从两个视角为你总结了错误类型、错误值的处理技巧和设计方式。 在本篇,我要给你展示Go语言的另外一种错误处理方式。 不过,严格来说,它处理的不是错误,而是异常,并且是一种在我们意料之外的程序异常。 前导知识:运行时恐慌panic 这种程序异常被叫做panic,我把...
    2015-01-01 15:20:27 | Go语言核心36讲
  • Go语言核心36讲-20错误处理(下)
    20 错误处理 (下) 你好,我是郝林,今天我们继续来分享错误处理。 在上一篇文章中,我们主要讨论的是从使用者的角度看“怎样处理好错误值”。 那么,接下来我们需要关注的,就是站在建造者的角度,去关心“怎样才能给予使用者恰当的错误值”的问题了。 知识扩展 问题:怎样根据实际情况给予恰当的错误值? 我们已经知道,构建错误值体系的基本方式有两种,即:创建立体的错误类型体系和创建扁平的错...
    2015-01-01 15:20:27 | Go语言核心36讲
  • Go语言核心36讲-19错误处理(上)
    19 错误处理(上) 提到Go语言中的错误处理,我们其实已经在前面接触过几次了。 比如,我们声明过error类型的变量err,也调用过errors包中的New函数。 今天,我会用这篇文章为你梳理Go语言错误处理的相关知识,同时提出一些关键问题并与你一起探讨。 我们说过error类型其实是一个接口类型,也是一个Go语言的内建类型。 在这个接口类型的声明中只包含了一个方法Error。E...
    2015-01-01 15:20:27 | Go语言核心36讲