->

Go Data Structures, Algorithms And Design Patterns With Go

Last updated 4/2019MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHzLanguage: English | Size: 2.92 GB | Duration: 10h 7m


 

Delve into Go's powerful data structure, algorithms, classical design patterns by using TDD with some easy tricks

What you'll learn

This course is aimed at bner-level developers in the Go programming language, who would like to learn data structures and algorithms in Golang.

Requirements

Prior knowledge of basic Go programming would be advantageous.

Description

Go is a multi-paradigm programming language that has built-in facilities to create concurrent applications. Design Patterns will provide readers with a reference point to software design patterns and CSP concurrency design patterns to help them build applications in a more idiomatic, robust, and convenient way in Go.With this hands-on, practical course, you'll first have a deep dive into understanding the basic data types, structures, linked lists and doubly linked lists in Go. Then, you will learn about graph algorithms such as binary & trees. You will then learn about CSP concurrency patterns used to maintain thousands of servers. Moving further, you will also gain advanced knowledge about classic design patterns to build concise, readable, and maintainable applications & software.Finally, you will learn concurrent structures and parallel execution which helps you improve your concepts of Go Concurrency to write concurrent apps & develop some classical design patterns with concurrent structures to maximize parallelism. Contents and OverviewThis training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.The first course, Learning Go Data Structures, and Algorithms will b by understanding the basic Data types and Structures in Go. Moving forward, you will learn the power of linked lists and doubly linked lists in Go and then learn to implement linear data structures such as stacks and queues. Also, implement binary searches and trees and will explore sorting algorithms in detail. From here, you will learn about graph algorithms and also be introduced to some common data structures used while working with strings. You will learn common techniques and structures used in tasks such as preprocessing, modelling, and transfog data. By the end of this course, you would have mastered functional and reactive implementations of traditional data structures in an easy and efficient mannerThe second course, Introduction to Go Classical Patterns starts with a brief introduction to Go programming essentials and quickly moves on to explain the idea behind the creation of design patterns and how they appeared in the 90’s as a common "language" between developers to solve common tasks in object-oriented programming languages. You will then learn how to apply the 23 Gang of Four (GoF) design patterns in Go and also learn about CSP concurrency patterns, the "killer feature" in Go that has helped Google develop software to maintain thousands of servers. With all of this, the book will enable you to understand and apply design patterns in an idiomatic way that will produce concise, readable, and maintainable software.The third course, Go Behavioural Patterns will take you to an advanced level of knowledge about classic design patterns but, as you will see, the design patterns covered here are quite different, partly because of the lack of inheritance in Go, but also because we have different and more optimal ways to solve the same problems. With all this, the course will enable you to understand and apply design patterns in an idiomatic way that will produce concise, readable, and maintainable software.The fourth course, Go Concurrency is on learning about concurrent structures and parallel execution. You will use the majority of Go primitives to write concurrent apps, and we will develop some classical design patterns with concurrent structures to maximize parallelism. Also, you will learn some typical structures with which to develop concurrent apps in Go. You will learn how a classical pattern can become more complex if you need it to work in a concurrent way; however, the idea is to understand Go concurrent primitives so that you know how to write your own concurrent design patterns by using the knowledge taken from the course.About the Authors: Gustavo is an experienced software developer and has been writing code since the bning of the century. He has vast experience working with different languages, including Erlang, javascript, and C but with a major interest in Go. He is currently a Technical Leader of a Golang team that builds distributed systems. When he is not coding, you can find him cycling, rock-climbing, and playing guitar in his free .Mario Castro Contreras is a software eeer who has specialized in distributed systems and big data solutions. He works as a site reliability eeer, and now he is focused on containerized solutions and apps using most of the Google Cloud suite, especially, Kubernetes. He has wide experience in systems and solutions integration, and he has written many scalable and reliable 12-factor apps using Go and Docker. He has designed big data architectures for financial services and the media, and he has written data processing pipelines using event-driven architectures entirely in Go. He is also very active in the open source community, and you can find him on his GitHub account with the username sayden. In the past, he has also written mobile applications and backends in Java. Mario is passionate about programming languages, and he finds the best balance between fun and productivity in Go; however, recently he enjoys writing in Rust and embedded systems in C. He is also passionate about road cycling and winter sports.

