Hands-On Software Engineering with Golang
暫譯: 實戰軟體工程與 Golang

Anagnostopoulos, Achilleas

  • 出版商: Packt Publishing
  • 出版日期: 2020-01-24
  • 售價: $2,200
  • 貴賓價: 9.5$2,090
  • 語言: 英文
  • 頁數: 640
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1838554491
  • ISBN-13: 9781838554491
  • 相關分類: 軟體工程
  • 海外代購書籍(需單獨結帳)

相關主題

商品描述

Over the last few years, Go has become one of the favorite languages for building scalable and distributed systems. Its opinionated design and built-in concurrency features make it easy for engineers to author code that efficiently utilizes all available CPU cores.

This Golang book distills industry best practices for writing lean Go code that is easy to test and maintain, and helps you to explore its practical implementation by creating a multi-tier application called Links ‘R’ Us from scratch. You’ll be guided through all the steps involved in designing, implementing, testing, deploying, and scaling an application. Starting with a monolithic architecture, you’ll iteratively transform the project into a service-oriented architecture (SOA) that supports the efficient out-of-core processing of large link graphs. You’ll learn about various cutting-edge and advanced software engineering techniques such as building extensible data processing pipelines, designing APIs using gRPC, and running distributed graph processing algorithms at scale. Finally, you’ll learn how to compile and package your Go services using Docker and automate their deployment to a Kubernetes cluster.

By the end of this book, you’ll know how to think like a professional software developer or engineer and write lean and efficient Go code.

  • Understand different stages of the software development life cycle and the role of a software engineer
  • Create APIs using gRPC and leverage the middleware offered by the gRPC ecosystem
  • Discover various approaches to managing package dependencies for your projects
  • Build an end-to-end project from scratch and explore different strategies for scaling it
  • Develop a graph processing system and extend it to run in a distributed manner
  • Deploy Go services on Kubernetes and monitor their health using Prometheus
  • Apply best practices to produce lean, testable, and maintainable Go code to avoid accumulating technical debt
  • Explore Go’s built-in support for concurrency and message passing to build high-performance applications
  • Scale your Go programs across machines and manage their life cycle using Kubernetes

商品描述(中文翻譯)

在過去幾年中,Go 已成為構建可擴展和分佈式系統的熱門語言之一。其有主見的設計和內建的併發特性使工程師能夠輕鬆編寫有效利用所有可用 CPU 核心的代碼。

這本 Golang 書籍提煉了行業最佳實踐,幫助您編寫易於測試和維護的精簡 Go 代碼,並通過從零開始創建一個名為 Links 'R' Us 的多層應用程序來探索其實際實現。您將被指導完成設計、實現、測試、部署和擴展應用程序的所有步驟。從單體架構開始,您將逐步將項目轉變為支持大規模鏈接圖的高效外部處理的服務導向架構 (SOA)。您將學習各種前沿和高級軟體工程技術,例如構建可擴展的數據處理管道、使用 gRPC 設計 API,以及在大規模下運行分佈式圖處理算法。最後,您將學習如何使用 Docker 編譯和打包您的 Go 服務,並自動化其部署到 Kubernetes 集群。

在本書結束時,您將知道如何像專業軟體開發人員或工程師一樣思考,並編寫精簡且高效的 Go 代碼。

- 了解軟體開發生命週期的不同階段及軟體工程師的角色
- 使用 gRPC 創建 API,並利用 gRPC 生態系統提供的中介軟體
- 探索管理項目包依賴的各種方法
- 從零開始構建一個端到端的項目,並探索不同的擴展策略
- 開發一個圖處理系統並擴展其以分佈式方式運行
- 在 Kubernetes 上部署 Go 服務,並使用 Prometheus 監控其健康狀態
- 應用最佳實踐以產生精簡、可測試和可維護的 Go 代碼,以避免累積技術負債
- 探索 Go 的內建併發和消息傳遞支持,以構建高性能應用程序
- 在多台機器上擴展您的 Go 程序,並使用 Kubernetes 管理其生命週期