Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Software Development Tools No-Code Development
Business
Entrepreneurship Communication Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certifications Network & Security Hardware Operating Systems & Servers Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Paid Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement & Gardening Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition & Diet Yoga Mental Health Martial Arts & Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Learning Teacher Training Test Prep Other Teaching & Academics
Web Development JavaScript React Angular CSS Node.Js Typescript HTML5 PHP
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Amazon AWS Cisco CCNA Microsoft AZ-900 CompTIA Security+
Microsoft Power BI SQL Tableau Data Modeling Business Analysis Business Intelligence MySQL Data Analysis Data Warehouse
Unity Unreal Engine Game Development Fundamentals C# 3D Game Development C++ Unreal Engine Blueprints 2D Game Development Mobile Game Development
Google Flutter iOS Development Android Development Swift React Native Dart (programming language) Kotlin Mobile App Development SwiftUI
Graphic Design Photoshop Adobe Illustrator Drawing Canva Digital Painting InDesign Design Theory Procreate Digital Illustration App
Life Coach Training Neuro-Linguistic Programming Personal Development Personal Transformation Life Purpose Mindfulness Sound Therapy Emotional Intelligence Coaching
Business Fundamentals Entrepreneurship Fundamentals Freelancing Business Strategy Online Business Startup Business Plan Blogging Amazon Kindle Direct Publishing (KDP)
Digital Marketing Social Media Marketing Marketing Strategy Internet Marketing Copywriting Google Analytics Email Marketing Startup Advertising Strategy

DevelopmentWeb DevelopmentGo (programming language)

Web Development w/ Google’s Go (golang) Programming Language

Learn Web Programming from a University Professor in Computer Science with over 20 years of teaching experience.
Rating: 4.7 out of 54.7 (6,775 ratings)
50,939 students
Created by Todd McLeod
Last updated 5/2022
English
English [Auto], Indonesian [Auto], 

What you'll learn

  • Construct server-side applications using today's best practices
  • Acquire an outstanding foundation in the fundamentals of web programming
  • Learn from a University Professor in Computer Science with over 20 years of experience teaching individuals of all ability levels
  • Achieve mastery in the understanding and application of web development
  • Understand servers, routing, restful applications, JSON, templates, and file servers
  • Understand cookies, state, UUIDs, HTTP methods, HTTP response codes, and sessions
  • Create web applications using only the Go programming language's standard library
  • Create web applications without using third-party frameworks
  • Build performant distributed applications that dynamically scale
  • Apply cutting-edge web development practices

Requirements

  • You must understand how to program with the Go programming language before taking this course. If you do not know how to program with Go, please take my course: "Learn How To Code: Google's Go (golang) Programming Language"

Description

The Go programming language was created by Google to do what Google does: performant web applications at scale.

Open-sourced in 2009 and reaching version one in 2012, the Go programming language is the best choice for web development programming today. Go is the most powerful, performant, and scalable programming language today for creating web applications, web API’s, microservices, and other distributed services.

In this course, you will gain a solid foundation in web development.

You will learn all of the following and more:

Architecture

  • networking architecture

  • the client / server architecture

  • the request / response pattern

  • the RFC standards defined by the IETF

  • the format of requests from clients and responses from servers

Templates

  • the role that templates play in server-side programming

  • how to work with templates from Go’s standard library

  • modifying data structures to work well with templates

Servers

  • the relationship between TCP and HTTP

  • how to build a TCP server which responds to HTTP requests

  • how to create a TCP server which acts as an in-memory database

  • how to create a restful TCP server that handles various routes and methods

  • the difference between a web server, a servemux, a multiplexer, and a mux

  • how to use a third-party server such as julien schmidt’s router

  • the importance of HTTP methods and status codes

The net/http package

  • streamlining your web development with the net/http package

  • the nuances of the net/http package

    • the handler interface

    • http.ListenAndServe

    • creating your own servemux

    • using the default servemux

    • http.Handle & http.Handler

    • http.Handlefunc, func(ResponseWriter, *Request), & http.HandlerFunc

    • http.ServeContent, http.ServeFile, & http.FileServer

    • http.StripPrefix

    • http.NotFoundHandler

State & Sessions

  • how to create state: UUID’s, cookies, values in URL’s, security

  • how to create sessions: login, permissions, logout

  • how to expire a session

Deployment

  • how to purchase a domain

  • how to deploy an application to Google Cloud

