GO (golang): Develop Modern, Fast & Secure Web Applications

A comprehensive introduction to developing fast & secure web applications in GO (beginners & fairly advanced developers)

Tổng quan khóa học

You are invited on an exciting journey where you will learn, with guidance, to use Google's GO programming language to develop modern web applications that are highly scalable in both depth and scope. You'll take advantage of the extraordinary capabilities GO holds for full-stack developers to build all sorts of server/client-based applications.

This course is intended as a rich resource for learning programming basics as well as concepts in general and developing modern and fast web application with Google's GO (golang) programming language in particular - a comprehensive learning experience.

The easiest way to learn new programming techniques and modern concepts in software design is to apply them using real-life examples. In this course you will learn how to plan, implement, test, debug and finally install a modern web application - a homepage for renting out bungalows as vacation homes - on a web server.

You will learn about the advantages of the GO programming language and, on the way to a working application, how to integrate other elements such as SQL/PostgreSQL databases, JavaScript (client-side and server-side), AJAX techniques, HTML, CSS and how to use essential tools for full-stack developers.

Besides programming in GO, this course also deals with

  • HTML5 / CSS / DOM

  • JavaScript (Vanilla, without jQuery dependence)

  • SQL / PostgreSQL

  • Migrations / FIZZ

  • JSON

  • Routes, Handlers, Models

  • Tests, Error Handling

  • Linux (bash), Windows (Command Line), macOS (bash)

  • git / github

  • Installation on a webserver

  • and much more

While suitable for beginners with basic programming experience, it is designed to be a resource for fairly advanced developers. It's filled with examples, explanations, and clarifications of concepts needed to develop modern, fast and secure web applications, and comes with a code repository on Github and a detailed course outline as PDF, which serves as part of the course.

Included external packages an dependencies:

  • go-chi | Router

  • scs | Sessions

  • nosurf | CSRF-Token

  • govalidator | Validator (server-sided)

  • pgx/v5 | PostgreSQL Driver & Toolkit

  • go-simple-mail | Golang package for sending e-mail

  • Caddy 2 | a powerful, enterprise-ready, open source web server with automatic HTTPS written in GO

Also playing a part:

  • bootstrap | Bootstrap - HTML, CSS, and JavaScript framework (no jQuery)

  • RoyalUI-Free-Bootstrap-Admin-Template | Free Bootstrap 4 Admin Template

  • Simple-DataTables | DataTables but in TypeScript transpiled to Vanilla JS

  • postgres | PostgreSQL Server (mirror only)

  • pop | Soda/Migrations - standardization of database tasks

  • dbeaver | Dbeaver - free multi-platform database tool

  • vanillajs-datepicker | Vanilla JavaScript datepicker

  • notie | unobtrusive notifications - clean and simple JavaScript

  • SweetAlert2 | so many options for JavaScript popups

  • MailHog | Web and API based SMTP testing

  • Foundation for Emails 2 | Quickly create responsive HTML e-mails that work

  • Cobra | A Framework for Modern CLI Apps in GO

  • GoDotEnv | A GO port of Ruby's dotenv library

When you sign up for this course, you have lifetime access to the course. You can learn at your own pace and return to content at any time for deeper insights or to learn additional concepts when you are ready.

  • This course also comes with a 100% money back guarantee.

  • I think this is one of the most comprehensive courses in English for developing modern, fast, and secure web applications from scratch.

  • And if for some reason the course doesn't work for you, you can get a full refund within the first 14 days*.

Enroll now!


You can get great value from this course and, more importantly, you'll have a great time learning one of the best programming languages ever - the GO programming language, the fastest growing programming language with the highest paid programmers in the US within the last years.

GO is an open-source programming language that makes it easy to develop simple, reliable, and efficient software.

GO was developed by computer science luminaries at one of the best, if not the best, software development companies ever - Google. The design and implementations are by Robert Griesemer, Rob Pike and Ken Thompson.

GO is a very good choice for learning a programming language because it was developed by some of the same people who created the C programming language, Unix, and UTF-8 - some of the most influential contributions to computer science. With GO Robert Griesemer, Rob Pike, and Ken Thompson created a modern programming language that can easily run on multiple processors in parallel, works smoothly in different environments, and makes it easy for programmers to write programs with a very streamlined and user-friendly syntax.

Why did Google develop a new programming language?

