Building Battleship: A Hands-On Way to Learn How to Develop Event-Driven Microservices Using Spring Cloud Stream and TypeScript
Published: 2020-03-13 22:30:58

The post [You Sank My Battleship! A Hands-On Way to Learn How to Develop Event-Driven Microservices Using Spring Cloud Stream and TypeScript](https://solace.com/blog/battleship-microservices-typescript/) appeared first on [Solace](https://solace.com).


When it comes to building modern applications (and especially microservices), understanding the basics of messaging and event-driven architecture can be critical, difficult, and maybe even boring – especially when you’re presented with a rich choice of languages (Java, TypeScript, etc.), frameworks (Spring Cloud Stream, Aurelia JS, etc.), and patterns to choose from (request/reply, etc.)!

So, what better way to learn new tools and frameworks than by building something fun and familiar – an online version of the game Battleship! Take this free online course and in two hours you’ll build a working game of Battleship using TypeScript in Aurelia JS, Java in Spring Cloud Stream, and Solace [PubSub+ Event Broker: Cloud](https://solace.com/products/event-broker/cloud/).

[![battleship with pubsub+, typescript, and spring cloud stream](https://solace.com/wp-content/uploads/2020/01/Battleship-1024x549.png)](https://solace.com/wp-content/uploads/2020/01/Battleship.png)

You can take the course as a [codelab](https://codelabs.solace.dev/codelabs/solace-battleship/index.html) and/or at [Udemy](https://www.udemy.com/course/battleship-over-pubsub/?referralCode=BF575AB68D88AEF7289C).

**Is this course for you?**
---------------------------

Yes, if you are an enterprise developer building modern, distributed applications. And if you’re interested in learning more about popular and up-and-coming languages/frameworks (TypeScript in Aurelia JS and Java in Spring Cloud Stream). Oh, and if you’re keen to learn more about message exchange patterns and how to leverage them in event-driven design this course is _definitely_ for you.

**What should you already know?**
---------------------------------

There are a couple things you should already have some experience with before signing up for the course:

*   Previous development experience is required
*   Basic understanding of transmission control protocol (TCP) and networking is beneficial, but not necessary
*   Java Development Kit

**What you will learn:**
------------------------

*   How to develop event-driven microservices using Spring Cloud Stream and TypeScript (a superset of JavaScript, a hot new language for web app development)
*   Best practices to implement event-driven architecture for web applications
*   Why and how to use request/reply (as well as other [message exchange patterns](https://solace.com/blog/messaging-patterns-for-event-driven-microservices/)) over an [event broker](https://solace.com/what-is-an-event-broker/)
*   How to take logic out of the browser and put client-side logic on the server (vs. in the browser)
*   The value of event-driven design in architecting a distributed system

**How to get started: up your game with TypeScript and Java – for free!**
-------------------------------------------------------------------------

The Battleship course is broken into two components: Udemy videos and the codelab. The Udemy videos focus on the theory and fundamentals while the codelab applies the theory and fundamentals to an example application. Each lesson progressively builds in more functionality to the application.

The best way to consume this course is to watch the Udemy videos first and then get your hands dirty by typing out the code snippets found in the codelab.

If videos aren’t your thing, that’s okay — you’ll be able to complete the codelab without watching the Udemy video!

Get started now!

*   [Udemy: Battleship over PubSub+ with TypeScript and Java](https://www.udemy.com/course/battleship-over-pubsub/?referralCode=BF575AB68D88AEF7289C)
*   [Codelab: Building Battleship with TypeScript, Java, and Solace PubSub+](https://codelabs.solace.dev/codelabs/solace-battleship/index.html#0)

![You Sank My Battleship! ](https://play.vidyard.com/ffoYww2W3DVSLEReAkJsjV.jpg)

The post [You Sank My Battleship! A Hands-On Way to Learn How to Develop Event-Driven Microservices Using Spring Cloud Stream and TypeScript](https://solace.com/blog/battleship-microservices-typescript/) appeared first on [Solace](https://solace.com).