Amazon Web Services

  • how to use Amazon Web Services (AWS)

  • how to create a virtual linux machine on AWS EC2 (Elastic Cloud Compute)

  • how to use secure shell (SSH) to manage a virtual machine

  • how to use secure copy (SCP) to transfer files to a virtual machine

  • what load balancers are and how to use them on AWS

MySQL

  • how to use MySQL on AWS

  • how to connect a MySQL workbench to AWS

MongoDB

  • understanding CRUD

  • how to use MongoDB & Go

MVC (Model View Controller) Design Pattern

  • understanding the MVC design pattern

  • using the MVC design pattern

Docker

  • virtual machines vs containers

  • understanding the benefits of using Docker

  • Docker images, Docker containers, and Docker registries

  • implementing Docker and Go

  • deploying Docker and Go

Google Cloud

  • Google Cloud Storage

  • Google Cloud no-sql datastore

  • Google Cloud memcache

  • Google Cloud PAAS App Engine

Web Dev Toolkit

  • AJAX

  • JSON

  • json.Marhsal & json.Unmarshal

  • json.Encode & json.Decode

  • Hash message authentication code (HMAC)

  • Base64 encoding

  • Web storage

  • Context

  • TLS & HTTPS

  • JSON with Go using Tags

By the end of this course, you will have mastered the fundamentals of web development.

My name is Todd McLeod. I am tenured faculty in Computer Information Technology at Fresno City College and adjunct faculty in Computer Science at California State University Fresno. I have taught enough students over 22 years to know that by the end of this course, you will be an outstanding web developer.

You will have the best skills available today.

You will know the best way to do web development today.

You will have the most demanded and highest paid skills in the marketplace.

Join me in this outstanding course. Come learn best practices for web development.

Sign up for this course now and open doors to a great future.

Who this course is for:

  • This is a university level introduction to web programming course.
  • This course is for individuals who know how to use the Go programming language.
  • This course is perfect for programmers wanting a thorough introduction to web development using the Go programming language.
  • This course is perfect for developers wanting to fill in gaps in their knowledge.

Featured review

Anton Yurchenko
Anton Y.
16 courses
9 reviews
Rating: 5.0 out of 52 years ago
I have that strange need to downvote every single course I have taken here, as this one is definitely raising the bar. Todd McLeod is by far the best instructor I have encountered on Udemy! Just to explain the joy, I have asked for a refund on other courses here to take some more from Todd McLeod. Breathtaking! Good Job Todd! You got a new follower ;-)

Instructor

Todd McLeod
Top-Rated Instructor, Tenured College Professor
Todd McLeod
  • 4.6 Instructor Rating
  • 61,411 Reviews
  • 384,767 Students
  • 21 Courses

Fun, Quick, & Easy

Learning can be fun, quick, and easy if you have the right teacher. I come from a family of teachers, I've taught at the college and university level for over 20 years, and I have been recognized as one of the top teachers in the California college system. I became a teacher because I love sharing knowledge and seeing how it transforms people's lives. Learning is the noblest of all endeavors. The more you learn, the more you improve your life.


Learn Quickly & Effectively

All of my courses include step-by-step tutorials and hands-on exercises. The tutorials show you what to do. The hands-on exercises allow you to practice what you have just seen. These hands-on exercises also come with all of the files you need and video solutions so that you can learn more quickly and effectively.


Great Courses for Beginners

I work with beginners all of the time. I understand how to take topics and make them easy to understand.


The Human Element

Students do better in classes where they enjoy the teacher. I am a bit goofy at times but this keeps my courses fun, interesting, and engaging. When you are learning with me, you are guaranteed to have a few laughs.


Traditional Credentials

I am a tenured professor in California, an autodidact, and multidisciplinarian. I have taught at the graduate and undergraduate levels in business, information system, and computer science. I also have a lot of knowledge about mindfulness, meditation, psychology, and personal growth. I was born into a culture of mindfulness and meditation, and have been involved with mindfulness and meditation all of my life. I have authored 48 books and have experience with the publishing industry, literature, and film. As I said, I love learning and love sharing knowledge with others.


I look forward to seeing you in class!

Top companies choose Udemy Business to build in-demand career skills.
NasdaqVolkswagenBoxNetAppEventbrite
  • Udemy Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Investors
  • Terms
  • Privacy policy
  • Sitemap
  • Accessibility statement
Udemy
© 2022 Udemy, Inc.