GO on AWS – Coding, Serverless and Infrastructure as Code


Learn the GO (golang) programming language to create serverless and other architectures on AWS (Amazon Web Services)

What you will learn

Coding in GOlang

Using GO for AWS serverless projects

Doing Infrastructure as Code with GO on AWS

Using Test Driven Devolpment for GO applications and AWS infrastructure

Description

AWS supports many programming languages with SDKs. GO is a powerful language, but what is lacking is a complete reference not only for writing applications, such as AWS Lamba Functions, but also for Infrastructure as Code. Starting with basic programming knowledge, you get expert tips from real-world projects on how to build fast, secure and cost-effective applications with GO on AWS.
The course is written for students with basic AWS knowledge and experience in at least one other programming language like python or javascript.

We begin with GO fundamentals with many hints for a student from other languages. Building on that knowledge, we discover the possibilities of the AWS SDK – the software development kit. How to call services on a basic and more abstract level.

To build projects on AWS, you also need infrastructure like a storage bucket or a Lambda function. Modern infrastructure is built with IaC – infrastructure as code. We explore the AWS CDK – the cloud development kit. With GO, you gain speed an another level of type safety.

Having created some resources, we dive into the world of serverless. GO is one of the best languages for serverless programming because of the speed and the go compatibility promise. With python or javascript, you have to update often because of new runtime versions. Not with GO!


Get Instant Notification of New Courses on our Telegram channel.

Noteβž› Make sure your π”ππžπ¦π² cart has only this course you're going to enroll it now, Remove all other courses from the π”ππžπ¦π² cart before Enrolling!


Now that we have learned all the building blocks, it’s time to look at more complex architectures. We discuss container and serverless applications, and both build with GO.

The chapter about different types of the automated test give you insights into building applications with high programming quality.

All that is waiting for you, so let`s GO!

English
language

Content

Introduction to GO on AWS

Introduction to GO on AWS

GO – the language

Setup your Environment
Why GO
Exercise 2-1: Hello world

Basic Data Types

Primitive variable types
Exercise 3-1: Variable declaration
Variable Scopes
Exercise 3-2: Variable scopes
Pointers

Advanced Data Types

Advanced data types: arrays
Advanced data types: slices
Advanced data types: maps

Complex Data Types

Simple structures
Complex structures
Exercise 5-1: Structures
Interfaces and Any

Modules

GO modules
Exercise 6-1: Modules

Functions

Functions
Exercise: Function basics
Not object oriented
S3 Event JSON
More on Interfaces

Control Flow

If statements
Control flow with switch
For loops

The AWS GO SDK Version 2

AWS GO SDK V2
The first program
Exercise: List EC2 instances
Write Objects

Simple Service Examples with the GO SDK V2

Stackcounter
Exercise: stack-resource-lister
Share objects with presinged URLs
L34-exercise-presign

S3 – handling storage with GO

The S3 service
Create many files
Upload large files
S3 Event options

DynamoDB

The DynamoDB service
Tables and Keys
From AttributeValue to struct
Using the expression package

STS – Secure Token Service

Cross account access with STS – Security Token Service

AWS Infrastructure in GO

Infrastructure as GO: AWS CDK GO
Hello CDK
CDK Superpowers
CDK init – create a CDK app from scratch
CDK DynamoDB

AWS Lambda in GO

Serverless Compute with Lambda
Lambda Deployment Options
Standard Serverless Architecture
Exercise: Standard Serverless Architecture walkthrough

Testing GO on AWS

Automated Testing
GO Testing
Testing AWS events
Test AWS SDK with interfaces
Test AWS SDK with awsmock

Test Pyramid

Unit Test of CDK
Integration Test with CDK
Serverless test all Levels

Tools

Task – a better Makefile
d2 – declarative diagrams

Wrap-Up

Wrap-Up