O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Building Your First Application with Go

Video Description

Get practical experience and learn basic skills while developing an application with Go

About This Video

  • Learn the features and various aspects of Go programming

  • Create a production-ready web application by the end of the course

  • Master time-proven design patterns for creating highly reusable application components

  • In Detail

    The Go language is a new programming language for creating concurrent applications, high-load and high-responsive software services, and complex systems. The language supports totally re-thought concepts and paradigms of software development, unlike other programming languages.

    "Building Your First Application with Go" is your way into the world of software development. Go has a robust library and advanced techniques. This makes it a great language that can even be understood by people with no experience in programming.

    Take a journey through the concepts presented by the Go language! Go is a language with no legacy, well suited for software developers, be it for beginners or experienced users.

    The Go language presents fresh patterns of software development. You will learn about the core distinctive features of Go – goroutines and channels, which are used to design concurrent applications. You will gain familiarity with approaches of structuring application code, by breaking it into reusable components like functions, packages, and objects. Object-oriented programming; one of the central paradigms of modern software development, is also covered in this course. It offers the most popular and well-tested patterns for building brilliantly structured applications; the course finishes with creating a production-ready image manipulation program, which is built as a web application.

    The course will help you to start building applications with Go right off the bat. Packed with examples, especially with a finished production-ready application from the final section, the course gives you the right vision of what software source code should look like.

    Table of Contents

    1. Chapter 1: First Application
      1. Bootstrapping Your Workspace 00:04:35
      2. "Hello, world!" 00:04:41
      3. Mastering the "go" Tool 00:04:55
      4. First Useful Application 00:05:00
      5. Commenting the Code 00:04:11
    2. Chapter 2: Basic and Complex Data Types
      1. Variables and Constants 00:06:29
      2. Playing with Numbers and Strings 00:05:38
      3. Pointers and Values 00:03:53
      4. Slices and Arrays 00:06:35
      5. Two-dimensional Slices 00:02:49
      6. Maps 00:04:31
    3. Chapter 3: Control Structures
      1. "if-else" – Understand Your Code to Make Decisions 00:05:08
      2. "switch" – Decisions Are Made Even Simpler 00:04:26
      3. "for" – Mastering Cycles 00:06:20
      4. Processing Errors 00:03:21
      5. The "comma-ok" Notation 00:02:47
    4. Chapter 4: Structuring Code with Functions and Packages
      1. Functions 00:06:51
      2. Anonymous Functions 00:04:53
      3. Packages 00:05:11
      4. Package Initialization 00:03:17
      5. Deferred Execution 00:04:45
    5. Chapter 5: Object-oriented Programming in Go
      1. Structures 00:06:26
      2. Behavior 00:04:09
      3. Interfaces 00:04:35
      4. Universal Interface 00:02:34
    6. Chapter 6: Goroutines and Channels
      1. Goroutines Lifecycle and Parallel Execution 00:06:52
      2. Channels 00:04:26
      3. Buffered Channels 00:04:42
      4. The "FanIn" Pattern 00:03:06
      5. The "FanOut" Pattern 00:02:37
    7. Chapter 7: Building a Web Image Manipulation Program (WIMP), Part I – Web Application
      1. Running a Web Server in Go 00:03:36
      2. URL Multiplexer and Query String Parameters 00:03:45
      3. Adding Templates 00:03:34
      4. Caching Templates 00:02:58
      5. Errors, Panic, and Recover 00:03:41
    8. Chapter 8: Building a Web Image Manipulation Program (WIMP), Part II – Image Processing
      1. Hooking Up an Image – Encoding and Decoding 00:03:05
      2. Color Inversion 00:03:04
      3. Image Rotation 00:02:42
      4. Improving the Design 00:04:48
      5. Conclusion 00:02:14