Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

The Hong Kong University of Science and Technology

Learning Server-side Programming through Game Development

The Hong Kong University of Science and Technology via Coursera

Overview

Coursera Plus Annual Sale: All Certificates & Courses 25% Off!
This course offers a comprehensive understanding of web development, concentrating on essential server-side techniques. Topics include the HTTP protocol for browser-server communication, various methods of interaction between browsers and servers, and approaches for web application development. Students will gain hands-on experience in web server development using Node.js. The course will cover related browser-side techniques such as utilizing HTML forms, structuring data with JSON, and asynchronous JavaScript programming using promises. Additionally, students will explore AJAX for server communication and different web application architectures, including Single Page Applications (SPAs), Multi-Page Applications (MPAs), RESTful APIs, and MVC architecture. The curriculum also introduces web authentication, cookie management, and real-time communication using WebSockets. Throughout the course, students will engage in practical programming exercises, culminating in the development of a multi-player game project. By the end of the course, students will be equipped to apply the technologies and skills they have acquired to create engaging and comprehensive web applications.

Syllabus

  • Building a Simple Web Server
    • In this module, you will learn the fundamental HTTP process, which isessential for understanding browser-server communication. You will also discover how to build a web server using Node.js. Given the significant role of JSON in this communication, we will provide a brief introduction to it at the beginning of the module. Additionally, the module will conclude with a discussion on using HTML forms for sending information to the server.
  • JavaScript Promises and AJAX
    • In this module, you will learn how to use JavaScript promises and their associated programming techniques. You will apply these promises with AJAX, a method for acquiring server resources asynchronously. Next, you will be introduced to Single Page Applications (SPAs) and Multi-Page Applications (MPAs), two different approaches to building web applications. You will gain hands-on experience by exploring an example of building an SPA using AJAX and a Node.js web server.
  • Cookies, Authentication and Web Storage
    • In this module, you will be introduced to cookies, which enable you to store small pieces of data in the browser. You will also learn how to use cookies in server-side programs, with Node.js web servers as examples. By working with cookies, you will discover methods for implementing web authentication in web applications. Finally, in addition to cookies, you will explore an alternative approach to storing information inside browsers.
  • Using WebSocket and RESTful APIs
    • In this module, you will learn about WebSocket and RESTful APIs, two essential technologies for web development. You will explore WebSocket for real-time communication between browsers and servers, utilizing Socket.IO for practical implementation in Node.js. Additionally, you will be introduced to RESTful APIs, with a focus on various HTTP methods and their applications through a practical example involving a library system.
  • HTML Form and PHP
    • In this module, you will deepen your understanding of HTML forms, specifically focusing on using the POST method to handle file uploads and multi-part content in an Express web server. You will also get started with PHP, learning to write basic code, such as variables, control structures, and arrays. Finally, you will explore how PHP can be utilized to develop a RESTful server, building on an example covered in the previous module.
  • Multi Page Application (MPA)
    • In this module, you will learn how to build a Multi-Page Application (MPA) using template engines and the Model-View-Controller (MVC) architecture. You will explore the EJS template engine and how to pass variables to views for dynamic content generation. Additionally, you will gain practical experience in developing a web application using the MVC framework, through a stage-by-stage development of an example stock application.

Taught by

Gibson Lam

Reviews

Start your review of Learning Server-side Programming through Game Development

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.