購物比價找書網找車網
FindBook  
 有 6 項符合

深度探索Go語言:物件模型與runtime的原理特性及應用

的圖書
深度探索Go語言:物件模型與runtime的原理特性及應用 深度探索Go語言:物件模型與runtime的原理特性及應用

作者:封幼林 
出版社:深智數位股份有限公司
出版日期:2023-07-24
語言:繁體書   
圖書介紹 - 資料來源:博客來   評分:
圖書名稱:深度探索Go語言:物件模型與runtime的原理特性及應用

內容簡介

  ●    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 本章小結

 
 



  近幾年來,Go 語言作為一門伺服器端開發語言越來越受歡迎,簡潔易學的語法加上天生的高併發支持,還有日益完整的社區,讓很多網際網路公司開始轉向Go 語言。隨著Go 語言生態日趨成熟,各種元件框架如雨後春筍般湧現,市面上相關的書籍也多了起來,但是其中大部分是以應用為主,對於語言特性本身探索一般不太深入。筆者希望能夠有一本講解語言特性及實現原理的書,這也是寫作本書的動機。

  筆者當年剛工作的時候,使用的第一門開發語言是C++。雖然之前在學校用過C 語言和組合語言,但在接觸到C++ 的一些物件導向特性時還是困惑了很久。直到有一天發現了《深度探索C++ 對象模型》,作者Stanley Lippman 當年在貝爾實驗室工作,是世界上第1 個C++ 編譯器——cfront 的實現者,他從一個語言實現者的高度,對一些關鍵特性的實現原理及其背後的思考進行了詳細闡述,使筆者受益匪淺。後來因為工作的原因,筆者開始使用Go 語言,因為有了C/C++ 相關的基礎,所以學習起來更加高效。尤其是當年學習C++ 物件模型,讓筆者意識到語言特性也是透過資料結構和程式實現的,所以就按照自己的方式一邊學習一邊探索。第一次萌生要寫點東西的念頭是在替從PHP 轉Go 語言的妻子講完介面動態派發的實現原理後,用她的話來講就是有種豁然開朗的感覺,並鼓勵筆者把這些東西整理一下。後來我們就在微信公眾號上以幼麟實驗室的名義發佈了一系列視訊和文章,主要分析語言特性的底層實現。在一年多的時間裡,幼麟實驗室受到了廣大網友的好評與支持,清華大學出版社的趙佳霓編輯也是在此期間聯繫了筆者,希望筆者能夠把自己的探索研究整理成書。因為寫作本書的關係,讓筆者能夠更系統地思考,收穫頗多。希望本書能夠幫助各位讀者,解決大家學習Go 語言中遇到的一些困惑。
 

詳細資料

  • ISBN:9786267273586
  • 規格:平裝 / 528頁 / 17 x 23 x 2.59 cm / 普通級 / 單色印刷 / 初版
  • 出版地:台灣
贊助商廣告
 
金石堂 - 今日66折
「搶救歷史!時空守護者」系列(1&2集):【重返古埃及王朝】+【勇闖海盜黃金時代】(套書附贈:日本獨家授權.時空旅行桌遊組)
作者:南房秀久
出版社:小熊出版社
出版日期:2023-07-19
66折: $ 436 
金石堂 - 今日66折
一筆一劃,減壓正念筆記:每天5分鐘,消除煩躁、走出迷惘、重獲自信,找回真實自我的書寫魔法
作者:木蔵Shafe君子、荻野淳也、正念領導力機構
出版社:木馬文化事業有限公司
出版日期:2023-02-01
66折: $ 238 
金石堂 - 今日66折
長崎
作者:艾力克.菲耶
出版社:衛城出版
出版日期:2020-05-06
66折: $ 185 
金石堂 - 今日66折
「半神鈴音丸」系列.暢銷書盒版(1~7集,全七冊,限量加贈「半神搖搖壓克力立牌」)
作者:廣嶋玲子
出版社:小熊出版社
出版日期:2024-02-17
66折: $ 1525 
 
Taaze 讀冊生活 - 暢銷排行榜
我的孩子是霸凌者
作者:しろやぎ秋吾
出版社:台灣角川股份有限公司
出版日期:2024-08-22
$ 252 
博客來 - 暢銷排行榜
神奇柑仔店17:消痛巧克力的危機
出版日期:2024-10-31
$ 284 
博客來 - 暢銷排行榜
百姓貴族 8
出版日期:2024-10-25
$ 162 
金石堂 - 暢銷排行榜
叛逆玩家 01 鏡中私語特別畫卡版
作者:花於景
出版社:魔豆文化有限公司
出版日期:2024-11-20
$ 253 
 
Taaze 讀冊生活 - 新書排行榜
室內設計必學施工圖【暢銷改版】:教你建立邏輯、畫出重點,建立紮實基礎,快速繪製一看就懂可施作的圖面
作者:陳文亮、林麗菁、邱致豪
出版社:麥浩斯
出版日期:2024-11-21
$ 489 
金石堂 - 新書排行榜
把日子慢慢變好
作者:黃山料
出版社:三采文化股份有限公司
出版日期:2024-11-01
$ 332 
Taaze 讀冊生活 - 新書排行榜
記事與隨想
作者:周志文
出版社:聯合文學出版社股份有限公司
出版日期:2024-11-05
$ 294 
Taaze 讀冊生活 - 新書排行榜
哲學直播室:德國公民啟蒙哲學讀本, 與柏拉圖、康德、亞里斯多德等大師對談,解構18大經典哲學思想
作者:Jörg Peters、Bernd Rolf
出版社:創意市集
出版日期:2024-11-14
$ 266 
 

©2024 FindBook.com.tw -  購物比價  找書網  找車網  服務條款  隱私權政策