UDP Socket Programming For Distributed Computing in C#.Net
What you'll learn
- UDP socket programming in C# .Net, synchronous and aynchronous
- Foundations of distributed chat/IoT applications, communication components of multiplayer games, VoIP applications in C# .Net
- Using Newtonsoft JSON in client server socket based applications
Requirements
- Visual Studio 2017
- C# .Net
- Programming
Description
This course teaches C# .Net socket programming with UDP sockets in a hands-on and easy fashion. It is a carefully planned and crafted online course that takes the student by the hand and teaches them how to create quality distributed network applications using C# .Net step by step.
The first sections of this course cover the basics of computer networking and UDP socket programming in CSharp dot Net necessary for network and socket programming.
The following two sections will teach how to send and receive UDP broadcast in a command prompt C# .Net application using synchronous sockets with method calls such as Socket.Send and Socket.Receive. You will also learn how to convert between string and byte data types.
Once you're familiar with distributed network applications, the course takes you toward asynchronous socket programming. You will also learn about callback methods and how you can implement callbacks in C# .Net. I will also show you the publisher-subscriber model, AKA pub/sub model. We will implement the pub/sub model in our library project and the client/server applications using the library as well. We'll create event handlers and delegates and raise events as well.
We will use an Object Oriented approach for this course, following the principles of OOP. In the next section, we will implement a publisher/subscriber model in C# .Net to bridge the gap between the API solution classes and the WinForms-based front end.
Next, you will learn JSON (JavaScript Object Notation) and how you can add JSON functionality to your C# applications with Newtonsoft JSON .Net. Finally, we'll start implementing an application-level communication protocol in this section.
In the next section, you'll learn how to transmit binary data over a UDP socket in C# .Net. Then, for example, I will show you how to transfer png image files between multiple clients of your applications through the server. Again, the JSON-based protocol implemented in the previous section will play a key role here.
After watching this C short tutorial course, you'll be able to write your own distributed applications that communicate through the network, either WiFi or Ethernet. You will have the foundation knowledge needed to create C# .Net-based applications for IoT, computer telephony, VoIP, online gaming(e.g., Unity), and much more.
This course also shows you how to use String Interpolation, a C# 6 feature. You'll also learn how to debug network applications in Visual Studio and write code faster.
You don't need to learn C to work on this course.
Socket Java, python socket UDP
Who this course is for:
- Beginner/intermediate C# .Net developers working to complete a socket programming & network communications project
- University students learning distributed application programming
Featured review
Instructor
I am A person with many talents and interests, ranging from gardening to programming and poetry to cooking.
Right now I'm working as a Software Test Engineer. On my job I use Microsoft Coded UI, Selenium, and Appium for creating test automation scripts. It is also a part of my job to maintain these automation scripts and run them via CI/CD using TFS. Apart from teaching, I'm also learning how actively on Udemy and my core interests are Azure Devops.
I've been writing computer software code(C++, C# .Net) since 2006, creating awesome Android apps since 2012. I've been working as a freelance software developer since Nov. 2012.
I've extensively worked on network communications, computer telephony integration(CTI) using Microsoft TAPI 2.x and 3.x, and LDAP server programming(Active Directory). Android app development has been my focus as a freelancer, I've created and published several apps for clients and a couple for myself on Google Play store.
I've been sharing my knowledge through my blogs, and I am confident its time share more things that I've experienced with the world in a comprehensive video format.