In Google's words, "GO was born out of frustration with existing languages and environments for systems programming. Programming had become too difficult and the choice of languages was partly to blame. One had to choose either

  • efficient compilation,

  • efficient execution, or

  • ease of programming;

all three were not available in the same mainstream language. Programmers who could were choosing ease over safety and efficiency by moving to dynamically typed languages such as Python and JavaScript rather than C++ or, to a lesser extent, Java. GO is an attempt to combine the ease of programming of an interpreted, dynamically typed language with the efficiency and safety of a statically typed, compiled language. It also aims to be modern, with support for networked and multicore computing.

Finally, working with GO is intended to be fast: it should take at most a few seconds to build a large executable on a single computer. To meet these goals required addressing a number of linguistic issues: an expressive but lightweight type system; concurrency and garbage collection; rigid dependency specification; and so on. These cannot be addressed well by libraries or tools; a new language was called for."

Learn with me the advantages in web programming of one of the best programming languages ever developed. You will get knowledge, ideas, concepts, inspiration and code examples to design software and applications yourself according to your wishes.

* Check Udemy's Terms and Conditions for details.

Xem thêm

Câu hỏi thường gặp

Khu vực Câu hỏi thường gặp trống

Chương trình khóa học

Yêu cầu

  • No previous programming experience is required to participate in this course (but highly recommended!). This course starts by teaching very basic skills and guides you step by step to create modern web applications in Go.

  • Basic experience of coding GO and a working GO IDE (Integrated Developing Environment) is helpful but not mandatory.

  • Knowledge of HTML5, JavaScript, CSS, SQL, Linux, general understanding of processes in computers help and will also be covered in the course.

  • Willingness to learn and a fair amount of curiosity to figure out how things work!

Kết quả

  • How to build modern, fast, and secure web applications in Google's GO programming language

  • How to code your programs in the GO (golang) programming language

  • How to organize your application in GO while developing correctly

  • Integrate 3rd party packages with GO Modules

  • Write plain JavaScript without depending on something like jQuery

  • Creating HTML pages using HTML5

  • Creation and usage of Cascading Style Sheets (CSS)

  • How to write tests in GO

  • Brief insight in creating Entity Relationship Diagrams

  • Using "migrations" (and FIZZ) to build a develpoing environment for a PostgreSQL database

  • How to setup and connect to a PostgreSQL database (server) in GO

  • Managing sessions in GO

  • Learn best practices for security in web applications

  • Create and use of middleware in GO

  • Implementation of secure user authentication in GO

  • Deployment of a GO web application to a real server

  • Setup of Caddy 2 as Reverse Proxy with HTTPS

  • Many other competencies a full-stack developer should have

Giảng viên

...
Nguyễn Đình Cường

1.2

  • ... 1 Học viên
  • ... 275 Khóa học
  • ... 1253 Đánh giá

Xin chào các bạn, tôi là Nguyễn Đình Cường, một lập trình viên và giảng viên đam mê công nghệ với hơn 15 năm kinh nghiệm trong ngành công nghiệp phần mềm. Tôi tốt nghiệp từ Bưu Chính Viễn Thông và đã từng làm việc cho một số công ty công nghệ hàng đầu như FPT Software và VinGroup. Với chuyên môn chính là phát triển ứng dụng web, tôi đã làm việc với nhiều công nghệ như HTML, CSS, JavaScript, React cho front-end và Node.js, Express, MongoDB cho back-end. Không chỉ dừng lại ở việc viết mã, tôi còn yêu thích tìm hiểu sâu về thiết kế hệ thống và kiến trúc phần mềm. Tôi tin rằng quá trình học lập trình không chỉ đơn thuần là lý thuyết, mà còn là sự trải nghiệm thực tế và giải quyết vấn đề. Trong các khóa học của mình, tôi cố gắng cung cấp cho học viên những bài giảng thú vị và dễ hiểu, cùng với các bài tập thực hành giúp củng cố kiến thức. Tôi hy vọng rằng qua các khóa học của mình, bạn sẽ không chỉ học được cách viết mã, mà còn phát triển tư duy lập trình và kỹ năng giải quyết vấn đề. Hãy cùng nhau khám phá thế giới lập trình và biến ý tưởng của bạn thành hiện thực! Nếu bạn có bất kỳ câu hỏi nào, đừng ngần ngại liên hệ với tôi. Tôi rất vui được hỗ trợ bạn trong hành trình học tập của mình!

Xem chi tiết

Đánh giá

Đánh giá khóa học này:

Xóa tất cả