Hands-On GUI Application Development in Go : Build Responsive, Cross-Platform, Graphical Applications with the Go Programming Language.

Hands-On GUI Application Development in Go will help you to extend your knowledge of Golang and become a confident graphical application developer with Go. The book explores many graphical libraries available for Go to show how GUIs can be created for applications. This book is a guide to the most p...

Full description

Saved in:
Bibliographic Details
Main Author: Williams, Andrew
Format: Electronic eBook
Language:English
Published: Birmingham : Packt Publishing Ltd, 2019.
Subjects:
Online Access:CONNECT
Table of Contents:
  • Cover; Title Page; Copyright and Credits; About Packt; Contributors; Table of Contents; Preface; Section 1: Graphical User Interface Development; Chapter 1: The Benefits of Native Graphical Applications; Return of the graphical application; Personal computers; From desktop to internet; Smart phones, apps, and customer retention; Native performance; Integrated user experience; Reliability and offline functionality; Maintainability and testing; Summary; Chapter 2: Graphical User Interface Challenges; Standard look and feel or app theme; GUIs and visual hierarchy; Multiple documents
  • Accessory windowsVisual hierarchy; Mobile standards; Concurrency and multi-threading; Switching threads; Avoiding complexity; Web services and cloud integration; Communications; Data parsing; Standard components; Developing for multiple platforms; Cross-platform APIs; Icons and design; Testing; Packaging and distribution; Summary; Chapter 3: Go to the Rescue!; Introduction; Cross-platform for any application; Cross-compiling; Standard library; Concurrency in language design; Goroutines; Channels; The sync package; Web services included as standard; Choosing your look and feel; Summary
  • Section 2: Toolkits Using Existing WidgetsChapter 4: Walk
  • Building Graphical Windows Applications; Background and aims; Get started with walk; Setup; Code; Build; Run; Benefits of a declarative API; Compared with the native API; Using both APIs for flexibility; Building a user interface; Style; Layout; Toolbar and menu; Communicating with the GUI; View model; Detail view; List view; Background processing; Walk in a cross-platform application; Summary; Chapter 5: andlabs UI
  • Cross-platform Native UIs; Background and history; Getting started with andlabs UI; Prerequisites; Microsoft windows
  • MacOSLinux; Setup; Rebuilding the UI library (workaround); Code; Build; Run; Generic API for multiple platforms; Controls; Box; Containers; Widgets; Menu; Area and drawing; Building a user interface; Style; Layout; Main email window; Email compose dialog; Toolbar and menu; Communicating with the GUI; Background processing; Example; Challenges with multiple native GUIs; Consistent style; Brand styles; User experience; Testing; Cross-compilation; Building for Linux on macOS or windows; macOS; Windows; Building for windows on Linux or macOS; Building for macOS on Linux or Windows
  • A better solutionSummary; Chapter 6: Go-GTK
  • Multiple Platforms with GTK; GTK+ background; Getting started with Go-GTK; Prerequisites; Installing GTK+; macOS; Windows; Linux; Install Go-GTK; Build; Run; Signals and namespaces; Signals; Passing data; Namespaces; Sample application; Layout; Compose layout; Signaling; Thread handling; Cross compilation; Theming; Summary; Chapter 7: Go-Qt
  • Multiple Platforms with Qt; Qt background; Getting started with therecipe/qt; Prerequisites; Preparing CGo; Installing Qt; macOS; Windows; Linux; License / Qt account; Installing qt (the bindings); Build; Run