Go Programming, Fundamentals | CMPR.X418

Go language (golang), often considered the "C for the 21st century,” is an open source programming language developed by Google to help build simple and advanced-level software systems. The core strength of golang is its concurrency mechanisms that make it simpler to write reliable software and to exploit multi-core architectures. The golang is a C-like compiled language that offers portability, speed, and modularity, as well as compatibility with C language. The golang compiler can produce an executable binary for many different CPU and GPU architectures without rewriting the application source code and has a built-in garbage collection mechanism. Participants in this class learn to write faster and modular code, for real-world, cloud-based and general purpose applications.

Class assignments and exercises will prepare students to write real world applications that involve web servers, database interaction, and embedded applications.

Topics include:

  • Code compilation
  • Program structure
  • Basic data types
  • Control structures
  • Composite types
  • Functions and methods
  • Interfaces encapsulation
  • Using packages to reuse code
  • Goroutines and channels
  • Concurrency
  • How to use build in test tools

Learning Outcomes:
At the conclusion of the course, you should be able to:

  • Write faster and modular code, for real-world, cloud-based and general purpose applications
  • Understand and use the basic programming constructs of GO language
  • Manipulate various GO language data types, such as arrays, strings, and pointers
  • Write GO language code using principles of concurrency programming
  • Understand how to wirte web servers for cloud-based applications
  • Manage memory apropriately, including proper allocation/deallocation procedures

Skills Needed: Students should have C programming skills. Advanced C is recommended.
Have a question about this course?
Speak to a student services representative.
Call (408) 861-3860

Sections Open for Enrollment:

Open Sections and Schedule
Start / End Date Units Meeting Type Cost Instructor
04-06-2021 to 07-06-2021 3.0 Online $580

Suleman Saya



Date: Start Time: End Time: Meeting Type: Location:
Tue, 04-06-2021 12:01 a.m. 12:02 a.m. Online ONLINE
Tue, 07-06-2021 11:58 p.m. 11:59 p.m. Online ONLINE