Learning Path Go Advancing Into Web Development With Go Free Download
Last updated 11/2017MP4 | Video: h264, 1280×720 | Audio: AAC, 44.1 KHzLanguage: English | Size: 1.30 GB | Duration: 12h 52m
Harness the power of Go to level up your skillsets in web development and build web apps like a pro
What you’ll learn
Perform DOM operations with GopherJS
Upload client-side image and client-side forms
Create a 3D scene in the web browser
Implement a single page application
Build a feature-rich social media website
Manage requests and responses
Create custom middleware
Build web forms with validation and security in mind
Create functionality to upload and process images and videos
Implement a custom datastore for a relational database, document database, and an in-memory database
Explore the fundamental Concepts of Go
Write a unit test in Golang
Create a simple web server instance for the GopherFace website
Requirements
This Learning Path provides a pragmatic approach to learning frontend web development using Go. Each video provides in-depth knowledge on a topic with a number of hands-on examples. As you progress through the Learning Path, we continue to elevate your skills to the next level. Filled with hands-on examples, this Learning Path will help you learn how to perform real- web development using Go. You will learn to build various applications and enhance them.
Description
Go is one of the most powerful, efficient, and highly-performant programming languages. Go has seen an increased rate of adoption mainly because it is lightweight, easy to use, and displays great robustness when perfog in a variety of domains. Go is a modern language, created by a team of researchers from Google that is an ideal choice for all the levels of web development. Go is not only a powerful tool that can be utilized on the server-side but one that can be utilized on the client-side as well. If you’re interested to imbibe the skills of Go programming language and become a full-stack web developer, then you should opt for this Learning Path.
Packt’s Video Learning Paths are a series of individual video products put together in a logical and stepwise manner such that each video builds on the skills learned in the video before it.
The highlights of this Learning Path are
Build a feature-rich social media website
Build functionality for user authentication and session management
Create a simple web server instance for the GopherFace website
Build your first real- web application: a chat server
Let’s take a quick look at your learning journey. In this Learning Path, you will be provided deep insight into frontend web development using Go. It starts off by covering the fundamental mechanics of frontend web development such as perfog common DOM operations, accessing native javascript functionality, making XHR calls, rendering templates on the client-side, transmitting Gob encoded data, and communicating over a WebSocket connection. You will then demonstrate how to create a single page application by implementing client-side routing and directly rendering templates in the web browser itself. Utilizing the valuable knowledge presented in this Learning Path, you will be able to build GopherFace, a fully functioning social media website with incredible features.
Further, you will learn backend web development using Go. You will go through essential concepts which include web templates, the model view controller pattern, managing requests and responses, and building web forms. You will also learn how to create real-world solutions such as uploading image/video files, implementing a datastore for a variety of databases (relational, document, and in-memory), creating secure cookies, implementing authentication middleware, and implementing an asynchronous task queue to perform long-running tasks in the background.
In addition to getting you up to speed with backend web development practices, this Learning Path will also provide you with helpful advice and techniques that will guide you on your way to becoming a successful Go programmer.
The projects also demonstrate the key features of Go in action, such as concurrency, and will start to explore the rich ecosystem of open source libraries and frameworks that are being continually developed for the language.
By the end of this Learning Path, you will learn the tricks to build robust, secure, and fully-featured applications for the web. You will have everything you need to go out into the wild with Go to build projects of your own and become a full-stack Go web developer.
Meet Your Experts
We have combined the best works of the following esteemed authors to ensure that your learning journey is smooth
Kamesh Balasubramanian is the founder and CEO of Wirecog, LLC. He is the inventor of Wireframe Cognition (Wirecog), an award-winning, patented technology that allows machines to understand wireframe designs and produce source code from them. Kamesh has over 20 years’ software development experience and has implemented numerous solutions in the advertising, entertainment, media, publishing, hospitality, videogame, legal, and government sectors. He is an award-winning, professional member of the Association for Computing Machinery and an InfyMaker Award winner. He was recognized as a Maker of Change at the 2016 World Maker Faire in New York and, upon request, has demonstrated Wirecog at MIT.
Ben Tranter is a developer with nearly six years’ experience. He has worked with a variety of companies to build applications in Go, in the areas of data mining, web back ends, user authentication services, and developer tools, and is a contributor to a variety of open source Go projects.
Rostislav Dzinko is a software architect who has been working in the software development industry for more than six years. He was one of the first developers who started working with the Go language far earlier than the first official public release of Go 1.0 took place. Rostislav uses the Go language daily and has successfully used it in production for more than two years, building a broad range of software from high-load web applications to command-line utilities. He has a Master’s degree in Systems Eeering and has completed a PhD thesis.
Overview
Section 1: Front-End Web Development using Go
Lecture 1 The Course Overview
Lecture 2 Introduction to GopherJS
Lecture 3 Basic DOM Operations
Lecture 4 The jsbuiltin Binding
Lecture 5 Making XHR Calls
Lecture 6 Rendering Client-Side Templates
Lecture 7 Sending Gob Encoded Data over XHR
Lecture 8 Websocket Client
Lecture 9 Rendering a 3D Gopher
Lecture 10 Dynamically Resizing the 3D Gopher
Lecture 11 Panning the Camera Around the 3D Gopher
Lecture 12 Introduction to Local Storage
Lecture 13 Reading and Writing to Local Storage
Lecture 14 Instantly Kickstarting Go Projects
Lecture 15 Introduction to Single Page Architecture
Lecture 16 Implementing Client-Side Routing
Lecture 17 Introduction to Template Sets
Lecture 18 Implementing Client-Side Templates
Lecture 19 The Profile
Lecture 20 Profile Image Upload
Lecture 21 Finding New Friends
Lecture 22 Friends List
Lecture 23 The Social Media Feed
Lecture 24 Extending GopherFace
Section 2: Back-End Web Development using Go
Lecture 25 The Course Overview
Lecture 26 Dressing up Your Web App with Templates
Lecture 27 Templates in Go
Lecture 28 Custom Template
Lecture 29 Model View Controller
Lecture 30 Request Routing with Gorilla Mux
Lecture 31 Middleware
Lecture 32 HTTP Request Context
Lecture 33 Rest API
Lecture 34 Building a Web Form
Lecture 35 Extracting Web Form Data
Lecture 36 Web Form Validation
Lecture 37 Web Form Security
Lecture 38 Social Media Post Form
Lecture 39 Introduction to File Uploads
Lecture 40 Image Upload
Lecture 41 Video Upload
Lecture 42 Introduction to MySQL
Lecture 43 Implementing a MySQL Datastore
Lecture 44 Introduction to MongoDB
Lecture 45 Implementing a MongoDB Datastore
Lecture 46 Introduction to Redis
Lecture 47 Implementing a Redis Datastore
Lecture 48 TLS Web Server Instance
Lecture 49 Verifying User Credentials
Lecture 50 Secure Cookie
Lecture 51 User Session
Lecture 52 Authentication Middleware
Lecture 53 Implementing an Asynchronous Task Queue
Lecture 54 Image Resizing as an Asynchronous Task
Section 3: Go Essentials for Full Stack Web Development
Lecture 55 The Course Overview
Lecture 56 A Brief Introduction to Programming
Lecture 57 The Gist of Go
Lecture 58 Installing Go
Lecture 59 Configuring Go
Lecture 60 Basics – Variable Declaration, Built-in Types, Constants
Lecture 61 Packages
Lecture 62 Functions
Lecture 63 Conditional and Loops
Lecture 64 Command-line Program
Lecture 65 Username Syntax Checker
Lecture 66 Arrays
Lecture 67 Slices
Lecture 68 Maps
Lecture 69 Types and Interfaces
Lecture 70 Social Media Post
Lecture 71 Concurrency Versus Parallelism
Lecture 72 Goroutines
Lecture 73 Channels
Lecture 74 Range Over Channels
Lecture 75 Mutexes and Wait Groups
Lecture 76 Concurrent Pi Computation
Lecture 77 The Go Tool Chain
Lecture 78 Documentation in Go
Lecture 79 Testing in Go
Lecture 80 Unit Testing the Username Syntax Checker
Lecture 81 An Introduction to HTTP
Lecture 82 The net/http Package
Lecture 83 A Go Web Server Instance
Section 4: Go Projects
Lecture 84 Project Showcase
Lecture 85 Installing Go
Lecture 86 A Simple Static File Server
Lecture 87 Accepting Command-line Arguments
Lecture 88 Compiling to a Statically Linked Binary
Lecture 89 Dynamic Content with Go
Lecture 90 Handling GET and POST Requests
Lecture 91 Connecting to a Database
Lecture 92 Writing Tests in Go
Lecture 93 Variadic Functions, Function Chaining, and Callbacks
Lecture 94 Logging and Analytics
Lecture 95 Error Handling
Lecture 96 Advanced Middleware
Lecture 97 Usernames and Passwords
Lecture 98 The Password Reset E-mail
Lecture 99 Sessions
Lecture 100 Sessionless, Passwordless Authentication
Lecture 101 Web Application Security
Lecture 102 JSON in Go
Lecture 103 Streams and JSON
Lecture 104 Buffers
Lecture 105 Image Handling
Lecture 106 Concurrency
Lecture 107 A Simple Chat Server
Lecture 108 An Advanced Chat Server
Lecture 109 Real- Notifications
Lecture 110 Deployment Options
Lecture 111 Automated Deployments
Lecture 112 Continuous Integration
Lecture 113 Debugging
Lecture 114 Reflection
Lecture 115 Performance
This course is targeted at Go developers interested in learning how to use Go to build powerful web applications, and who want to learn full-stack web development using Go. Anyone who want to harness the power of Go, both on the backend and frontend, to create sophisticated, efficient, and production-ready web applications will also benefit from this Learning Path.
ZAomPTz4__LEARNING_P.part1.rar – 1.0 GB
ZAomPTz4__LEARNING_P.part2.rar – 305.0 MB