Overview

Section 1: Learning Go Data Structures and Algorithms

Lecture 1 The Course Overview

Lecture 2 Basics of Go

Lecture 3 Writing a Hello World Program

Lecture 4 Variables and Elementary Types

Lecture 5 Applying Functions

Lecture 6 Fog Control Structures

Lecture 7 Data Structures - Array, Slices, and Maps

Lecture 8 Structs and Methods

Lecture 9 Error Handling

Lecture 10 Single and Double Linked Lists

Lecture 11 Implementing Stacks

Lecture 12 Implementing Queue (Alternative Channel Implementation)

Lecture 13 Binary Search and Trees

Lecture 14 Generating Channels

Lecture 15 Multiplex and Demultiplex with Fan In/Out

Lecture 16 Implementing Worker Pools

Lecture 17 Building a (Tiny) Distributed Search Ee

Section 2: Introduction to Go Classical Patterns

Lecture 18 The Course Overview

Lecture 19 Installing Go

Lecture 20 Starting with Hello World

Lecture 21 Flow Control

Lecture 22 Functions

Lecture 23 Arrays, Slices, and Maps

Lecture 24 Pointers, Structures, and Interfaces

Lecture 25 Testing and TDD

Lecture 26 Libraries

Lecture 27 Go Tools

Lecture 28 Singleton Design Pattern

Lecture 29 Builder Design Pattern

Lecture 30 Factory Method

Lecture 31 Abstract Factory

Lecture 32 Prototype Design Pattern

Lecture 33 Composite Design Pattern

Lecture 34 Adapter Design Pattern

Lecture 35 Bridge Design Pettern

Lecture 36 Proxy Design Pattern

Lecture 37 Decorator Design Pattern

Lecture 38 Facade Design Pattern

Lecture 39 Flyweight Design Pattern

Section 3: Go Behavioral Patterns

Lecture 40 The Course Overview

Lecture 41 Strategy Design Pattern

Lecture 42 Chain of Responsibility Pattern

Lecture 43 Command Design Pattern

Lecture 44 Template Design Pattern

Lecture 45 Memento Design Pattern

Lecture 46 Interpreter Design Pattern

Lecture 47 Visitor Design Pattern

Lecture 48 State Design Pattern

Lecture 49 Mediator Design Pattern

Lecture 50 Observer Design Pattern

Section 4: Go Concurrency

Lecture 51 The Course Overview

Lecture 52 Defining Concurrency

Lecture 53 Goroutines

Lecture 54 Callbacks

Lecture 55 Mutexes

Lecture 56 Channels

Lecture 57 Using It all – Concurrent Singleton

Lecture 58 Barrier Concurrency Pattern

Lecture 59 Future Design Pattern

Lecture 60 Pipeline Design Pattern

Understanding the basics to get started with Golang,Implementing stacks and queues & data structure,Exploring different concurrency models for data processing,Build your own tiny distributed search ee,Encapsulate the creation of complex objects in an idiomatic way in Go,Create unique instances that cannot be duplicated within a program,Understand the importance of object encapsulation to provide clarity and maintainability,Learn most Go primitives and write concurrent apps,Develop some classical design patterns with concurrent structures to maximize parallelism

HomePage:

https://www.udemy.com/course/go-data-structures-algorithms-and-design-patterns-with-go/

 

 

 


 TO MAC USERS: If RAR password doesn't work, use this archive program: 

RAR Expander 0.8.5 Beta 4  and extract password protected files without error.


 TO WIN USERS: If RAR password doesn't work, use this archive program: 

Latest Winrar  and extract password protected files without error.


 Themelli   |  

Information
Members of Guests cannot leave comments.




rss