My Account Log in

1 option

Golang for jobseekers : unleash the power of go programming for career advancement / Hairizuan Bin Noorazman.

Ebook Central College Complete Available online

View online
Format:
Book
Author/Creator:
Bin Noorazman, Hairizuan, author.
Language:
English
Subjects (All):
Cloud computing.
Go (Computer program language).
Web.
Physical Description:
1 online resource (414 pages)
Edition:
First edition, English edition.
Place of Publication:
London, England : BPB Online, [2023]
Summary:
This book is a comprehensive guide to the Go programming language, designed for job seekers and those looking to enhance their software engineering skills. Authored by Hairizuan Bin Noorazman, an experienced DevOps engineer and Google Developer Expert, the book provides practical insights into the fundamentals of Go, including data types, structures, and algorithms. It also delves into advanced topics such as building REST APIs, deploying applications in both virtual machines and containers, and understanding microservices architectures. The book is particularly aimed at fresh graduates and individuals with prior programming experience, intending to equip readers with the knowledge needed to excel in technical interviews and real-world software development scenarios. Generated by AI.
Contents:
Book title
Inner title
Copyright
Dedicated
About the Author
About the Reviewers
Acknowledgements
Preface
Code Bundle and Coloured Images
Piracy
Table of Contents
Chapter 1: Understanding Golang and its Potential
Introduction
Structure
Objectives
Characteristics of Golang Programming Language
Statically typed
Garbage collection
Cross-compilation
"Batteries Included" standard library
Version guarantees
What kind of development work is Golang used in?
Web applications
Command Line Interface (CLI)
Major applications written with Golang
Docker
Kubernetes
CockroachDB
Companies that use Golang
Cloudflare
Monzo
Conclusion
Chapter 2: Golang Fundamentals
Golang playground
Installing and running Golang locally
Main function in main package
Imports
Variable initialization
Basic types
List
Maps
Writing functions
Structs
Interfaces
Loops
Public versus private
Using "Go" verb
Channels
Errors
Chapter 3: Exploring Data Structures
Singly linked list
Doubly linked list
Circular linked list
Stack
Queue
Binary tree
Hashed maps
Chapter 4: Understanding Algorithms
Big O notation
Sorting algorithms and their importance
Bubble sort
Merge sort
Quick sort
Binary search
Dynamic programming
Chapter 5: Getting Comfortable with Go Proverbs
The bigger the interface, the weaker the interface
Make the zero value useful
interface{} says nothing
Gofmt's style is no one's favorite, yet everyone's favorite
Errors are values.
Do not just check errors, handle them gracefully
Documentation is for users
Do not panic
Accept interfaces, return structs
Never use global variables
Chapter 6: Building REST APIs
Why learn to build REST APIs?
HTTP verbs
HTTP status codes
Building a "Hello World" REST API Golang application
Building a URL shortener
Chapter 7: Testing in Golang
Why build tests?
Test-driven development
Writing a simple unit test
Table driven tests
Mocking
Setup and teardown of environments within tests
HTTP testing
Golden files
Chapter 8: Deploying a Golang Application in a Virtual Machine
Using SSH
Using SCP
Using Systemd to run the Golang application
Debugging the Golang application on the server
Real-life deployments with virtual machines
Chapter 9: Deploying a Containerized Golang Application
Docker basics
Docker command basics
Building a Golang application in a Docker container
Using Docker compose on a local workstation
Using docker-compose on a virtual machine
Deploying the application via Kubernetes
Chapter 10: Microservices with Golang Applications
What are microservices, and why are microservices?
Demo-ing an application stack with multiple applications via docker-compose
Demo-ing an application with multiple applications in Kubernetes
Chapter 11: Introduction to Monitoring and Logging
Why monitoring and logging are important?
Introduction to Prometheus.
Instrumenting an application with metrics to be consumed by Prometheus
Viewing metrics on Prometheus
Quick word on logging
Chapter 12: Adding Concurrency in Golang Application
Concurrency features in Golang
Exchanging messages and persisting it locally
Using channels to receive interrupts in a program
Live reload of configurations
Parallelize parts of an application
Chapter 13: What is Next?
GRPC-alternative communication protocols
SRE principles for reliable applications
Profiling
Working with data storage
Embedding files
Generics
Fuzzing
Index
Back title.
Notes:
Description based on publisher supplied metadata and other sources.
Part of the metadata in this record was created by AI, based on the text of the resource.
Description based on print version record.
ISBN:
9789355518538
9355518536
9789355518491
9355518498
OCLC:
1389611872

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account