Book Image

Hands-On GUI Application Development in Go

By : Andrew Williams
Book Image

Hands-On GUI Application Development in Go

By: Andrew Williams

Overview of this book

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.
Table of Contents (25 chapters)
Title Page
Copyright and Credits
About Packt
Contributors
Preface
Comparison of GUI Toolkits
Index

Contributors

About the author

Andrew Williams has over 15 years of commercial software development experience across a variety of programming languages, including Java, C, Objective-C, and Go. He has been a core developer in large open source projects such as Enlightenment, EFL, and Maven, as well as maintaining various community websites and tutorials. Since 2007, Andrew has been working as CTO with many early-stage and growing software start-ups. After 6 years spent expanding an award-winning mobile app development company, he is now applying the lessons he has learned to cross-platform desktop applications using Go. Andrew is passionate about building tools and services that make software development simpler and improve productivity, as well as making it easier to become a great software engineer.

I extend my eternal thanks to my wife, Michelle, for believing in me and encouraging me to write this book. My thanks also go to my friends and family for always providing support and inspiration. Thanks to my great reviewer, Al, for the care and time he devoted to polishing this book. Thanks also to the tech community in Edinburgh for championing learning and innovation. Lastly, this book would not have been possible without the supportive team at Packt.

 

About the reviewer

Alastair Roy Poole is a programmer and writer from Aberdeen, Scotland. He has a passion for writing low-level implementations of popular technologies, as well as creating simple solutions to complicated problems.

He has been working with free and open source software since the mid-1990s, and many of his projects have been distributed worldwide as an author of both applications and libraries. He specializes in C, Perl, and, increasingly, in Go (among other technologies).

Alastair has a strong aversion to reliance on cloud-based technologies and severe reservations about the corporate-led direction of most open source technologies today. He has great admiration for projects with strong leadership, especially the OpenBSD project.

I would like to thank my family for their continued support throughout my life. Most specifically, I must mention my partner-in-crime, Anastasija, for pushing me and keeping me motivated in my work and making me happy too.

 

 

 

 

Packt is searching for authors like you

If you're interested in becoming an author for Packt, please visit authors.packtpub.com and apply today. We have worked with thousands of developers and tech professionals, just like you, to help them share their insight with the global tech community. You can make a general application, apply for a specific hot topic that we are recruiting an author for, or submit your own idea.