About this Course
4.5
35 ratings
8 reviews
Specialization
100% online

100% online

Start instantly and learn at your own schedule.
Flexible deadlines

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Hours to complete

Approx. 11 hours to complete

Suggested: 12 hours/week...
Available languages

English

Subtitles: English...
Specialization
100% online

100% online

Start instantly and learn at your own schedule.
Flexible deadlines

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Hours to complete

Approx. 11 hours to complete

Suggested: 12 hours/week...
Available languages

English

Subtitles: English...

Syllabus - What you will learn from this course

Week
1
Hours to complete
3 hours to complete

MODULE 1: FUNCTIONS AND ORGANIZATION

Continue your exploration of the Go programming language as you learn about functions, methods, and interfaces. Topics include the implementation of functions, function types, object-orientation in Go, methods, and class instantiation. As with the first course in this series, you’ll have an opportunity to create your own Go applications so you can practice what you’re learning. The first module introduces the concept of functions and shows you how to use them to manipulate data programmatically. Once again, the treatment of the topic begins at a fairly rudimentary level to ensure everyone is starting from the same point in terms of basic concepts....
Reading
7 videos (Total 55 min), 8 readings, 2 quizzes
Video7 videos
M1.1.2 - Function Parameters and Return Values6m
M1.1.3 - Call by Value, Reference7m
M1.1.4 - Passing Arrays and Slices5m
M1.2.1 - Well-Written Functions7m
M1.2.2 - Guidelines for Functions11m
M1.2.3 - Function Guidelines7m
Reading8 readings
STOP - Read This First!1m
M1.1.1 - Why Use Functions?2m
M1.1.2 - Function Parameters and Return Values2m
M1.1.3 - Call by Value, Reference2m
M1.1.4 - Passing Arrays and Slices2m
M1.2.1 - Well-Written Functions2m
M1.2.2 - Guidelines for Functions2m
M1.2.3 - Function Guidelines2m
Quiz1 practice exercise
Module 1 Quiz10m
Week
2
Hours to complete
3 hours to complete

MODULE 2: FUNCTION TYPES

This second module continues to explore the use of functions in Go. You’ll continue learning about the capabilities and features of functions, and write a routine that solves a practical physics problem....
Reading
3 videos (Total 26 min), 3 readings, 2 quizzes
Video3 videos
M2.1.2 - Returning Functions10m
M2.2.2 - Variadic and Deferred6m
Reading3 readings
M2.1.1 - First Class Values2m
M2.1.2 - Returning Functions2m
M2.2.1 - Variadic and Deferred2m
Quiz1 practice exercise
Module 2 Quiz14m
Week
3
Hours to complete
3 hours to complete

MODULE 3: OBJECT ORIENTATION IN GO

Functions in Go have many useful and powerful capabilities, which you’ll explore in this module. At the end, you’ll develop a Go routine that takes full advantage of Go’s object orientation....
Reading
6 videos (Total 28 min), 6 readings, 2 quizzes
Video6 videos
M3.1.2 - Support for Classes (1)7m
M3.1.3 - Support for Classes (2)2m
M3.2.1 - Encapsulation5m
M3.2.2 - Point Receivers4m
M3.2.3 - Point Receivers, Referencing, Dereferencing2m
Reading6 readings
M3.1.1 - Classes and Encapsulation2m
M3.1.2 - Support for Classes (1)2m
M3.1.3 - Support for Classes (2)2m
M3.2.1 - Encapsulation2m
M3.2.2 - Pointer Receivers2m
M3.2.3 - Pointer Receivers, Referencing, Dereferencing2m
Quiz1 practice exercise
Module 3 Quiz14m
Week
4
Hours to complete
3 hours to complete

MODULE 4: INTERFACES FOR ABSTRACTION

This last module rounds out the course by introducing several new concepts including interfaces and polymorphism. You’ll finish the module – and course – by creating a Go routine that creates instances of a class and allows you to query its properties....
Reading
6 videos (Total 40 min), 6 readings, 2 quizzes
Video6 videos
M4.1.2 - Interfaces6m
M4.1.3 - Interface vs. Concrete Types12m
M4.2.1 - Using Interfaces6m
M4.2.2 - Type Assertions6m
M4.2.3 - Error Handling2m
Reading6 readings
M4.1.1 - Polymorphism2m
M4.1.2 - Interfaces2m
M4.1.3 - Interface vs. Concrete Types2m
M4.2.1 - Using Interfaces2m
M4.2.2 - Type Assertions2m
M4.2.3 - Error Handling2m
Quiz1 practice exercise
Module 4 Quiz14m
4.5
8 ReviewsChevron Right

Top Reviews

By IOOct 3rd 2018

Superb course,\n\nI definitely understand Golang far better than I did when I originally started it!

Instructor

Avatar

Ian Harris

Professor
Department of Computer Science

About University of California, Irvine

Since 1965, the University of California, Irvine has combined the strengths of a major research university with the bounty of an incomparable Southern California location. UCI’s unyielding commitment to rigorous academics, cutting-edge research, and leadership and character development makes the campus a driving force for innovation and discovery that serves our local, national and global communities in many ways....

About the Programming with Google Go Specialization

This specialization introduces the Go programming language from Google and provides learners with an overview of Go's special features. Upon completing the three-course sequence, learners will have gained the knowledge and skills needed to create concise, efficient, and clean applications using Go....
Programming with Google Go

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.