Searching We Love Privacy Club

Twts matching #GO
Sort by: Newest, Oldest, Most Relevant

I appreciate living in a city with a university and multiple libraries nearby. Whenever there is too much noise from construction works at home, I can simply go to the library and enjoy a quiet place. 😌 A 5G cell tower is also within reach, enabling fast internet access without the necessity of logging into the eduroam Wi-Fi network. 🤓 ⌘ Read more

⤋ Read More

使用 Go 構建高性能的事件管理器
事件驅動編程是一種編程範式,在這種範式下,程序的執行流由外部事件(如用戶操作、傳感器輸出或消息傳遞)來決定。在 Go 語言中,構建一個事件管理器可以幫助我們更好地組織和處理這些事件。本文將詳細探討如何在 Go 語言中創建和使用事件管理器,包括事件的定義、監聽和觸發,提供豐富的示例來指導你構建自己的事件驅動應用。Golang 事件管理器概述————–事件驅動編程的優勢解耦:減少組件 ⌘ Read more

⤋ Read More

Gob 實踐全攻略,數據傳輸利器
*1. Gob 簡介1.1 Gob 概述Gob(Go binary)是 Go 語言中用於序列化和反序列化數據的編碼庫。它是 Go 語言的標準庫之一,專門設計用於在 Go 程序之間高效地傳輸數據。Gob 可以將複雜的數據結構編碼成二進制格式,便於在不同系統之間傳遞,並支持版本控制和演進。1.2 爲什麼選擇 GobGob 相比其他序列化格式(如 JSON、XML)具有更高的性能和更小的數據體積。它是專 ⌘ Read more

⤋ Read More

Cherry trees go from bonfire pile to celebrated chef’s high-end restaurants
A meeting at a Melbourne restaurant 10 years ago has helped open revenue streams for a north-east Victorian cherry grower as he diversifies to lessen the blow of consecutive rough seasons. ⌘ Read more

⤋ Read More

Go: XML 文件的讀寫操作詳解
*概述XML(可擴展標記語言)作爲一種常見的數據交換格式,廣泛應用於配置文件、數據傳輸等場景。本文將介紹如何在 Go 語言 中進行 XML 文件的讀寫操作,涵蓋 XML 基礎知識、編碼 / 解碼基礎、讀取 XML 文件、寫入 XML 文件、實戰操作示例以及 XML 與 JSON 對比選型。一、XML 基礎知識簡介XML 語法結構XML 採用標籤(tag)來標記數據,具有自我描述性。一個基本的 XM ⌘ Read more

⤋ Read More

