Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying SignalR: Real-time Application Development - Second Edition
  • Table Of Contents Toc
SignalR: Real-time Application Development - Second Edition

SignalR: Real-time Application Development - Second Edition

By : Einar Ingerbrigsten
3.7 (3)
close
close
SignalR: Real-time Application Development - Second Edition

SignalR: Real-time Application Development - Second Edition

3.7 (3)
By: Einar Ingerbrigsten

Overview of this book

With technology trends, demands on software have changed with more and more skilled users. Over the past few years, with services such as Facebook, Twitter and push notifications on smartphones, users are now getting used to being up to date with everything that happens all the time. With SignalR, the applications stay connected and will generate notifications when something happens either from the system or by other users thus giving new opportunities to enter into this new, exciting world of real-time application development. This is a step-by-step guide that follows a practical approach helping you as a developer getting to get started with SignalR by learning its fundamentals. It will help you through building real-time applications using the new methods and functions in the SignalR framework. Starting from getting persistent connections with the server, you will learn the basics of connecting a client to the server and how the messaging works. This will be followed by setting up a hub on the server and consuming it from a JavaScript client. Next you will be taught how you can group connections together to send messages. We will then go on to know how you can have state in the client to handle specific operations like connecting or disconnecting. Then, moving on you will learn how to secure your SignalR connections using OWIN and scaling SignalR across multiple servers. Next you will learn building a client for WPF and building a client using Xamarin that targets Windows Phone, iPhone and Android. Lastly, you will learn how to monitor the traffic in SignalR using Fiddler, Charles and hosting SignalR using OWIN.
Table of Contents (13 chapters)
close
close
11
11. Hosting a Server Using Self-hosted OWIN
12
Index

Libraries and frameworks

We will not be doing much from scratch in this book as it does not serve our purpose. Instead, we will be relying on third-party libraries and frameworks to do things for us that don't have anything to do with the particular thing we will perform. The range of libraries will be big and some of these represent architectural patterns and decisions sitting behind them. Some of these are in direct conflict with each other and for consistency in your code base, you should pick one over the other and stick to it. The chapters in this book will make it clear what I consider as conflict and why and what libraries are right for you, whereas your architecture is something you will have to decide for yourself. This book will just show a few of the possibilities.

jQuery

Browsing the Web for JavaScript-related topics often yields results with jQuery mentioned in the subject or in the article itself. At one point, I was almost convinced that JavaScript started with $, followed by a dot, and then a function to perform. It turns out that this is not true. jQuery just happens to be one of the most popular libraries out there when performing web development. It puts in place abstractions for parts that are different between the browsers, but most importantly, it gives you a powerful way to query the Document Object Model (DOM) as well as modify pick it as your application runs. A lot of the things jQuery has historically solved are now solved by the browser vendors themselves by being true to the specifications of the standards, along with the standards. Its demand has been decreasing over the years, but you will find it useful if you need to target all browsers and not just the modern ones. Personally, I would highly recommend not using jQuery as it will most likely lead you down the path of breaking the SOLID principles and mixing up your concerns.

Tip

SignalR has a dependency on jQuery directly, meaning that all the web projects in this book will have jQuery in them as a result. The part of jQuery being used is the communication stack (anything else is not used). There are projects out there that aim towards trimming jQuery. You might find something that only holds the communication part of jQuery, reducing the payload dramatically, since I do not recommend using jQuery for DOM manipulation.

ASP.NET MVC 5

Microsoft's web story consists of two major and different stories at the root level. One of these is the story related to web forms that came with the first version of the .NET Framework back in 2002. Since then, it has been iteratively developed and improved with each new version of the framework. The other is the MVC story, which was started in 2007 with a version 1 release in 2009 that represents something very different and built from the ground up from different concepts than found in the web forms story. In 2014, we saw the release of version 5 with quite a few new ideas, making it even simpler to do the type of decoupling one aims for and also making it easier to bring in things (such as SignalR). We will use ASP.NET MVC for the first samples, not taking full advantage of its potential, but enough to be able to show the integration with SignalR and how you can benefit from it.

AngularJS

It seems that over the last couple of years, you can pretty much take any noun or verb and throw a JS behind it, Google it, and you will find a framework at the other end of it. All these frameworks often play as a part of the puzzle. Google introduced AngularJS a couple of years ago to cover more than just a little part of the puzzle, but it rather provides a broader perspective on client-side development on the Web. AngularJS consists of a core and modules that cover different aspects. With AngularJS, you get the opportunity to separate your code into smaller parts, promoting separation and lending itself to MVC and to a certain extent MVVM. Throughout this book, we will be using Angular for the web solution.

Twitter Bootstrap

In the interest of saving time and focusing more on code, we will "outsource" the design in this book and layout to Twitter Bootstrap (which you can access at http://getbootstrap.com). Bootstrap defines a grid system that governs all layouts and it also has well-defined CSS to make things look good. It comes with a predefined theme that looks great, and there are other themes out there if you want to change the themes.

CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
SignalR: Real-time Application Development - Second Edition
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist download Download options font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon