Network Programming with Go

Code Secure and Reliable Network Services from Scratch

By Adam Woodbeck | Publisher: No Starch Press

About the book

Network Programming with Go teaches you how to write clean, secure network software with the programming language designed to make it seem easy.

Build simple, reliable, network software
 
Combining the best parts of many other programming languages, Go is fast, scalable, and designed for high-performance networking and multiprocessing. In other words, it’s perfect for network programming.
 
Network Programming with Go will help you leverage Go to write secure, readable, production-ready network code. In the early chapters, you’ll learn the basics of networking and traffic routing. Then you’ll put that knowledge to use as the book guides you through writing programs that communicate using TCP, UDP, and Unix sockets to ensure reliable data transmission.
 
As you progress, you’ll explore higher-level network protocols like HTTP and HTTP/2 and build applications that securely interact with servers, clients, and APIs over a network using TLS.
 
You'll also learn:

  • Internet Protocol basics, such as the structure of IPv4 and IPv6, multicasting, DNS, and network address translation
  • Methods of ensuring reliability in socket-level communications
  • Ways to use handlers, middleware, and multiplexers to build capable HTTP applications with minimal code
  • Tools for incorporating authentication and encryption into your applications using TLS
  • Methods to serialize data for storage or transmission in Go-friendly formats like JSON, Gob, XML, and protocol buffers
  • Ways of instrumenting your code to provide metrics about requests, errors, and more
  • Approaches for setting up your application to run in the cloud (and reasons why you might want to)
  •  
    Network Programming with Go is all you’ll need to take advantage of Go’s built-in concurrency, rapid compiling, and rich standard library.
     
    Covers Go 1.15 (Backward compatible with Go 1.12 and higher)

    Editions of Network Programming with Go

    Paperback
    ISBN 9781718500884
    EBook
    ISBN 9781718500891

    Read an Excerpt

    Network Programming with Go teaches you how to write clean, secure network software with the programming language designed to make it seem easy.

    Build simple, reliable, network software
     
    Combining the best parts of many other programming languages, Go is fast, scalable, and designed for high-performance networking and multiprocessing. In other words, it’s perfect for network programming.
     
    Network Programming with Go will help you leverage Go to write secure, readable, production-ready network code. In the early chapters, you’ll learn the basics of networking and traffic routing. Then you’ll put that knowledge to use as the book guides you through writing programs that communicate using TCP, UDP, and Unix sockets to ensure reliable data transmission.
     
    As you progress, you’ll explore higher-level network protocols like HTTP and HTTP/2 and build applications that securely interact with servers, clients, and APIs over a network using TLS.
     
    You'll also learn:

  • Internet Protocol basics, such as the structure of IPv4 and IPv6, multicasting, DNS, and network address translation
  • Methods of ensuring reliability in socket-level communications
  • Ways to use handlers, middleware, and multiplexers to build capable HTTP applications with minimal code
  • Tools for incorporating authentication and encryption into your applications using TLS
  • Methods to serialize data for storage or transmission in Go-friendly formats like JSON, Gob, XML, and protocol buffers
  • Ways of instrumenting your code to provide metrics about requests, errors, and more
  • Approaches for setting up your application to run in the cloud (and reasons why you might want to)
  •  
    Network Programming with Go is all you’ll need to take advantage of Go’s built-in concurrency, rapid compiling, and rich standard library.
     
    Covers Go 1.15 (Backward compatible with Go 1.12 and higher)

    Frequently Asked Questions

    What is Network Programming with Go about?

    Network Programming with Go teaches you how to write clean, secure network software with the programming language designed to make it seem easy.

    Build simple, reliable, network software
     
    Combining the best parts of many other programming languages, Go is fast, scalable, and designed for high-performance networking and multiprocessing. In other words, it’s perfect for network programming.
     
    Network Programming with Go will help you leverage Go to write secure, readable, production-ready network code. In the early chapters, you’ll learn the basics of networking and traffic routing. Then you’ll put that knowledge to use as the book guides you through writing programs that communicate using TCP, UDP, and Unix sockets to ensure reliable data transmission.
     
    As you progress, you’ll explore higher-level network protocols like HTTP and HTTP/2 and build applications that securely interact with servers, clients, and APIs over a network using TLS.
     
    You'll also learn:

  • Internet Protocol basics, such as the structure of IPv4 and IPv6, multicasting, DNS, and network address translation
  • Methods of ensuring reliability in socket-level communications
  • Ways to use handlers, middleware, and multiplexers to build capable HTTP applications with minimal code
  • Tools for incorporating authentication and encryption into your applications using TLS
  • Methods to serialize data for storage or transmission in Go-friendly formats like JSON, Gob, XML, and protocol buffers
  • Ways of instrumenting your code to provide metrics about requests, errors, and more
  • Approaches for setting up your application to run in the cloud (and reasons why you might want to)
  •  
    Network Programming with Go is all you’ll need to take advantage of Go’s built-in concurrency, rapid compiling, and rich standard library.
     
    Covers Go 1.15 (Backward compatible with Go 1.12 and higher)

    What core themes, tropes, or subjects are explored in Network Programming with Go?

    Computing and Information Technology > Computer programming / software engineering

    Where can I read a sample of Network Programming with Go?

    You can read an official preview of the few pages here https://www.book2look.com/book/9781718500884

    Who is/are the Author/s of the book Network Programming with Go?

    Adam Woodbeck

    Who is the Publisher of the book Network Programming with Go?

    No Starch Press

    What are the ISBN numbers for the physical and digital editions?

    Network Programming with Go is available as paperback(ISBN 9781718500884) and ebook(ISBN 9781718500891)

    Where can I buy Network Programming with Go online or support local independent bookshops?

    You can buy Network Programming with Go from below

    Where can I buy Network Programming with Go?