Go 語言爲什麼很少使用數組?
01 介紹在 Go 語言中,數組是一塊連續的內存,數組不可以擴容,數組在作爲參數傳遞時,屬於值傳遞。數組的長度和類型共同決定數組的類型,不同類型的數組之間不可以比較,否則在編譯時會報錯。因爲數組的一些特性,我們在 Go 項目開發中,很少使用數組。本文我們介紹一下數組的特性。02 數組聲明方式在 Go 語言中,數組的聲明方式有三種。示例代碼:func main() { var arr1 [2]int ⌘ Read more

⤋ Read More

Go JSON 文件讀寫最佳實踐
*概述在 Go 語言中,JSON(JavaScript Object Notation)是一種常見的數據交換格式,用於在不同語言之間進行數據傳遞。本文將介紹 Go 語言中如何進行 JSON 文件的讀寫操作,包括解析與序列化,錯誤處理,以及一些實用技巧。一、JSON 文件基礎操作JSON 文件的讀取如何從 JSON 文件中讀取數據。package mainimport ( “encoding/js ⌘ Read more

⤋ Read More

每個 Go 程序員必犯之錯
說起每個程序員必犯的錯誤,那還得是 “循環變量” 這個錯誤了,就連 Go 的開發者都犯過這個錯誤,這個錯誤在 Go 的 FAQ 中也有提到 What happens with closures running as goroutines?[1]:func main() {    var wg sync.WaitGroup    values := []string{“a”, ”b”, ”c”} ⌘ Read more

⤋ Read More

I fell with a stupid e-scooter and have been waiting at the hospital now for more than three hours. Not worth it. I almost broke my left elbow and right hand wrist. Got lucky because I was wearing a helmet. Not going to try that again. The wheels slipped on the wet zebra crossing paint in a turn.

⤋ Read More

Go map 讀寫性能優化 - 分片 map
基本在所有的編程語言中,都有 map 這種數據結構,Go 語言也不例外。我們知道 Go 是一門對併發支持得比較好的語言,但是 map 並不支持併發讀寫。比如,下面這種寫法是錯誤的:var m = make(map[int]int)var wg sync.WaitGroupwg.Add(2)// 啓動兩個協程序同時寫入 mapgo func() {    for i := 0; i < 100; i ⌘ Read more

⤋ Read More

Go IsNil– 和 IsValid– 的精妙運用
*概述在 Go 語言中,反射是一項強大的特性,而 IsNil() 和 IsValid() 函數則是 reflect 包中兩個重要的函數,用於處理接口、通道、函數等各種類型。本文將深入介紹這兩個函數,解釋它們的用途、實際應用場景,並通過通俗易懂的例子更好地理解這兩個函數的神奇之處。一、IsNil() 函數判斷指針和接口是否爲 nilpackage mainimport ( “fmt” “refl ⌘ Read more

⤋ Read More

go-elasticsearch 使用指南
本文是 go-elasticsearch 庫的使用指南。go-elasticsearch 是 Elasticsearch 官方提供的 Go 客戶端。每個 Elasticsearch 版本會有一個對應的 go-elasticsearch 版本。官方會維護最近的兩個主要版本。go-elasticsearch 提供了 Low-level 和 Fully-typed 兩套 API。本文以 Fully-ty ⌘ Read more

⤋ Read More

Go 反射掌握指南:函數調用篇
*概述Go 語言的反射機制賦予了動態調用函數的能力。本文將介紹如何通過反射調用函數,以及基本函數、帶參函數、帶返回值函數等多種場景。一、獲取函數的反射對象獲取函數的反射對象package mainimport ( “fmt” “reflect”)// 定義一個示例函數func ExampleFunction(name string, age int) { fmt.Printf(“Hello, ⌘ Read more

⤋ Read More

Templ - 一種更好的管理 HTML 模板的 Go 語言框架
背景介紹在開發 Web 應用時我們常常需要寫 HTML 代碼以構建用戶界面。然而,創建和管理 HTML 模板可能會變得非常複雜和困難,特別是在大型項目中。要優化並整理這些模板代碼,我們需要一個強大且易於使用的模板語言。這種需求在使用 Go 語言開發 Web 應用時尤爲突出,因爲 Go 語言在內建支持的模板語言方面還不夠友好,尚有待提升。今天要給大家推薦一個 GitHub 開源項目 a-h/temp ⌘ Read more

⤋ Read More

Go 反射修改變量值全攻略
*概述Go 語言的反射機制爲提供了一種強大的方式來檢查和修改變量的值。本文將介紹如何通過反射修改變量的值,包括基本類型、結構體、切片等各種場景。一、反射對象獲取變量的反射對象package mainimport ( “fmt” “reflect”)func main() { // 定義一個整數變量 num := 42 // 使用reflect.ValueOf獲取反射對象 value : ⌘ Read more

⤋ Read More

Go 深度解析 ValueOf– 與 Value 的神奇魔法
*概述Go 語言中,反射機制提供了強大的工具,其中的 reflect 包中的 ValueOf() 和 Value 函數是反射的基礎。本文將介紹這兩個函數的作用機制,探討其在接口值轉換、參數傳遞規律等方面的實際運用。一、ValueOf 函數作用機制package mainimport ( “fmt” “reflect”)func main() { // 使用 ValueOf 獲取接口值的反射對 ⌘ Read more

⤋ Read More

Go 語言控制協程 -goroutine- 的併發數量,有哪些好的解決方法
在使用協程併發處理某些任務時, 其併發數量往往因爲各種因素的限制不能無限的增大. 例如網絡請求、數據庫查詢等等。從運行效率角度考慮,在相關服務可以負載的前提下(限制最大併發數),儘可能高的併發。在 Go 語言中,可以使用一些方法來控制協程(goroutine)的併發數量,以防止併發過多導致資源耗盡或性能下降。以下是一些常見的方法:1. 使用信號量(Semaphore):可以使用 Go 語言中的 c ⌘ Read more

⤋ Read More
In-reply-to » Testing out Jenny. If this works I will setup Jenny with mutt.

@movq@www.uninformativ.de
Yes I have threading on. I wanted to put new posts at the top with set sort_aux = reverse-last-date-sent but that that makes the threads do the newest first not bellow the reply. So all replies are in a top newest order. But I can just use sort date_sent and then go to the end to go to the newest post.

⤋ Read More

Go 的分佈式應用:使用 Raft 算法
大家好!我是 [lincyang]。今天我們要探討的是如何在 Go 語言中使用 Raft 算法來構建分佈式應用。什麼是 Raft 算法?————Raft 算法是一種用於管理分佈式系統中的複製日誌的一致性算法。它的主要目標是簡化分佈式系統的構建和理解。爲什麼使用 Raft?———–Raft 算法相對於其他分佈式一致性算法(如 Paxos)來說,更易於理解和實現,同時也具 ⌘ Read more

⤋ Read More

老外總結的 14 條 Go 接口最佳實踐,有些不一樣
最近幾個月,沒事喜歡看看老外寫的技術文章,發現他們的一些思考維度真的有些不太一樣。當然,他們寫的文章大多數沒有國內的那麼卷。今天這篇文章是關於 Go 語言中接口設計的一些最佳實踐,與 Java 等語言不盡相似,但又帶着 Go 語言的特色,可以對照學習,拓展編程思想層面的認知面。以下是在 Go 中使用接口的一些最佳實踐:1、優先小接口:接口是 Go 中的強大工具,但要保持它們小巧並專注於特定任務。這 ⌘ Read more

⤋ Read More

Go 標籤實踐手冊,結構體標籤應用全攻略
*概述結構體標籤,作爲 Go 語言中獨有的元信息機制,提供了在運行時對結構體字段進行註釋和標記的能力。本文將介紹 Go 語言中結構體標籤的概念、自定義創建和處理、應用場景、標籤信息查詢以及代碼生成場景應用,帶讀者深入瞭解結構體標籤的細節和最佳實踐。一、結構體標籤概念標籤定義和格式解析package mainimport ( “fmt” “reflect”)// 定義一個包含標籤的結構體type ⌘ Read more

⤋ Read More

Go 的事件驅動編程:使用 EventBus 實現
大家好!我是 [lincyang]。今天我們要探討的是 Go 語言中的事件驅動編程,特別是如何使用 EventBus 來實現這一目標。什麼是事件驅動編程?———-事件驅動編程是一種編程範式,其中應用程序的流程由外部事件(如用戶輸入或系統觸發的事件)來控制。這種方法在 GUI 應用、網絡編程和實時系統中尤爲常見。爲什麼選擇 EventBus?—————EventBus ⌘ Read more

⤋ Read More

When is most of humanity going to realise that we’re all stuck on the same space vessel, hurling to the vast and empty space together, and have limited resources that cannot be replenished from some other planet.

⤋ Read More

Go 項目的簡單部署
概述–在上一篇筆記記錄了 Gin 實現簡單的註冊登錄和狀態管理。這一篇筆記來分享一下如何將上面的項目打包鏡像和部署,筆記分成三部分,分別是 Web 後端項目 Docker 鏡像的構建、使用 Docker 運行、使用 Docker Compose 和 k8s 部署容器。使用 Ingress 路由規則和 Web 前端的部署運行在下一篇筆記中記錄。構建 Docker 鏡像————概述構 ⌘ Read more

⤋ Read More

Go 反射機制揭祕:輕鬆獲取結構體成員類型
*概述Go 語言的反射機制提供了強大的工具,使得在運行時獲取結構體的成員類型成爲可能。本文將介紹如何用反射實現結構體成員類型的獲取,包括結構字段的遍歷、按名稱訪問結構成員、處理匿名字段及內嵌類型,以及解析字段標籤元信息的方法。一、結構字段遍歷值對象及類型對象package mainimport ( “fmt” “reflect”)type User struct { ID int Na ⌘ Read more

⤋ Read More

介紹 Agency: 使 AI 與 Go 語言無縫對接
在當今應用開發領域,類似 OpenAI API 等生成式 AI 技術的蓬勃發展正在徹底改變着應用開發的格局。Python 和 JavaScript 等語言已經擁有豐富的資源來支持這些技術,其中 LangChain 就是一個顯著的例子。然而,Go 語言開發者面臨的選擇卻相對有限。LangChainGo,作爲 LangChain 的 Go 語言版本,一直在努力與 Go 的編程理念保持一致,而 Lang ⌘ Read more

⤋ Read More

Go 反射深度揭祕之 reflect-Elem– 方法解析
*概述Go 語言中的反射機制提供了強大的工具,能夠在運行時獲取和操作變量的信息。其中,reflect.Elem() 方法是一個重要的利器,通過它能夠獲取指針指向的元素類型,提供更多的靈活性。本文將解析 reflect.Elem() 的方法簽名、作用機制,並通過豐富的示例演示其調用方式。一、Elem() 方法解析方法簽名func (v Value) Elem() ValueElem() 方法是 re ⌘ Read more

⤋ Read More

2023 年 Go 併發庫的變化
2023 年來, Go 的併發庫又有了一些變化,這篇文章是對這些變化的綜述。小細節的變化,比如 typo、文檔變化等無關大局的變化就不介紹了。sync.Once———Go 1.21.0 中增加了和 Once 相關的三個函數,便於 Once 的使用。func OnceFunc(f func()) func()func OnceValueT any T) func() Tfunc Once ⌘ Read more

⤋ Read More

Go 反射之 reflect-TypeOf– 和 reflect-Type
*概述在 Go 語言中,反射是一項強大的特性,它允許程序在運行時動態獲取變量的類型信息,進行類型操作與轉換,甚至能夠對結構體和函數進行反射操作。本文將探討 reflect.TypeOf() 和 reflect.Type,揭示 Go 語言 中反射的奧祕。一、reflect.TypeOf() 函數返回反射 Type 對象reflect.TypeOf() 函數用於獲取一個變量的反射 Type 對象。它接 ⌘ Read more

⤋ Read More
In-reply-to » The original twt is unavailable. It may have been edited or deleted, or is from an unknown or muted feed.

@movq@www.uninformativ.de Dang. Really going overboard with this!

@prologic@twtxt.net I didn’t have to do much backtracking. I parsed into an AST-ish table and then just needed some lookups.

The part 2 was pretty easy to work into the AST after.

https://git.sour.is/xuu/advent-of-code-2023/commit/c894853cbd08d5e5733dfa14f22b249d0fb7b06c

⤋ Read More

Go 工具鏈詳解之升級版本不用愁的 go tool fix
go tool fix 作用go tool fix 是 Go 工具鏈中的一個命令,作用是把指定 Go 程序代碼包中的的所有舊版本代碼修正爲新版本的代碼(這裏所說的版本是 Golang 的版本)。升級 Go 版本之後,使用這個命令可以自動對程序進行必要的更改。Golang 的演進過程中,對一些函數和標準庫進行改進是難免的,改進過程中有可能會出現兼容問題,一旦出現了兼容問題,從舊版本升級到新版本的代價 ⌘ Read more

⤋ Read More

Gorm 中的遷移指南
在應用程序開發的不斷變化的景觀中,數據庫模式更改是不可避免的。GORM,強大的 Go 對象關係映射庫,通過遷移提供了一種無縫的解決方案來管理這些變化。本文將作爲您全面的指南,幫助您掌握使用 GORM 進行數據庫遷移和模式管理。我們將深入探討自動遷移、創建和應用遷移,以及在您的 Go 項目中優雅處理不斷髮展的模式需求的策略。GORM 中的自動遷移———–自動遷移是一個重要的改進,確保您 ⌘ Read more

⤋ Read More

go-mongox:簡單高效,讓文檔操作和 bson 數據構造更流暢
大家好,我是 陳明勇,一個熱愛技術,喜歡鑽研技術的程序員。前言在 Go 語言中使用 MongoDB 官方框架進行集合操作時,深深感到構建 bson 數據是一件非常繁瑣的工作。字段、逗號,括號等符號的排列,讓我感覺彷彿是在進行一場拼圖遊戲。因此我在想,有沒有一個能讓我絲滑,高效操作 MongoDB 的第三方框架呢,遺憾的是,並沒有找到符合我預期的框架,索性我就自己動手開發了一個,這就是 go-mon ⌘ Read more

⤋ Read More

Go 反射終極指南:從基礎到高級全方位解析
在本文中,我們將全面深入地探討 Go 語言的反射機制。從反射的基礎概念、爲什麼需要反射,到如何在 Go 中實現反射,以及在高級編程場景如泛型編程和插件架構中的應用,本文爲您提供一站式的學習指南。一、簡介反射是一種讓程序在運行時自省(introspect)和修改自身結構和行爲的機制。雖然這聽起來有點像 “自我觀察”,但實際上,反射在許多現代編程語言中都是一個非常強大和重要的工具。Go 語言也不例 ⌘ Read more

⤋ Read More

17 個開源的 Go 語言博客和 CMS 解決方案
Go 語言,也稱爲 Golang,是一種爲構建高效、可靠和可擴展軟件而設計的開源編程語言。它於 2007 年在 Google 開發,現在廣泛用於開發 Web 應用程序、網絡工具和系統軟件。爲什麼使用基於 Go 的 CMS 解決方案?———————-這些優勢使 Go 成爲開發可擴展、高性能應用程序的熱門選擇。在使用 Go 構建基於 Web 的解決方案時,其速度是其中一個主 ⌘ Read more

⤋ Read More

TCP 基礎詳解:Telnet 迴音服務器搭建
*概述Telnet 迴音服務器是一個簡單而實用的網絡應用,通過 Telnet 協議連接,用戶輸入什麼,服務器就回顯什麼。本文將介紹如何使用 Go 語言創建一個 Telnet 迴音服務器,通過完整的示例代碼和詳細註釋,便於理解 TCP 服務器的基本結構和實現。1. TCP 服務器基礎TCP 協議簡介package mainimport (“fmt”“net”)func main() { liste ⌘ Read more

⤋ Read More

無縫集成 GORM 與 Go Web 框架
探索 GORM 與流行的 Go Web 框架之間的和諧集成,以實現高效的數據管理—————————————-高效的數據管理是每個成功的 Web 應用程序的基礎。GORM,多才多藝的 Go 對象關係映射庫,與流行的 Go Web 框架非常搭配,提供了無縫集成,簡化了數據交互。本指南將帶您探索 GORM 與諸如 Gin、Echo 和 Beego 等 ⌘ Read more

⤋ Read More

Go 語言中的反射機制
在 Go 語言的衆多高級特性中,反射(Reflection)是一個強大且複雜的概念。它使得程序能夠在運行時檢查、修改其自身結構。反射在處理接口和類型斷言、開發通用功能或者設計框架時尤爲重要。本文將深入探索 Go 語言中的反射機制,通過具體的示例展示如何使用 reflect 包,讓你能夠在 Go 項目中有效地利用這一強大的工具。Go 反射基礎——-反射的概念反射是指計算機程序在運行時(run ⌘ Read more

⤋ Read More