Structs are the way to create user-defined types in Golang.
One of the most useful data structures in computer science is the hash table. Many hash table implementations exist with varying properties, but in general they offer fast lookups, adds, and deletes. Go provides a built-in map type that implements a hash table.
Go announced Go 1.15 version on 11 Aug 2020. Highlighted updates and features include Substantial improvements to the Go linker, Improved allocation for small objects at high core counts, X.509 CommonName deprecation, GOPROXY supports skipping proxies that return errors, New embedded tzdata package, Several Core Library improvements and more.
As Go promise for maintaining backward compatibility. After upgrading to the latest Go 1.15 version, almost all existing Golang applications or programs continue to compile and run as older Golang version.
#go #golang #go 1.15 #go features #go improvement #go package #go new features
switch conditional statements for code execution based on certain conditions. To execute some code over and over again, we have the for
if-else if-else variants of if/else statement we are familiar with. It is used to check a condition, and execute some code when the condition is
Simple use of
if condition is demonstrated below. Unlike most of the programming languages, Go does not allow to wrap the
condition inside parenthesis
#golang #programming #golang-tutorial #go-tutorial #go
httppackage to create and initialize HTTPS servers in Go.
In the “Simple Hello World Server” lesson, we learned about
net/http package, how to create routes and how
[ServeMux](https://golang.org/pkg/net/http/#ServeMux) works. In the “Running multiple HTTP servers” lesson, we learned about
[Server](https://golang.org/pkg/net/http/#Server) structure and how to run multiple HTTP servers concurrently.
In this lesson, we are going to create an HTTPS server using both Go’s standard server configuration and custom configuration (using
[_Server_](https://golang.org/pkg/net/http/#Server) structure). But before this, we need to know what HTTPS really is?
HTTPS is a big topic of discussion in itself. Hence while writing this lesson, I published an article just on “How HTTPS works?”. I advise you to read this lesson first before continuing this article. In this article, I’ve also described the encryption paradigm and SSL certificates generation process.
If we recall the simplest HTTP server example from previous lessons, we only need
http.``[ListenAndServe](https://golang.org/pkg/net/http/#ListenAndServe) function to start an HTTP server and
http.``[HandleFunc](https://golang.org/pkg/net/http/#HandleFunc) to register a response handler for a particular endpoint.
In the example above, when we run the command
go run server.go , it will start an HTTP server on port
9000. By visiting
http://localhost:9000 URL in a browser, you will be able to see a
Hello World! message on the screen.
As we know, the
nil argument to
ListenAndServe() call invokes Go to use the
[DefaultServeMux](https://golang.org/pkg/net/http/#DefaultServeMux) response multiplexer, which is the default instance of
ServeMux structure provided globally by the Go. The
HandleFunc() call adds a response handler for a specific route on the multiplexer instance.
http.ListenAndServe() call uses the Go’s standard HTTP server configuration, however, in the previous lesson, how we can customize a server using
[Server](https://golang.org/pkg/net/http/#Server) structure type.
To start an HTTPS server, all we need do is to call
ServerAndListenTLS method with some configuration. Just like
ServeAndListen method, this method is available on both the
http package and the
http.``[ServeAndListenTLS](https://golang.org/pkg/net/http/#ListenAndServeTLS) method uses the Go’s standard server implementation, however, both
[Server](https://golang.org/pkg/net/http/#Server) instance and
Server.``[ServeAndListenTLS](https://golang.org/pkg/net/http/#Server.ListenAndServeTLS) method can be configured for our needs.
#go-programming-language #go #golang-tutorial #go-programming #golang
Last but not the least, a special thank you to Mark Hume-Cook for reviewing this article.
Primitive types are the most basic types we use in any programming languages. We’re going to cover the most common four primitive types used in Go. They are boolean, integer, float and string. Let’s get right into it.
#golang-development #go #golang #golang-tutorial
Golang array is a fixed-size collection of items of the same type. The items of an array are stored sequentially and can be accessed using their index. If we want to declare an array in Go, a programmer specifies the type of the elements and the number of items required by an array.
Golang programming language provides a data structure called an** array**, which can store the fixed-size sequential collection of items of the same type.
The array is used to store the collection of data, but it is often more useful to think of the array as the collection of variables of the same type.
Instead of declaring individual variables, such as no1, no2, …, and no99, you declare one array variable such as numbers and use no, no, and …, no to represent individual variables.
#golang #go #golang array #golang programming