深度探索 Go語言:物件模型與 runtime 的原理特性及應用
封幼林 編著
- 出版商: 深智
- 出版日期: 2023-07-20
- 定價: $880
- 售價: 7.9 折 $695
- 語言: 繁體中文
- 頁數: 528
- 裝訂: 平裝
- ISBN: 626727358X
- ISBN-13: 9786267273586
-
相關分類:
Go 程式語言
- 此書翻譯自: 深度探索 Go語言 — 對象模型與 runtime 的原理、特性及應用
立即出貨 (庫存 < 6)
買這商品的人也買了...
-
無瑕的程式碼-整潔的軟體設計與架構篇 (Clean Architecture: A Craftsman's Guide to Software Structure and Design)$580$452 -
CODE COMPLETE:軟體開發實務指南, 2/e (中文版) (Code Complete: A Practical Handbook of Software Construction, 2/e)$1,280$998 -
領域驅動設計:軟體核心複雜度的解決方法 (Domain-Driven Design: Tackling Complexity in the Heart of Software)$680$530 -
再強一點:用 Go語言完成六個大型專案$780$616 -
深入淺出 Go (Head First Go)$880$695 -
實戰 ROS 機器人作業系統與專案實作, 2/e (ROS Robotics Projects, 2/e)$580$493 -
完全自學!Go 語言 (Golang) 實戰聖經 (The Go Workshop: Learn to write clean, efficient code and build high-performance applications with Go)$880$695 -
你所不知道的必學前端 Debug 技巧:即學即用!讓你 Debug 不求人 (iT邦幫忙鐵人賽系列書)$620$484 -
Go 語言設計與實現$839$797 -
黑帽 Python|給駭客與滲透測試者的 Python 開發指南, 2/e (Black Hat Python : Python Programming for Hackers and Pentesters, 2/e)$450$356 -
$607Go 語言高級開發與實戰 -
Linux 指令大全:工程師活用命令列技巧的常備工具書 (全新升級版) (The Linux Command Line : A Complete Introduction, 2/e)$780$663 -
Linux 網路內功修煉 - 徹底了解底層原理及高性能架構$780$663 -
Go 編程進階實戰:開發命令行應用、HTTP 應用和 gRPC 應用$588$559 -
C# 最強入門邁向頂尖高手之路王者歸來$980$774 -
$658企業級 Go 項目開發實戰 -
最速網頁開發:用 Go Web 一手建立高能效網站系統, 2/e$880$695 -
高速伺服器應用開發 - Linux 上使用 C/C++$880$695 -
Go 語言設計模式$654$621 -
$551Go 專家編程, 2/e -
$607深入理解 Go 語言 -
精通無瑕程式碼:工程師也能斷捨離!消除複雜度、提升效率的 17個關鍵技法 (The Art of Clean Code: Best Practices to Eliminate Complexity and Simplify Your Life)$600$468 -
高效能 Go 程式設計|資料驅動的效能優化 (Efficient Go: Data-Driven Performance Optimization)$780$616 -
流暢的 C|設計原則、實踐和模式 (Fluent C: Principles, Practices, and Patterns)$680$537 -
C 的快速 + Python 的易學 - Go語言全功能開發養成書$880$695
相關主題
商品描述
●x86組合語言基礎知識,通用暫存器、常用指令,記憶體分頁
●指標的實現原理,指標組成、相關操作,以及Go語言的unsafe套件等。
●函數、堆疊框佈局、呼叫約定、變數逃逸、Function Value、閉包、defer和panic
●方法,實現原理,接收者類型、Method Value和組合式繼承
●介面,Go語言動態特性,括裝箱、方法集、動態派發、類型斷言、類型系統和反射
●goroutine實現,GMP模型、goroutine的建立與退出、排程迴圈、先佔式排程、timer、netpoller和監控執行緒
●同步,記憶體亂數、原子指令、自旋鎖、runtime互斥鎖和訊號量、ync.Mutex、hannel
●堆積記憶體管理,heapArena、mspan,mallocgc函數、C的三色抽象、寫入屏障
●堆疊記憶體管理,goroutine堆疊的分配、增長、收縮和釋放
想要有C語言的高速和Python的便利性嗎?Go是最棒的選擇,Go語言在語言層面上支援程式碼協同(goroutine)和通道(channel),這使得併發程式設計變得非常簡單和高效。
在多核CPU時代,高效的併發程式設計已經成為軟體開發的必備技能之一。此外Go語言的語法設計簡單清晰,注重可讀性和簡潔性,使得初學者能夠快速入門。
Go語言的標準函數庫提供了豐富的功能,可以直接使用,避免了一些繁瑣的工作。另外在跨平臺支援方面,Go語言的編譯器可以將程式編譯成機器碼,支援跨平臺編譯,可以在不同的作業系統和硬體平臺上運行,這對於開發跨平臺應用程式非常有幫助。
Go最有名的就是其高性能。Go語言的編譯速度非常快,生成的二進位檔案也很小,運行速度也非常快。
Go語言在一些性能要求較高的應用領域,如Web服務、巨量資料處理、容器等方面表現出色。另外其開發效率高,Go語言在一些方面與Python、Ruby等動態語言相似,但又具有靜態語言的優點。
Go語言的編譯器能夠在編譯期間捕捉一些錯誤,這使得程式的穩固性更高。同時,Go語言的工具鏈非常完善,如go fmt、go vet等工具可以幫助開發者規範程式,提高開發效率。
作者簡介
封幼林
資深軟體工程師,十多年IT從業經驗,曾涉足Win32桌面程式開發、Android行動端開發,以及互聯網服務器端開發等多個領域。喜歡研究底層技術,用自己的方法探究背後的實
現原理。熱愛技術交流與分享,創建了微信公眾號「幼麟實驗室」,致力做一些形象、通透的計算機教程,讓開發者「知其然亦知其所以然」。
目錄大綱
第1章 組合語言基礎
1.1 x86通用暫存器
1.2 常用組合語言指令
1.3 記憶體分頁機制
1.4 組合語言程式碼風格
1.5 本章小結
第2章 指標
2.1 指標組成
2.2 相關操作
2.3 unsafe套件
2.4 本章小結
第3章 函數
3.1 堆疊幀
3.2 逃逸分析
3.3 Function Value
3.4 defer
3.5 panic
3.6 本章小結
第4章 方法
4.1 接收者類型
4.2 Method Value
4.3 組合式繼承
4.4 本章小結
第5章 介面
5.1 空介面
5.2 不可為空介面
5.3 類型斷言
5.4 反射
5.5 本章小結
第6章 goroutine
6.1 處理程序、執行緒與程式碼協同
6.2 IO多工
6.3 巧妙結合
6.4 GMP模型
6.5 GMP主要資料結構
6.6 排程器初始化
6.7 G的建立與退出
6.8 排程迴圈
6.9 先佔式排程
6.10 timer
6.11 netpoller
6.12 監控執行緒
6.13 本章小結
第7章 同步
7.1 Happens Before
7.2 記憶體亂數
7.3 常見的鎖
7.4 Go語言的同步
7.5 本章小結
第8章 堆積
8.1 記憶體分配
8.2 垃圾回收
8.3 本章小結
第9章 堆疊
9.1 堆疊分配
9.2 堆疊增長
9.3 堆疊收縮
9.4 堆疊釋放
9.5 本章小結










