Научитесь писать современные, быстрые и безопасные веб-приложения на языке программирования Go от Google и изучите его у профессора университета, удостоенного наград, с 20-летним стажем преподавания и 20-летним опытом работы в отрасли в качестве предпринимателя. Go - это современный, безопасный по типу, скомпилированный и чрезвычайно быстрый язык программирования. Он идеально подходит для создания безопасных, масштабируемых и невероятно быстрых веб-приложений.
Этот курс хорошо подходит как для новичков, так и для разработчиков, которые уже кое-что знают о веб-разработке, но хотят добавить Go в свой набор инструментов.
Мы начнем с обзора языка Go, а затем рассмотрим все, что вам нужно для начала написания веб-приложений, включая обзор HTML5, обзор JavaScript и его модулей, а также, как работать с CSS, чтобы наше приложение выглядело как можно лучше и многое другое.
Главный проект в этом курсе - создание системы бронирования с ночлегом и завтраком. Посетители нашего сайта смогут искать жилье по дате и делать онлайн-бронирование, а владелец сайта сможет управлять бронированием.
К тому времени, когда закончите этот курс, вы будете иметь твердое представление о том, что нужно для создания полностью функционального, безопасного и быстрого веб-приложения с нуля, и у вас будет твердое понимание языка программирования Go.
Посмотреть больше
Это пробный урок. Оформите подписку, чтобы получить доступ ко всем материалам курса. Премиум
Ограничение времени просмотра
Вы можете просматривать пробный урок только 10 минут. Получите полный доступ, чтобы смотреть без ограничений.
Introduction: who I am, and what we're going to do
Урок 2.
00:04:21
Why Go? Why not PHP, or Python, or Node.js, or whatever?
Урок 3.
00:03:09
Why Go? - System Resources
Урок 4.
00:14:23
Installing Go, an IDE, and writing a simple program
Урок 5.
00:01:43
Getting help: How to ask questions
Урок 6.
00:01:35
A note about the terminal on Windows: Git Bash
Урок 7.
00:19:23
Variables & Functions
Урок 8.
00:06:54
Pointers
Урок 9.
00:15:12
Types and Structs
Урок 10.
00:04:14
Receivers: Structs with functions
Урок 11.
00:17:08
Other data structures: Maps and Slices
Урок 12.
00:13:18
Decision Structures
Урок 13.
00:09:23
Loops and ranging over data
Урок 14.
00:08:34
Interfaces
Урок 15.
00:05:04
Packages
Урок 16.
00:11:40
Channels
Урок 17.
00:10:31
Reading and Writing JSON
Урок 18.
00:15:17
Writing Tests
Урок 19.
00:04:55
How web applications work: the request/response lifecycle
Урок 20.
00:13:09
Making a "Hello, World" web application
Урок 21.
00:13:11
Functions and handlers
Урок 22.
00:06:11
Error checking
Урок 23.
00:09:14
Serving HTML Templates
Урок 24.
00:07:32
Reorganizing our code, and adding some basic styling to pages
Урок 25.
00:09:38
Enabling Go Modules and refactoring our code to use packages
Урок 26.
00:24:29
Working with Layouts, and building a template cache (part one)
Урок 27.
00:08:23
Building a template cache (part two)
Урок 28.
00:06:42
Setting application wide configuration
Урок 29.
00:01:30
Why the application wide config is so useful
Урок 30.
00:15:25
Optimizing our template cache by using an application config
Урок 31.
00:15:00
Sharing data with templates
Урок 32.
00:06:50
Using pat for routing
Урок 33.
00:07:00
Using chi for routing
Урок 34.
00:09:40
Developing our own middleware
Урок 35.
00:14:53
Installing and setting up a sessions package
Урок 36.
00:06:45
Experimenting with sessions
Урок 37.
00:04:10
What are we going to build?
Урок 38.
00:19:57
Setting up our project
Урок 39.
00:08:02
Enabling static files
Урок 40.
00:14:08
Creating pages as HTML
Урок 41.
00:45:17
Creating a landing page
Урок 42.
00:17:19
Creating a page for each room
Урок 43.
00:11:52
Adding a form to search for availability
Урок 44.
00:06:37
Improving our form
Урок 45.
00:04:35
Creating the reservation page
Урок 46.
00:21:15
What is Javascript, and why should I care?
Урок 47.
00:12:28
Making a better date picker
Урок 48.
00:08:30
Custom alerts using Notie
Урок 49.
00:08:37
Creating modals with SweetAlert
Урок 50.
00:06:07
Implementing a Javascript module
Урок 51.
00:08:50
Adding custom alerts in our Javascript module
Урок 52.
00:16:34
Using our Javascript module on the "Book Now" button
Урок 53.
00:14:27
What is CSS, and how does it work?
Урок 54.
00:23:15
Converting our pages to Go templates
Урок 55.
00:15:36
Creating handlers for our forms & adding CSRF Protection
Урок 56.
00:12:09
Creating a handler that return JSON
Урок 57.
00:11:08
Sending and processing an AJAX request
Урок 58.
00:09:15
Sending AJAX post and generalizing our custom function
Урок 59.
00:03:56
Refactoring to use internal packages
Урок 60.
00:17:28
Server-side form validation
Урок 61.
00:16:35
Server side form validation II
Урок 62.
00:19:27
Server side form validation III
Урок 63.
00:05:19
Server Side form validation IV
Урок 64.
00:16:11
Displaying a response to user after posting form data
Урок 65.
00:09:31
Finishing up our response to user, and adding alerts
Урок 66.
00:08:48
An aside: Alternate Templating Engines
Урок 67.
00:16:51
Writing tests for our main package
Урок 68.
00:22:37
Writing tests for our GET handlers
Урок 69.
00:08:11
Writing tests for our POST handlers
Урок 70.
00:12:08
Writing tests for our Render package I
Урок 71.
00:13:45
Writing tests for our Render package II
Урок 72.
00:05:47
Getting test coverage
Урок 73.
00:04:55
Exercise: Writing tests for the Forms package
Урок 74.
00:22:35
Solution to writing tests for the Forms package
Урок 75.
00:02:47
Making running our application easier
Урок 76.
00:13:09
Centralizing our error handling to a helpers package
Урок 77.
00:05:25
Using our ClientError and ServerError helper functions
Урок 78.
00:02:11
Updating our tests
Урок 79.
00:03:58
Installing PostgreSQL
Урок 80.
00:03:48
Connecting to the database with DBeaver on a Mac
Урок 81.
00:06:06
Connecting to the database with DBeaver on Windows
Урок 82.
00:12:31
Basic SQL syntax
Урок 83.
00:14:45
More complex queries
Урок 84.
00:17:44
Identifying database structure, and Entity Relationship Diagarams
Урок 85.
00:01:43
Install Soda
Урок 86.
00:11:57
Creating the users table using migrations
Урок 87.
00:07:17
Creating the rest of our database using migrations
Урок 88.
00:04:10
Setting up a foreign key
Урок 89.
00:05:21
Setting up the rest of our foreign keys
Урок 90.
00:06:02
Adding Indices & Exercise
Урок 91.
00:06:38
Solution to Exercise
Урок 92.
00:33:17
How to connect a Go application to a database
Урок 93.
00:11:25
Creating a Driver package
Урок 94.
00:14:11
Connecting to the database and adding the SQL connection to our Repository
Урок 95.
00:06:33
Setting up models
Урок 96.
00:05:54
Cleaning up our code
Урок 97.
00:02:45
A word about ORMs
Урок 98.
00:17:08
Setting up database functions: inserting a reservation
Урок 99.
00:05:26
Testing our insert reservation function
Урок 100.
00:10:57
Inserting Room Restrictions
Урок 101.
00:15:56
Searching for availability by room
Урок 102.
00:15:44
Searching for availablity for all rooms
Урок 103.
00:18:21
Connecting our handlers to our new database functions
Урок 104.
00:11:03
Connecting search availablity to the make reservation page
Урок 105.
00:16:40
Cleaning up our make reservation page and testing everything
Урок 106.
00:14:21
Cleaning up the reservation summary page and improving validation
Урок 107.
00:08:26
Searching for availability by Room
Урок 108.
00:11:31
Providing feedback when searching by room, and connecting to the reservation pag
Урок 109.
00:09:36
Connecting the rooms page to the make reservation page
Урок 110.
00:04:44
Connecting the Major's Suite page, and extracting our javascript module
Урок 111.
00:01:26
Adding a migration for seeding rooms
Урок 112.
00:01:28
Adding a migration for seeding restrictions
Урок 113.
00:10:05
Creating a test database repository
Урок 114.
00:15:02
Updating our existing tests to handle sessions
Урок 115.
00:12:10
Improving our tests by handling multiple cases
Урок 116.
00:28:21
Testing Post handlers
Урок 117.
00:08:22
Testing AvailabilityJSON
Урок 118.
00:03:07
Simplifying adding post parameters
Урок 119.
00:04:27
Sending email using the Standard Library
Урок 120.
00:20:25
Installing a mailer package and setting up a mail channel
Урок 121.
00:02:57
Installing Mailhog on a Mac for testing purposes
Урок 122.
00:00:57
Installing Mailhog on Windows for testing purposes
Урок 123.
00:05:29
Creating and sending mail notifications
Урок 124.
00:01:23
Solution to sending notification to property owner
Урок 125.
00:12:17
Sending nicely formatted email using Foundation
Урок 126.
00:04:20
Updating our tests
Урок 127.
00:04:07
Create the login screen
Урок 128.
00:02:59
Creating the authentication handlers for the login screen
Урок 129.
00:17:47
Creating the authentication and user database functions
Урок 130.
00:09:20
Creating our handler to log in
Урок 131.
00:06:49
Writing Authentication Middleware
Урок 132.
00:03:04
Adding a user to the database
Урок 133.
00:01:21
Testing Login
Урок 134.
00:07:29
Checking to see if a user is logged in, and logging a user out
Урок 135.
00:04:40
Protecting our routes with authentication middleware
Урок 136.
00:03:30
Picking an admin template
Урок 137.
00:03:51
Convert the admin template into a Go template
Урок 138.
00:04:59
Solution to creating admin templates
Урок 139.
00:05:53
Create stub handlers for admin functionality
Урок 140.
00:24:57
Listing all reservations
Урок 141.
00:08:13
Listing new reservations
Урок 142.
00:24:01
Showing one reservation
Урок 143.
00:06:24
Database functions for editing a reservation
Урок 144.
00:07:14
Editing a reservation
Урок 145.
00:14:27
Marking a reservation as processed
Урок 146.
00:06:11
Deleting a reservation
Урок 147.
00:14:21
Showing the reservation calendar
Урок 148.
00:23:36
Reservation Calendar II
Урок 149.
00:22:41
Reservation Calendar III
Урок 150.
00:14:51
Reservation Calendar IV
Урок 151.
00:03:21
Handling Calendar changes I
Урок 152.
00:05:54
Handling Calendar changes II
Урок 153.
00:13:53
Handling Calendar changes III
Урок 154.
00:07:40
Handling Calendar changes IV
Урок 155.
00:19:11
Fixing our redirects
Урок 156.
00:31:26
Updating our tests
Урок 157.
00:02:55
Fixing a bug missed by our tests
Урок 158.
00:01:15
A word about the updated tests
Урок 159.
00:10:25
Changing our app to use command line flags
Урок 160.
00:01:14
An alternative: the .env file
Урок 161.
00:05:40
Using vi to edit files on remote server
Урок 162.
00:08:18
Choosing a server platform
Урок 163.
00:02:22
Add admin user to migrations
Урок 164.
00:13:15
Connecting the application to the web server
Урок 165.
00:04:05
Setting up Supervisor
Урок 166.
00:02:57
Writing an update script for the server
Урок 167.
00:01:28
A note about sending mail from the live server
Урок 168.
00:07:34
Updating to Bootstrap 5
Урок 169.
00:05:28
Updating the footer and page title
Урок 170.
00:07:20
Finishing touches, and fixing a bug
Урок 171.
00:01:36
Populating the rest of the pages
Урок 172.
00:02:43
Additional resources
Автор - udemy
udemy
Udemy - одна из самых больших площадок в мире по доставке обучающего контента от разных авторов всего мира. Присутсвуют курсы практически на любую тему.
Курс называется "Создание современных веб-приложений", а чел пилит какое-то дерьмо из 2013 года
Anonymous
please update this course.
Anonymous
The coursehunter team, please update this course.
The last update for this course on Udemy - 07.2022.
Thanks!
Anonymous
@admin, please, update this course
Anonymous
Не советую тратить время на этот курс тем, кто также, как и я, учит с нуля Go.
Автор что-то постоянно делает, но практически не объясняет, зачем он это делает, всё очень поверхностно. Примерно с 30 урока я полностью перестал понимать, что происходит.
hazartilirot
Anonymous
Да, я как раз на 30 уроке. Соглашусь, автор очень скуп на объяснения. Я, хоть, пришёл из JS/TS, но есть синтаксис очень странный.
Бесит, когда что-то делается не правильно, а потом рефакторится - пустая трата времени. Каждый напишет код по своему и, мне кажется, рефакторинг - это отдельная тема, когда очень хорошо понимаешь код.
То что он делает, это просто оптимизация, сначала выносит кеш в отдельный файл, чтобы он не создавался (кеш) каждый раз, когда запрашивается страница. То есть, чтобы он существовал постоянно независимо оттого какую ты страницу запрашиваешь, потом, мы извлекаем из кеша этот шаблон, чтобы лишний раз не обращаться к более медленной памяти (то есть, к диску). Это уменьшает latency.
hazartilirot
Anonymous
Дружище, ты, наверное, хотел прыгнуть выше головы и без азов начать веб-разработку? У автора есть курс Learn Go for Beginners Crash Course (Golang) - как раз для новчков, там, порядка 11.5 часов. Начни с него.
Найти данный курс можешь на desirecourse - погугли, не так сложно. Учти, что тебе нужен будет торрент-клиент.
Rivaldo Riva
oh cant believe how good this course is its fkng insane, if you want to learn go itself without web development this course has great introductory to go :D can't miss it
Anonymous
can this be free?
ox4
Anonymous
nope, even no hope
Команда внимательно читает ваши комментарии и оперативно на них реагирует. Вы можете спокойно оставлять запросы на обновления или задавать любые вопросы о курсе здесь.
Разработка API микросервисов на основе REST в Golang
REST based microservices API development in Golang
В этом курсе вы изучите разработку API микросервисов с использованием гексагональной архитектуры. Мы начнем разработку с нуля, делая небольшие шаги, мы будем строить фундамент, постоянно улучшая структуру приложения. Мы исследуем, как инверсия зависимостей играет ключевую роль в реализации гексагональной архитектуры.
Программирование на Go (Golang): Bootcamp по Go 2023
Go (Golang) Programming The Complete Go Bootcamp 2023
Этот курс охватывает все основные темы, включая указатели, методы и интерфейсы (Go OOP), параллелизм (Goroutines, Channels, Mutexes, WaitGroups ), пакеты и модули Go, а также многое другое!
Fullstack React и GoLang: Дизайн в реальность, Volume 1
Fullstack React & GoLang: Design to Reality Volume 1
Используя GoLang в качестве нашей серверной системы и Mongo DB для хранения данных, мы создадим интерфейс c React Hooks и Context, Styled Components и React Router.
+2
[Книга] Let's Go! Научитесь создавать профессиональные веб-приложения с Golang
The last update for this course on Udemy - 07.2022.
Thanks!
Автор что-то постоянно делает, но практически не объясняет, зачем он это делает, всё очень поверхностно. Примерно с 30 урока я полностью перестал понимать, что происходит.
Бесит, когда что-то делается не правильно, а потом рефакторится - пустая трата времени. Каждый напишет код по своему и, мне кажется, рефакторинг - это отдельная тема, когда очень хорошо понимаешь код.
То что он делает, это просто оптимизация, сначала выносит кеш в отдельный файл, чтобы он не создавался (кеш) каждый раз, когда запрашивается страница. То есть, чтобы он существовал постоянно независимо оттого какую ты страницу запрашиваешь, потом, мы извлекаем из кеша этот шаблон, чтобы лишний раз не обращаться к более медленной памяти (то есть, к диску). Это уменьшает latency.
Найти данный курс можешь на desirecourse - погугли, не так сложно. Учти, что тебе нужен будет торрент-клиент.