跳转到主要内容

标签(标签)

资源精选(342) Go开发(108) Go语言(103) Go(99) angular(82) LLM(75) 大语言模型(63) 人工智能(53) 前端开发(50) LangChain(43) golang(43) 机器学习(39) Go工程师(38) Go程序员(38) Go开发者(36) React(33) Go基础(29) Python(24) Vue(22) Web开发(20) Web技术(19) 精选资源(19) 深度学习(19) Java(18) ChatGTP(17) Cookie(16) android(16) 前端框架(13) JavaScript(13) Next.js(12) 安卓(11) 聊天机器人(10) typescript(10) 资料精选(10) NLP(10) 第三方Cookie(9) Redwoodjs(9) LLMOps(9) Go语言中级开发(9) 自然语言处理(9) PostgreSQL(9) 区块链(9) mlops(9) 安全(9) 全栈开发(8) ChatGPT(8) OpenAI(8) Linux(8) AI(8) GraphQL(8) iOS(8) 软件架构(7) Go语言高级开发(7) AWS(7) C++(7) 数据科学(7) whisper(6) Prisma(6) 隐私保护(6) RAG(6) JSON(6) DevOps(6) 数据可视化(6) wasm(6) 计算机视觉(6) 算法(6) Rust(6) 微服务(6) 隐私沙盒(5) FedCM(5) 语音识别(5) Angular开发(5) 快速应用开发(5) 提示工程(5) Agent(5) LLaMA(5) 低代码开发(5) Go测试(5) gorm(5) REST API(5) 推荐系统(5) WebAssembly(5) GameDev(5) CMS(5) CSS(5) machine-learning(5) 机器人(5) 游戏开发(5) Blockchain(5) Web安全(5) Kotlin(5) 低代码平台(5) 机器学习资源(5) Go资源(5) Nodejs(5) PHP(5) Swift(5) 智能体(4) devin(4) Blitz(4) javascript框架(4) Redwood(4) GDPR(4) 生成式人工智能(4) Angular16(4) Alpaca(4) 编程语言(4) SAML(4) JWT(4) JSON处理(4) Go并发(4) kafka(4) 移动开发(4) 移动应用(4) security(4) 隐私(4) spring-boot(4) 物联网(4) nextjs(4) 网络安全(4) API(4) Ruby(4) 信息安全(4) flutter(4) 专家智能体(3) Chrome(3) CHIPS(3) 3PC(3) SSE(3) 人工智能软件工程师(3) LLM Agent(3) Remix(3) Ubuntu(3) GPT4All(3) 软件开发(3) 问答系统(3) 开发工具(3) 最佳实践(3) RxJS(3) SSR(3) Node.js(3) Dolly(3) 移动应用开发(3) 低代码(3) IAM(3) Web框架(3) CORS(3) 基准测试(3) Go语言数据库开发(3) Oauth2(3) 并发(3) 主题(3) Theme(3) earth(3) nginx(3) 软件工程(3) azure(3) keycloak(3) 生产力工具(3) gpt3(3) 工作流(3) C(3) jupyter(3) 认证(3) prometheus(3) GAN(3) Spring(3) 逆向工程(3) 应用安全(3) Docker(3) Django(3) R(3) .NET(3) 大数据(3) Hacking(3) 渗透测试(3) C++资源(3) Mac(3) 微信小程序(3) Python资源(3) JHipster(3) 大型语言模型(2) 语言模型(2) 可穿戴设备(2) JDK(2) SQL(2) Apache(2) Hashicorp Vault(2) Spring Cloud Vault(2) Go语言Web开发(2) Go测试工程师(2) WebSocket(2) 容器化(2) AES(2) 加密(2) 输入验证(2) ORM(2) Fiber(2) Postgres(2) Gorilla Mux(2) Go数据库开发(2) 模块(2) 泛型(2) 指针(2) HTTP(2) PostgreSQL开发(2) Vault(2) K8s(2) Spring boot(2) R语言(2) 深度学习资源(2) 半监督学习(2) semi-supervised-learning(2) architecture(2) 普罗米修斯(2) 嵌入模型(2) productivity(2) 编码(2) Qt(2) 前端(2) Rust语言(2) NeRF(2) 神经辐射场(2) 元宇宙(2) CPP(2) 数据分析(2) spark(2) 流处理(2) Ionic(2) 人体姿势估计(2) human-pose-estimation(2) 视频处理(2) deep-learning(2) kotlin语言(2) kotlin开发(2) burp(2) Chatbot(2) npm(2) quantum(2) OCR(2) 游戏(2) game(2) 内容管理系统(2) MySQL(2) python-books(2) pentest(2) opengl(2) IDE(2) 漏洞赏金(2) Web(2) 知识图谱(2) PyTorch(2) 数据库(2) reverse-engineering(2) 数据工程(2) swift开发(2) rest(2) robotics(2) ios-animation(2) 知识蒸馏(2) 安卓开发(2) nestjs(2) solidity(2) 爬虫(2) 面试(2) 容器(2) C++精选(2) 人工智能资源(2) Machine Learning(2) 备忘单(2) 编程书籍(2) angular资源(2) 速查表(2) cheatsheets(2) SecOps(2) mlops资源(2) R资源(2) DDD(2) 架构设计模式(2) 量化(2) Hacking资源(2) 强化学习(2) flask(2) 设计(2) 性能(2) Sysadmin(2) 系统管理员(2) Java资源(2) 机器学习精选(2) android资源(2) android-UI(2) Mac资源(2) iOS资源(2) Vue资源(2) flutter资源(2) JavaScript精选(2) JavaScript资源(2) Rust开发(2) deeplearning(2) RAD(2)

