Mastering Go – Fourth Edition 版本: Leverage Go’s expertise for advanced utilities, empowering you to develop professional software
Author: Mihalis Tsoukalos (Author)
Publisher finelybook 出版社: Packt Publishing
Edition 版本: 4th ed.
Publication Date 出版日期: 2024-03-29
Language 语言: English
Print Length 页数: 736 pages
ISBN-10: 1805127144
ISBN-13: 9781805127147
Book Description
Dive into the core of Go programming and cover advanced topics like generics, concurrency, web services, and cutting-edge testing techniques in this comprehensive fourth edition.
Key Features
- Fully updated with coverage of web services, TCP/IP, REST APIs, Go Generics, and Fuzzy Testing
- Apply your new knowledge to real-world exercises, building high-performance servers and robust command-line utilities, to deepen your learning
- Gain clarity on what makes Go different, understand its nuances and features for smoother Go development
Book Description
Mastering Go, now in its fourth edition, remains the go-to resource for real-world Go development. This comprehensive guide delves into advanced Go concepts, including RESTful servers, and Go memory management. This edition brings new chapters on Go Generics and fuzzy Testing, and an enriched exploration of efficiency and performance. As you work your way through the chapters, you will gain confidence and a deep understanding of advanced Go topics, including concurrency and the operation of the Garbage Collector, using Go with Docker, writing powerful command-line utilities, working with JavaScript Object Notation (JSON) data, and interacting with databases.
You will be engaged in real-world exercises, build network servers, and develop robust command-line utilities. With in-depth chapters on RESTful services, the WebSocket protocol, and Go internals, you are going to master Go’s nuances, optimization, and observability. You will also elevate your skills in efficiency, performance, and advanced testing.
With the help of Mastering Go, you will become an expert Go programmer by building Go systems and implementing advanced Go techniques in your projects.
What you will learn
- Learn Go data types, error handling, constants, pointers, and array and slice manipulations through practical exercises
- Create generic functions, define data types, explore constraints, and grasp interfaces and reflections
- Grasp advanced concepts like packages, modules, functions, and database interaction
- Create concurrent RESTful servers, and build TCP/IP clients and servers
- Learn testing, profiling, and efficient coding for high-performance applications
- Develop an SQLite package, explore Docker integration, and embrace workspaces
Who this book is for
Mastering Go is written primarily for Go programmers who have some experience with the language and want to become expert practitioners. You will need to know the basics of computer programming before you get started with this book, but beyond that, anyone can sink their teeth into it.
Table of Contents
- A Quick Introduction to Go
- Basic Go Data Types
- Composite Data Types
- Go Generics
- Reflection and Interfaces
- Go Packages and Functions
- Telling a UNIX System What to Do
- Go Concurrency
- Building Web Services
- Working with TCP/IP and WebSocket
- Working with REST APIs
- Code Testing and Profiling
- Fuzz Testing and Observability
- Efficiency and Performance
- Changes in Recent Go Versions
- Appendix
About the Author
Mihalis Tsoukalos holds a BSc in mathematics from the University of Patras and an MSc in IT from University College London, UK. His books Go Systems Programming and Mastering Go have become must-reads for Unix and Linux systems professionals. He enjoys writing technical articles and has written for Sys Admin, Mactech, C/C++ Users Journal, USENIX ;login:, Linux Journal, Linux User and Developer, Linux Format, and Linux Voice. His research interests include time series data mining, time series indexing, machine learning, and databases.
Mihalis is also a photographer