云原生系列Go语言篇-泛型Part 2

类型推导和泛型就像在使用:=时支持类型推导一样,在调用泛型函数时Go同样支持类型推导。可在上面对Map、Filter和Reduce调用中看出。有些场景无法进行类型推导(如类型参数仅用作返回值)。这时,必须指定所有的参数类型。下面的代码演示了无法进行类型推导的场景:type Integer inter...

云原生系列Go语言篇-泛型Part 1

“Don’t Repeat Yourself”是常见的软件工程建议。与其重新创建一个数据结构或函数,不如重用它,因为对重复的代码保持更改同步非常困难。在像 Go 这样的强类型语言中,每个函数参数及每个结构体字段的类型必须在编译时确定。这种严格性使编译器能够帮助验证代码是否正确,但有时会希望重用不同类...

云原生可观测最佳实践

1 课时 |
39 人已学 |
免费

阿里云云原生助理工程师认证(ACA)课程

66 课时 |
214 人已学 |
免费

高校精品课-华东师范大学-云原生数据库

13 课时 |
277 人已学 |
免费
开发者课程背景图

云原生系列Go语言篇-编写测试Part 2

基准测试确定代码是快或慢非常复杂。我们不用自己计算,应使用Go测试框架内置的基准测试。下面来看第15章的GitHub代码库sample_code/bench目录下的函数:func FileLen(f string, bufsize int) (int, error) { file, err := o...

云原生系列Go语言篇-编写测试Part 1

云原生系列Go语言篇-编写测试Part 1

本文来自正在规划的Go语言&云原生自我提升系列,欢迎关注后续文章。2000年以来,自动化测试的广泛应用可能比任何其他软件工程技术都更能提高代码质量。Go是一种专注于提高软件质量的语言和生态系统,很自然的在其标准库中包含了测试支持。Go中测试代码非常容易,没有理由不添加测试。本章中,读者将了解...

云原生系列Go语言篇-标准库Part 2

encoding/jsonREST API将JSON奉为服务之通信的标准方式,Go 的标准库内置对Go 数据类型与 JSON 之间进行转换的支持。marshaling一词表示从 Go 数据类型转为另一种编码,而unmarshaling表示转换为 Go 数据类型。使用结构体标签添加元数据假设我们正在构...

云原生系列Go语言篇-标准库Part 2

使用Go进行开发的最大优势之一是其标准库。与Python类似,Go也采取了“内置电池”的理念,提供了构建应用程序所需的许多工具。由于Go是一种相对较新的语言,它附带了一个专注于现代编程环境中遇到的问题的库。我们无法涵盖所有标准库包,所幸也不需要,因为有许多优秀的信息源可以了解标准库,比如官方文档。我...

云原生系列Go语言篇-并发 Part 2

云原生系列Go语言篇-并发 Part 2

并发实践和模式既然已经讲解了Go为并发所提供的基础工具,我们就来学习一些并发的最佳实践和模式吧。保持API无并发并发是一种实现细节,好的API设计应当尽可能隐藏实现细节。这样在修改代码时无需修改其调用方式。在实践中,这意味着永远不要在API的类型、函数及方法中暴露通道或互斥锁(我们会在何时用互斥锁替...

云原生系列Go语言篇-并发 Part 1

并发是一个计算机科学用语,将一个进程分割成独立组件并指明这些组件如何安全共享数据。大部分语言通过库提供并发,使用的是尝试通过获取锁操作执行系统级共享数据的线程。Go独树一帜。它的主要并发模块,很多认认为是Go的最著名的特性,基于CSP(通讯顺序过程)。它依据快速排序算法的发明人Tony Hoare在...

云原生系列Go语言篇-模块、包和导入 Part 2

云原生系列Go语言篇-模块、包和导入 Part 2

使用模块我们已经学习了如何在单个模块中使用包,接下来该学习如何集成第三方模块及其中的包。然后,我们会学习如何发布自己模块并添加版本,以及Go的中央服务:pkg.go.dev、模块代理和校验和(checksum)数据库。导入第三方代码我们已导入过标准库中的包,如fmt、errors、os和math。G...

云原生系列Go语言篇-模块、包和导入 Part 1

云原生系列Go语言篇-模块、包和导入 Part 1

大部分编程语言都有将代码组织到命名空间和库的系统,Go也不例外。在学习其它特性时我们看到了,Go对这些老思想引入了新方法。本章中,读者会学习到如何通过包和模块组织代码、如何导入、如何使用第三方库以及如何创建自有库。仓库、模块和包Go语言的库管理有三个基础概念:仓库、模块和包。所有开发者对仓库都很熟悉...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

{"cardStyle":"productCardStyle","productCode":"polardb","productCardInfo":{"productTitle":"云原生数据库 PolarDB PostgreSQL 版","productDescription":"阿里云自研数据库 PolarDB PostgreSQL,100%兼容 PostgreSQL,高度兼容 Oracle。为用户提供快速弹性、高性能、海量存储、安全可靠的数据库服务,同时支持阿里云自研 Ganos 多维多模时空信息引擎及开源 PostGIS 地理信息引擎。","productContentLink":"https://www.aliyun.com/product/apsaradb/polardbpg","isDisplayProductIcon":true,"productButton1":{"productButtonText":"了解详情","productButtonLink":"https://www.aliyun.com/product/apsaradb/polardbpg"},"productButton2":{"productButtonText":"管理控制台","productButtonLink":"https://polardb.console.aliyun.com/cn-hangzhou/clusters?spm=5176.28041490.J_5253785160.4.340b5820H6ZQUA"},"productButton3":{"productButtonText":"在线咨询","productButtonLink":"https://www.aliyun.com/core/online-consult?spm=5176.8789780.7y9jhqsfz.115.47ea55caeL2Mfu&from=OVtXEBmlH8"},"productPromotionInfoBlock":[{"$id":"0","productPromotionGroupingTitle":"最新活动","productPromotionInfoFirstText":"新用户3个月免费试用","productPromotionInfoFirstLink":"https://free.aliyun.com/?searchKey=PolarDB%20PostgreSQL","productPromotionInfoSecondText":"3月采购季限时优惠","productPromotionInfoSecondLink":"https://www.aliyun.com/activity/2024purchase/database"},{"$id":"1","productPromotionGroupingTitle":"快速入门","productPromotionInfoFirstText":"产品介绍","productPromotionInfoFirstLink":"https://help.aliyun.com/product/172538.html","productPromotionInfoSecondText":"快速入门","productPromotionInfoSecondLink":"https://help.aliyun.com/document_detail/139507.html"},{"$id":"2","productPromotionGroupingTitle":"最佳实践","productPromotionInfoFirstText":"AIGC 构建企业专属 chatbot","productPromotionInfoFirstLink":"https://help.aliyun.com/zh/polardb/polardb-for-postgresql/build-enterprise-specific-chatbot-based-on-polardb-postgresql-and-llm?spm=a2c4g.11186623.0.0.5ca81ad5VNjj3e","productPromotionInfoSecondText":"","productPromotionInfoSecondLink":""},{"$id":"3","productPromotionGroupingTitle":"产品推荐","productPromotionInfoFirstText":"PolarDB MySQL 版","productPromotionInfoFirstLink":"https://www.aliyun.com/product/apsaradb/polardbm","productPromotionInfoSecondText":"PolarDB 分布式版","productPromotionInfoSecondLink":"https://www.aliyun.com/product/apsaradb/polardbx"}]},"activityCardInfo":{"activityTitle":"","activityDescription":"","cardContentBackgroundMode":"LightMode","activityContentBackgroundImageLink":"","activityCardBottomInfoSelect":"activityPromotionInfoBlock"}}

社区圈子

阿里云云原生
阿里云云原生
关注云原生中间件、微服务、Serverless、容器、Service Mesh等技术领域、聚焦云原生技术趋势、云原生大规模的落地实践
9151+人已加入
加入
相关电子书
更多
阿里云云原生开源开发者沙龙北京站 PPT 合集
PolarDB开发者大会:PolarDB云原生弹性演进
2022云栖大会:云原生数据仓库-加速业务数据化,数据价值化
立即下载 立即下载 立即下载