【Go语言高级开发】Go Channels 教程

在本教程中,我们将研究如何在基于 Go 的应用程序中使用通道。

通道是连接基于 Go 的应用程序中的 goroutine 之间的管道,允许通信以及随后在变量之间传递值。

与其他编程语言相比,它们非常方便,可以帮助您在 Go 中构建令人难以置信的高性能、高并发应用程序,而无需大惊小怪。这绝不是侥幸,在设计语言时,核心开发人员决定他们希望他们的语言中的并发性成为一等公民,并使其尽可能简单地使用,不要走得太远,也不允许开发人员他们需要工作的自由。

如此轻松地构建并发系统的能力首先吸引了我对这门语言的兴趣,我不得不说,到目前为止,这绝对是一种乐趣。

注意 - 如果您想了解有关 goroutine 的更多信息,我建议您查看我的其他关于 goroutines 的教程。

目标


在本教程结束时,您将:

  • 对渠道背后的理论有深刻的理解
  • 能够创建使用通道的简单并发 Go 应用程序

先决条件


为了完成本教程,您需要满足以下先决条件:

【Go语言高级开发】Go WaitGroup 教程

如果您刚刚开始学习 Go 以及如何实现高并发、高性能应用程序,那么了解 WaitGroups 至关重要。

在本教程中,我们将介绍以下内容:

  • WaitGroups 是什么以及我们应该在什么时候使用它们
  • 使用 WaitGroups 的简单示例
  • WaitGroups 的真实示例

到此结束时,您应该对如何在您自己的并发 Go 应用程序中使用 WaitGroups 有一个坚实的掌握。

注意 - 本教程的完整代码可以在这里找到:TutorialEdge/go-waitgroup-tutorial

视频教程

https://youtu.be/0BPSR-W4GSY

了解等待组


让我们直接深入了解什么是 WaitGroup 以及它为我们解决了什么问题。

当您开始在 Go 中编写利用 goroutines 的应用程序时,您会遇到需要阻止代码库某些部分执行的场景,直到这些 goroutines 成功执行。

以这段代码为例:

【Go语言数据库开发】Golang ORM 教程

在本教程中,我们将了解如何使用 Go-ORM 或 GORM 以简单的方式与 sqlite3 数据库进行交互。

ORM 或对象关系管理器几乎充当我们开发人员和我们底层数据库技术之间的中介。 它们让我们基本上可以像往常一样使用对象,然后保存这些对象,而无需编写复杂的 SQL 语句。

在您不希望使用 SQL 但需要数据库的情况下,它们有效地降低了我们代码库的复杂性。

视频教程

https://youtu.be/VAGodyl84OY

安装


为了安装 jinzhu/gorm,您必须执行以下 go get 命令:

go get -u github.com/jinzhu/gorm


完成此操作后,您应该能够将 jinzhu/gorm 导入到任何基于 Go 的项目中。

一个简单的例子


例如,假设您想编写一个 go REST API,当某个 API 端点被命中时,它将新用户及其电子邮件保存到数据库中。

我们可以像这样在 go 结构中描述我们的用户:

【Go语言高级开发】Go 装饰器函数模式教程

装饰器在 Python 和 TypeScript 等其他编程语言中肯定更为突出,但这并不是说你不能在 Go 中使用它们。事实上,对于某些问题,使用装饰器是完美的解决方案,我们希望在本教程中能找到答案。

了解装饰器模式


装饰器本质上允许您包装现有功能并在顶部附加或添加您自己的自定义功能。

在 Go 中,函数被视为第一类对象,这本质上意味着您可以像传递变量一样传递它们。让我们用一个非常简单的例子来看看这个:

【Go语言Web开发】使用 JWT 保护您的 Go REST API

注意 - 本教程的完整源代码可以在这里找到:TutorialEdge/go-jwt-tutorial

JWT,或者更正式地称为 JSON Web 令牌,是一种紧凑的、URL 安全的方式,用于表示要在两方之间传输的声明。这本质上是一种令人困惑的说法,即 JWT 允许您以无状态但安全的方式将信息从客户端传输到服务器。

先决条件


在您阅读本文之前,您将需要以下内容:

  • 您需要在开发机器上安装 Go 版本 1.11+。

介绍


JWT 标准使用 HMAC 算法的密钥或使用 RSA 或 ECDSA 的公钥/私钥对。

注意 - 如果您对 JWT 的正式定义感兴趣,那么我建议您查看 RFC:RFC-7519

这些在单页应用程序 (SPA) 中被大量用作安全通信的手段,因为它们允许我们做两件关键的事情:

【Go语言Web开发】使用 Golang 创建 RESTful API

如果您正在编写任何形式的 Web 应用程序,那么您很可能与 1 个或多个 REST API 交互,以填充应用程序的动态部分并执行更新或删除数据库中的数据等任务。

在本教程中,您将构建一个成熟的 REST API,它公开 GET、POST、DELETE 和 PUT 端点,随后将允许您执行全部范围的 CRUD 操作。

为了保持简单并专注于基本概念,我们不会与任何后端数据库技术交互来存储我们将要玩的文章。但是,我们将编写此 REST API,以便轻松更新我们将定义的函数,以便它们对数据库进行后续调用以执行任何必要的 CRUD 操作。

如果您想了解有关如何使用 Go 与数据库交互的更多信息,可以查看以下文章:


源代码 - 可以在此处找到本文的完整源代码:TutorialEdge/create-rest-api-in-go-tutorial

先决条件


您需要在开发机器上安装 Go 版本 1.11+。

【Go语言Web开发】使用 Gorilla Mux 和 PostgreSQL 在 Go 中构建和测试 REST API

介绍


本教程将说明如何在 Go 中构建由 PostgreSQL 支持的 REST API,使用 Gorilla Mux 进行路由。本教程将采用测试驱动开发,最后将解释如何在开发过程中对数据库进行持续测试。

目标


在本教程结束时,您将:

  • 熟悉 Gorilla Mux,并且
  • 了解如何使用持续集成 (CI) 针对数据库测试您的应用程序。

先决条件


本教程假设:

  • 基本熟悉 Go 和 PostgreSQL,以及
  • 你有工作的 Go 和 PostgreSQL 安装。您可以使用 Docker 轻松运行测试数据库。

您将在此存储库中找到演示的完整代码。

TomFern/go-mux-api

【Go语言Web开发】如何使用 Golang 和 PostgreSQL 构建 REST-API

Golang 是一种开源编程语言,可以轻松构建简单、可靠和高效的应用程序。它是一种新兴语言,开发了 Docker 和 Kubernetes 等技术。 Go 是一种编译语言。因此,当人们编写程序时,它会被编译并生成与该程序等效的机器代码。

本教程将讨论 Golang 并帮助我们使用 Golang 和 PostgreSQL 数据库创建一个 REST API 应用程序。

Golang 的历史


Go 是由谷歌开发的。 Go 通常被称为 Golang。由于其域名为golang.org,因此被称为Golang,原因是go.org无法使用。因此,Go 语言被缩写为 Golang,因此域名为 golang.org。

Golang 开发项目始于 2007 年,主要目标是利用多核处理器开发大型分布式系统和高度可扩展的网络服务器。

Golang 项目于 2009 年开源,其第一个初始版本 1.0 于 2012 年发布。Google Jetbrain 团队将 Go 称为最有前途的编程语言。

 

【Go语言Web开发 】使用 Fiber 在 Go 中构建基本的 REST API

Fiber 是一个新的基于 Go 的 Web 框架,它已经爆发并引起了编程社区的极大兴趣。 该框架的存储库一直位于 Go 编程语言的 GitHub 趋势页面上,因此,我想我会打开旧的 VS Code 并尝试构建一个简单的 REST API。

因此,在本教程中,我们将介绍如何使用这个新的 Fiber 框架开始在 Go 中构建自己的 REST API 系统!

在本教程结束时,我们将介绍:

  • 项目设置
  • 为图书管理系统构建 Simle CRUD REST API
  • 使用附加包将项目分解为更可扩展的格式。

让我们潜入!

视频教程


本教程还提供视频格式:

https://youtu.be/Iq2qT0fRhAA