Skip to content

Latest commit

 

History

History
52 lines (39 loc) · 1.29 KB

File metadata and controls

52 lines (39 loc) · 1.29 KB

Lecture 2 - Basics in Go Programming, OOP Part I

Lecture 3 - Object Oriented Programming in Go

  • Structs, Interfaces, Embedding, Polymorphism

Lecture 4 - Functional Programming and the Lambda Calculus

  • Functional Programming
  • Lambda Calculus
  • Streams in Go

Lecture 5 - Functional Parsers

  • What is a Parser?
  • Functional Parsers and Parser Combinators
  • Building a Parser in Go

Lecture 6 - Concurrent Programming

  • Why concurrent programming matters!
  • Go routines and channels
  • Go concurrency patterns
  • The dining philosophers problem

Lecture 7 - Concurrent Programming - Part II

  • Deadlocks and Detection
  • The Resource Access Graph
  • Building a Resource Manager

Lecture 8 - Distributed Programming

  • Introduction
  • Sockets and low level programming
  • RPC and GRPC
  • ID generator with GRPC

Lecture 9 - Distributed Programming - The Raft Protocol

  • Introduction into Consensus Protocols
  • Raft
  • Implementing Raft with Go

Lecture 10 - Modules and Versioning

  • Introduction into Go 1.11 Modules
  • Implementing Modules

Lecture 11 - System Programming

  • What is System Programming?
  • Calling C
  • Implementing Docker