Building Your First Application with Go [Video]

Rostyslav Dzinko

Building Your First Application with Go [Video]
Downloadable video: $39.99
save 15%!

Packt Video. Stream online or download for unrestricted offline use. Learn more

Course Contents
The Author
Sample Clip
  • New! Packt Video courses: practical screencast-based tutorials that show you how to get the job done. Bite sized chunks, hands on instructions, and powerful results
  • 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

Video Details

Language : English
Release Date : Friday, February 28, 2014
Course Length : 2 hours 47 minutes
ISBN : 1783283815
ISBN 13 : 9781783283811
Author(s) : Rostyslav Dzinko
Topics and Technologies : Video, e-Learning, Open Source

Table of Contents

  1. First Application [23:19 minutes]
    • Bootstrapping Your Workspace
    • "Hello, world!"
    • Mastering the "go" Tool
    • First Useful Application
    • Commenting the Code

  2. Basic and Complex Data Types [24:15 minutes]
    • Variables and Constants
    • Playing with Numbers and Strings
    • Pointers and Values
    • Slices and Arrays
    • Two-dimensional Slices
    • Maps

  3. Control Structures [22:00 minutes]
    • "if-else" – Understand Your Code to Make Decisions
    • "switch" – Decisions Are Made Even Simpler
    • "for" – Mastering Cycles
    • Processing Errors
    • The "comma-ok" Notation

  4. Structuring Code with Functions and Packages [24:56 minutes]
    • Functions
    • Anonymous Functions
    • Packages
    • Package Initialization
    • Deferred Execution

  5. Object-oriented Programming in Go [17:43 minutes]
    • Structures
    • Behavior
    • Interfaces
    • Universal Interface

  6. Goroutines and Channels [21:43 minutes]
    • Goroutines Lifecycle and Parallel Execution
    • Channels
    • Buffered Channels
    • The FanIn Pattern
    • The FanOut Pattern

  7. Building a Web Image Manipulation Program (WIMP), Part I – Web Application [17:31 minutes]
    • Running a Web Server in Go
    • URL Multiplexer and Query String Parameters
    • Adding Templates
    • Caching Templates
    • Errors, Panic, and Recover

  8. Building a Web Image Manipulation Program (WIMP), Part II – Image Processing [15:51 minutes]
    • Hooking Up an Image – Encoding and Decoding
    • Color Inversion
    • Image Rotation
    • Improving the Design
    • Conclusion

Rostyslav Dzinko

Rostyslav Dzinko is a software architect who has been working in the software development industry for more than six years. He was one of the first developers who started working with the Go language far earlier than the first official public release of Go 1.0 took place. Rostyslav uses the Go language daily and has successfully used it in production for more than two years, building a broad range of software from high-load web applications to command-line utilities. Rostyslav has a Master’s degree in Systems Engineering and will complete a PhD thesis in a year and a half.

Sorry, we don't have any reviews for this video yet.

Sorry, there are currently no downloads available for this video.

Code Downloads

Download the code and support files for this video.

Support, complaints and feedback.

Packt is committed to making Packt Video courses a valuable, useful way for IT professionals to learn new skills. We have made every effort to ensure that this course reaches the required standard and will work on our customer's devices. Please go to our support page.

What you will learn from this video course

  • Find where to get the Go compiler and how to use supplied tools
  • Explore basic and complex data types and how Go manages main memory
  • Learn about the code execution control structure
  • Organize source code into reusable parts with functions and packages
  • Get to grips with the principles of object-oriented development and the specifics of their implementation in Go
  • Understand how concurrent applications work and how goroutines help you to easily implement concurrency
  • Schedule goroutines with a runtime scheduler
  • Build well-designed applications from the ground up

Who this video course is for

If you are a student or would like to dive into the world of software development using the Go language, then this video course is ideal for you. This course assumes that you have some basic knowledge of computer science.

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.

Screenshots from the course

Bootstrapping your workspace

Creating an application with Go

Getting started

Implementing colour inversion and rotaion on an image

Making use of Control Structures

Nested structures


Packt video courses are designed to cover the breadth of the topic in short, hands-on, task-based videos. Each course is divided into short manageable sections, so you can watch the whole thing or jump to the bit you need. The focus is on practical instructions and screencasts showing you how to get the job done.

Each video covers a whole feature of the language. It begins with a small amount of theory and ends with a working example, which you can run yourself.

Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software