首頁 搜尋 我的知識庫
最速網頁開發:用Go Web一手建立高能效網站系統(第二版)

最速網頁開發:用Go Web一手建立高能效網站系統(第二版)

作者: 廖顯東
出版社: 深智數位
出版日期: 2023/03/20
ISBN-13: 9786267273241
書店 1






內容描述


☆ ★☆ ★☆ Web開發新選擇!☆ ★☆ ★☆
和C/C++一樣強大簡潔,比Node.js好學易懂,比Php高效快速,開發Web程式一起Go!

  市面上這麼多程式語言,從大家一定要學的Java/C/C++/C#,一直到非常流行的Python,Javascript等。想學Web開發,雖然什麼語言都行,但現今Web的架構十分複雜,再加上企業對程式設計師「全端」的能力、「快速開發」能力、「DevOps」能力的要求甚高,一個Web程式語言要面面俱到的確有難度。

  過去一直以為Go是專注在區塊鍊開發的程式語言,在開發Web時並不會列入考慮,大部分的初學者想到的就是Php,稍微有經驗的開發者會考慮Node.js或是Rails這種較大型的開發框架,但曾幾何時,Go以及其Web框架Beego/Gin已經慢慢成為主流了。

  本書是市面上難得將Go從頭到尾說明完整清楚的參考書,如果你已經有程式開發經驗,這個類似精簡快速的C語言,會讓你重新享受C高速開發的樂趣,而成品也禁得起大型企業網站的考驗。而最流行的Docker佈署,本書也有一章完整的介紹,從了解Go語言本身、Web框架、ORM資料庫連結(包括了NoSQL)、最後到Docker佈署,一氣呵成,Web開發就靠他了。

  ◎ 適合讀者
  本書既適合Go 語言初學者,也適合想進一步提升的中進階Go 語言開發者,推薦給以下讀者群:
  ● 初學程式設計的自學者
  ● Go 語言初學者
  ● Go 語言中進階開發人員
  ● Web 開發工程師
  ● 程式設計同好
  ● 大專院校的老師和學生
  ● 教育訓練機構的老師和學員
  ● Web 前端開發人員
  ● 測試工程師
  ● DevOps 運行維護人員
  ● Web 中進階開發人員

本書特色

  (1)第一線技術,突出實戰。
  本書中穿插了大量的實戰內容,且所有程式採用目前的Go 最新版本編寫。

  (2)精雕細琢,閱讀性強。
  全書的語言經過多次打磨,力求精確。同時注重閱讀體驗,讓沒有任何基礎的讀者也可以很輕鬆地讀懂本書。

  (3)零基礎入門,循序漸進,讓讀者快速從菜鳥向實戰高手邁進。
  本書以Go 入門級程式設計師為主要物件,初級、中級、進階程式設計師都可以從書中學到知識。先介紹Go 的基礎,然後介紹Go Web 的基礎,介紹Go Web 的進階應用,介紹B2C 電子商務系統實戰開發,最後介紹應用的Docker 實戰部署,真正幫助讀者從基礎入門向開發高手邁進。

  (4)極客思維,極致效率。
  本書以極客思維深入Go 語言底層進行探究,幫助讀者了解底層的原理。全書言簡意賅,以幫助讀者提升開發效率為導向,同時盡可能幫助讀者縮短閱讀本書的時間。

  (5)由易到難,重點和困難標注並重點解析。
  本書編排由易到難,內容基本覆蓋Go Web 的主流前端技術。同時對重點和困難進行重點講解,對易錯點和注意點進行了提示說明,幫助讀者克服學習過程中的困難。

  (6)突出實戰,快速突擊。
  本書的實例程式絕大部分都是來自最新的企業實戰項目。購買本書的讀者可以透過本出版社官網下載書中的原始程式碼,下載後即可運行,透過實踐來加深了解。

  (7)實戰方案,可直接延伸開發進行實戰部署。
  本書以實戰為主,所有的範例程式拿來即可運行。特別是第9 章,購買本書的讀者可以直接獲得B2C 電子商務系統的全部原始程式碼。可以直接延伸開發,用於自己的項目。讀者購買本書不僅可以學習本書的各種知識,也相當於購買一個最新版的Go 語言電子商務系統解決方案及專案原始程式。


