Lesson 5.15: Retrieve Remaining Game Data from Services

Lesson 5.14 laid out the detailed description of the changes required to update ItemFactory to fetch ItemTemplate data from our game services. In this lesson, we're going to update the remaining factories to provide the same functionality. We will use the same patterns we did for ItemFactory and make use of the GameServiceClient to communicate … Continue reading Lesson 5.15: Retrieve Remaining Game Data from Services

Lesson 5.14: Use Service Client to Retrieve ItemTemplates From Game Services

In this lesson, we will refactor the ItemFactory to use the GameServiceClient to load item data from our game services rather than from the local resource file. We will fetch the ItemTemplates during the application startup so that any latency is part of the launch. We already have loading logic and a progress indicator at … Continue reading Lesson 5.14: Use Service Client to Retrieve ItemTemplates From Game Services

Lesson 5.13: Build Reusable Service Client for Game Engine

After spending most of this chapter working to create our game services, we are going to return to the SimpleRPG game engine. We want to replace our local game data files with requests to our game services. That way we can retrieve updated data from the services and cache it locally for the running game … Continue reading Lesson 5.13: Build Reusable Service Client for Game Engine

Lesson 5.12: Create CD Pipeline for Azure Functions App

In lesson 5.3, we set up a continuous delivery pipeline for our SimpleRPG game Blazor app. We also need to set up a deployment pipeline for our game services. This pipeline will release the latest game services build to our Azure account and Functions App resource. The specific steps of this deployment script will be … Continue reading Lesson 5.12: Create CD Pipeline for Azure Functions App

Lesson 5.11: Create CI Pipeline for Azure Functions Project

Early in our development of the SimpleRPG game project, we set up a continuous integration pipeline to automate our build with every repo check-in. Now we are going to set up another pipeline for our game services. Since the services are in their own repository and solution and have different deployment requirements, we will need … Continue reading Lesson 5.11: Create CI Pipeline for Azure Functions Project

Lesson 5.10: Complete the Game Services

In this lesson, we're going to build out the three remaining services quickly. We will continue to use the same patterns (DTOs, repositories, and service helper class) that we've used in the previous lessons. If you need to review any of the individual patterns, please review those lessons. QuestTemplateService 1. Create the quests.json file in … Continue reading Lesson 5.10: Complete the Game Services

Lesson 5.9: Refactor Service Code and Create LocationTemplateService

With our implementation of ItemTemplateService and MonsterTemplateService, there is a lot of repetitive code. The act of getting data from the query string and calling the appropriate repository method is boilerplate that can happen in a lot of our services. This code is a great candidate for refactoring into a helper class that contains the … Continue reading Lesson 5.9: Refactor Service Code and Create LocationTemplateService

Lesson 5.8: Microservices Concepts With MonsterTemplateService

With our first service complete, it's time for us to look into creating more services. Each of our data files in the SimpleRPG game can really be thought of as its own service. Each one represents some classes and domain model like items or monsters. And while they may interact with one another (monsters can … Continue reading Lesson 5.8: Microservices Concepts With MonsterTemplateService

Lesson 5.7 Design REST Service for Data Retrieval

REST web services (Representational State Transfer) is a style of architecture based on a set of principles that describe how networked resources are defined and addressed. It is important to note that REST is a style of software architecture as opposed to a set of standards. As a result, applications or architectures are sometimes referred … Continue reading Lesson 5.7 Design REST Service for Data Retrieval

Lesson 5.6: Build Repository Pattern for Data Access

With our simple Azure Functions web service in place, we can now focus on providing more complex functionality from our service. We will focus on read-only service features for now, since we're reading game data and no persisting any data yet. We want to build a service that will return lists of elements based on … Continue reading Lesson 5.6: Build Repository Pattern for Data Access