Hands-On GUI Application Development in Go

Williams, Andrew

  • 出版商: Packt Publishing
  • 出版日期: 2019-02-27
  • 售價: $1,500
  • 貴賓價: 9.5$1,425
  • 語言: 英文
  • 頁數: 450
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 1789138418
  • ISBN-13: 9781789138412
  • 相關分類: Go 程式語言使用者介面 UI
  • 立即出貨 (庫存=1)

買這商品的人也買了...

商品描述

Key Features

  • Conceptualize and build state-of-art GUI applications with Golang (Go)
  • Tackle the complexity of varying GUI application sizes with a structured and scalable approach
  • Get hands-on experience of GUI development with Shiny, and labs/ui, Fyne, and Walk

Book Description

Go is often compared to C++ when it comes to low-level programming and implementations that require faster processing, such as Graphical User Interfaces (GUIs). In fact, many claim that Go is superior to C++ in terms of its concurrency and ease of use. Most graphical application toolkits, though, are still written using C or C++, and so they don't enjoy the benefits of using a modern programming language such as Go.

This guide to programming GUIs with Go 1.11 explores the various toolkits available, including UI, Walk, Shiny, and Fyne. The book compares the vision behind each project to help you pick the right approach for your project. Each framework is described in detail, outlining how you can build performant applications that users will love. To aid you further in creating applications using these emerging technologies, you'll be able to easily refer to code samples and screenshots featured in the book. In addition to toolkit-specific discussions, you'll cover more complex topics, such as how to structure growing graphical applications, and how cross-platform applications can integrate with each desktop operating system to create a seamless user experience. By delving into techniques and best practices for organizing and scaling Go-based graphical applications, you'll also glimpse Go's impressive concurrency system. In the concluding chapters, you'll discover how to distribute to the main desktop marketplaces and distribution channels.

By the end of this book, you'll be a confident GUI developer who can use the Go language to boost the performance of your applications.

What you will learn

  • Understand the benefits and complexities of building native graphical applications
  • Gain insights into how Go makes cross-platform graphical application development simple
  • Build platform-native GUI applications using andlabs/ui
  • Develop graphical Windows applications using Walk
  • Create multiplatform GUI applications using Shiny, Nuklear, and Fyne
  • Use Go wrappers for GTK and Qt for GUI application development
  • Streamline your requirements to pick the correct toolkit strategy

Who this book is for

This book is designed for Go developers who are interested in building native graphical applications for desktop computers and beyond. Some knowledge of building applications using Go is useful, but not essential. Experience in developing GUIs is not required as the book explores the benefits and challenges they pose. This book will also be beneficial for GUI application developers who are interested in trying Go.

商品描述(中文翻譯)

主要特點


  • 使用Golang(Go)構思和建立最先進的GUI應用程序

  • 以結構化和可擴展的方法應對不同大小的GUI應用程序的複雜性

  • 通過使用Shiny、labs/ui、Fyne和Walk進行GUI開發的實踐經驗

書籍描述

當涉及到低級編程和需要更快處理速度的實現(例如圖形用戶界面)時,Go通常與C++進行比較。事實上,許多人認為Go在並發性和易用性方面優於C++。然而,大多數圖形應用程序工具包仍然使用C或C++編寫,因此無法享受使用像Go這樣的現代編程語言的好處。

本書探索了使用Go 1.11編程GUI的各種工具包,包括UI、Walk、Shiny和Fyne。本書比較了每個項目背後的理念,以幫助您選擇適合您項目的正確方法。詳細描述了每個框架,概述了如何構建性能優越的應用程序,讓用戶喜愛。為了進一步幫助您使用這些新興技術創建應用程序,您可以輕鬆參考本書中的代碼示例和屏幕截圖。除了特定於工具包的討論外,您還將涵蓋更複雜的主題,例如如何結構化不斷增長的圖形應用程序,以及跨平台應用程序如何與每個桌面操作系統集成,創建無縫的用戶體驗。通過深入研究組織和擴展基於Go的圖形應用程序的技術和最佳實踐,您還將一窺Go令人印象深刻的並發系統。在最後幾章中,您將了解如何在主要桌面市場和發行渠道上分發應用程序。

通過閱讀本書,您將成為一位自信的GUI開發人員,能夠使用Go語言提升應用程序的性能。

你將學到什麼


  • 了解構建本地圖形應用程序的好處和複雜性

  • 深入了解Go如何使跨平台圖形應用程序開發變得簡單

  • 使用andlabs/ui構建平台本地GUI應用程序

  • 使用Walk開發Windows圖形應用程序

  • 使用Shiny、Nuklear和Fyne創建多平台GUI應用程序

  • 使用GTK和Qt的Go封裝進行GUI應用程序開發

  • 簡化需求,選擇正確的工具包策略

本書適合對象

本書適用於對於在桌面電腦及其他平台上構建本地圖形應用程序感興趣的Go開發人員。具備使用Go構建應用程序的知識將會有所幫助,但不是必需的。不需要有開發GUI的經驗,因為本書探討了它們帶來的好處和挑戰。對於有興趣嘗試Go的GUI應用程序開發人員,本書也將有所裨益。

目錄大綱

Table of Contents

  1. The Benefits of Native Graphical Applications
  2. Graphical User Interface Challenges
  3. Go to the Rescue!
  4. Walk - Building Windows Applications
  5. andlabs UI - Cross Platform Native Uis
  6. Go-GTK - Multiple Platforms with GTK
  7. Go-Qt - Multiple Platforms with QT
  8. Shiny - Go's Experimental API
  9. nk - Nuklear for Go
  10. Fyne - Material Design based GUI
  11. Navigation and Multiple Windows
  12. Concurrency, Networking and Cloud Services
  13. Best practices in Go GUI development
  14. Distributing your Application
  15. Appendix

目錄大綱(中文翻譯)

目錄

1. 本地圖形應用的好處
2. 圖形用戶界面的挑戰
3. Go 的拯救!
4. Walk - 建立 Windows 應用程式
5. andlabs UI - 跨平台本地 UI
6. Go-GTK - 使用 GTK 的多平台支援
7. Go-Qt - 使用 QT 的多平台支援
8. Shiny - Go 的實驗性 API
9. nk - 用於 Go 的 Nuklear
10. Fyne - 基於 Material Design 的 GUI
11. 導航和多視窗
12. 並發、網絡和雲服務
13. Go GUI 開發的最佳實踐
14. 分發您的應用程式
15. 附錄