目錄大綱


第1 篇Go 語言入門

01 Go 基礎入門
1.1 安裝Go
1.2 【實戰】開啟Go 的第一個程式
1.3 Go 基礎語法與使用
1.4 Go 資料類型
1.5 函數
1.6 Go 物件導向程式設計
1.7 介面
1.8 反射
1.9 goroutine 簡介
1.10 單元測試
1.11 Go 編譯與工具
1.12 小結

第2 篇Go Web 基礎入門

02 Go Web 開發基礎
2.1 【實戰】開啟Go Web 的第1 個程式
2.2 Web 程式執行原理簡介
2.3 【實戰】初探Go 語言的net/HTTP 封包
2.4 使用Go 語言的html/template 套件
2.5 小結

03 接收和處理Go Web請求
3.1 【實戰】創建一個簡單的Go Web 伺服器
3.2 接收請求
3.3 處理請求
3.4 了解session 和cookie
3.5 小結

04 用Go 存取資料庫
4.1 MySQL 的安裝及使用
4.2 Redis 的安裝及使用
4.3 MongoDB 的安裝及使用
4.4 Go 的常見ORM 函數庫
4.5 小結

第3 篇Go Web 進階應用

05 Go 進階網路程式設計
5.1 Go Socket 程式設計
5.2 Go RPC 程式設計
5.3 微服務
5.4 小結

06 Go 檔案處理
6.1 操作目錄與檔案
6.2 處理XML 檔案
6.3 處理JSON 檔案
6.4 處理正規表示法
6.5 【實戰】從資料庫中匯出一個CSV 檔案
6.6 處理Go 日誌記錄
6.7 小結

07 Go 併發程式設計
7.1 併發與平行
7.2 處理程序、執行緒和程式碼協同
7.3 Go 併發模型簡介
7.4 用goroutine 和通道實現併發
7.5 用sync 套件實現併發
7.6 用Go 開發併發的Web 應用
7.7 小結

08 Go RESTful API 介面開發
8.1 什麼是RESTful API
8.2 Go 流行Web 框架的使用
8.3 【實戰】用Gin 框架開發RESTful API
8.4 【實戰】用Go 開發OAuth 2.0 介面
8.5 小結

第4 篇Go Web 專案實戰

09 【實戰】開發一個B2C電子商務系統
9.1 需求分析
9.2 系統設計
9.3 設計軟體架構
9.4 設計資料庫與資料表
9.5 架設系統基礎架構
9.6 前台模組開發
9.7 後台模組開發
9.8 小結

10 用Docker 部署Go Web 應用
10.1 了解Docker 元件及原理
10.2 安裝Docker
10.3 【實戰】用Docker 執行一個Go Web 應用程式
10.4 【實戰】透過Docker-Compose 快速部署
10.5 【 實戰】將 Docker 容器推送至伺服器
10.6 小結


作者介紹


作者簡介

廖顯東

  高級軟體架構師,全棧開發者,技術極客,Gopher,開源愛好者。

  具有多年軟體發展與團隊管理經驗,精通Java、JavaScript、C、C++、C#、Python、PHP等開發語言。對Go、Rust等開發語言有深入實踐和研究。對大型電子商務系統開發、高併發架構、分散式架構、微服務、大資料、人工智慧演算法等領域有深入實踐和研究。






相關書籍

依賴注入:原理、實作與設計模式

影視後製全攻略:Premiere Pro/After Effects (適用CC)

「新」SEO 超入門!打敗 AI、征服搜尋引擎,洞悉使用者需求的必備指南

樂高SPIKE機器人創意專題實作-使用LEGO Education SPIKE App與擴充組 - 最新版 - 附MOSME行動學習一點通:診斷.評量.影音.加值