48
A creative technology company

Best of Microsoft Dev Camp 2015

Embed Size (px)

Citation preview

Page 1: Best of Microsoft Dev Camp 2015

A creative technology company

Page 2: Best of Microsoft Dev Camp 2015

Web Front End Web

StandardsIntroduction to

ASP.NET & Visual Studio

Web Tools

API Services for both web and devices

Azure

ASP.NET UpdatesVisual Studio + Web EssentialsASP.NET 5 Preview

Building web front ends for both desktop and mobile using the latest web standards

How does ASP.NET Web API fit in?Understanding HTTP APIsIntroduction to Web APIConsuming Web APIs in web appsConsuming Web APIs in client apps

Real world examples and scenarios and how Azure solves the problem

1

2 2

3

4

1 2 3 4 5

Microsoft Dev Camp 2015 Overview

Introduction to the real-time webASP.NET SignalRBuilding in real-time

Real-time Communicatio

ns with SignalR5

Page 3: Best of Microsoft Dev Camp 2015

Introduction to ASP.NET & Visual Studio Web Tools

Page 4: Best of Microsoft Dev Camp 2015

Top Updates in ASP.NET 4.5+

One ASP.NET Bootstrap Templates ASP.NET Identity

OWIN Web Form Model Binding

HTTP/2 Support

.NET Compiler Platform

(“Roslyn”)

ASP.NET 5(pre-

release)

Page 5: Best of Microsoft Dev Camp 2015

One ASP.NET

ASP.NET

WebForm

s

SitesWeb

Pages

Single

PageApps

MVC WebAPI

SignalR

Services

Page 6: Best of Microsoft Dev Camp 2015

One ASP.NETVisual Studio 2013 – New ASP.NET Project Visual Studio 2015 – New ASP.NET Project

Page 7: Best of Microsoft Dev Camp 2015

Bootstrap

Page 8: Best of Microsoft Dev Camp 2015

ASP.NET Identity

The ASP.NET Identity system is designed to replace the previous ASP.NET Membership and Simple Membership systems. It includes profile support, OAuth

integration, works with OWIN, and is included with the ASP.NET templates shipped with Visual Studio 2013.

The ASP.NET Identity system from ASP.NET 4.x forms the basis for the ASP.NET Identity system used in ASP.NET 5

Page 9: Best of Microsoft Dev Camp 2015

OWIN(Open Web Interface for .NET)

Owin is a new standardised interface between web servers and web applications. It is meant as a away to break up the tight coupling between ASP.NET and IIS. With IIS supporting Owin it is possible to run other Owin-enabled frameworks such as Nancy on IIS. With Microsoft’s web frameworks

depending on Owin and not IIS it is possible to run those in other environments, such as self hosting within a process or on a web server on linux running Mono. SignalR and Web API already uses Owin which means that they can be self hosted and other cool stuff. ASP.NET MVC6 which is part of

ASP.NET vNext will be completely based on Owin.

Page 10: Best of Microsoft Dev Camp 2015

Web Forms Model Binding

Better separation of concernsShare models with ASP.NET MVC, Web API

Page 11: Best of Microsoft Dev Camp 2015

HTTP/2 Support

Binary transmission instead of text

One connection to the server - parallel loading

of resources

Servers can now “push” responses proactively into

client caches

Fully multiplexed instead of ordered and

blocking

Header compression is now used to reduce

overhead

Page 12: Best of Microsoft Dev Camp 2015

.NET Compiler Platform (“Roslyn”)

The .NET Compiler Platform (“Roslyn”) allows tools and end users to share in the wealth of information compilers have about our code. Instead of being opaque

source-code-in and object-code-out translators, through the .NET Compiler Platform (“Roslyn”), compilers become platforms—APIs that you can use for code

related tasks in your tools and applications.

FROMIsolated/closed compilers

Hard to extend dev experience

TOAPI: open platform

Rich IDE experiences/refactoringCode analysis

Custom diagnosticsOpen Source compilers

Page 13: Best of Microsoft Dev Camp 2015

ASP.NET 5

Totally Modular Open Source with Contributions

Seamless transition from on-premises to

cloud

Choose your Editors and Tools

Faster Development Cycle

Cross-Platform

Page 14: Best of Microsoft Dev Camp 2015

VISUAL STUDIO 2015Web Essentials

JSON Editor

Browser Link

NPM Integration

HTML Editor JavaScript Editor

Page 15: Best of Microsoft Dev Camp 2015

VS Web Essentials

Page 16: Best of Microsoft Dev Camp 2015

BrowserLinkBrowser Link is just a channel between your Visual Studio IDE and any open browser. This will allow dynamic

data exchange between your web application and Visual Studio.

Page 17: Best of Microsoft Dev Camp 2015

NPM Integration

Page 18: Best of Microsoft Dev Camp 2015

JSON Editor• Auto-completion• Tooltips• Supports SchemaStore.org• Powers NPM, Bower editing

Page 19: Best of Microsoft Dev Camp 2015

HTML EditorAngular directives and attributes

Bootstrap class IntelliSenseWeb Components and custom

elements

Page 20: Best of Microsoft Dev Camp 2015

JavaScript Editor• AngularJS Support• ES6 features

• Classes• Arrow Functions• Template Strings

• JSDoc IntelliSense• JSX (React.js)

Page 21: Best of Microsoft Dev Camp 2015

Building web front ends for desktop and mobile using the latest web standards

Page 22: Best of Microsoft Dev Camp 2015

Overview

HTML5 + CSS3 + JS Browser Standards & Microsoft Edge

Interoperability Features

Feature Detection NOT

browser detection

Responsiveness

Javascript Library

Overview

Bootstrap Fundamental

s

Javascript Tools

Page 23: Best of Microsoft Dev Camp 2015

API Services for both web and devices

Page 24: Best of Microsoft Dev Camp 2015

How ASP.NET Web API Fits In

ASP.NET Core

Web API

JSON XML

Web Forms

HTML

MVCWeb Pages

Page 25: Best of Microsoft Dev Camp 2015

DEMO //Web API /Routing /Manipulating Responses /Posting Data

Page 26: Best of Microsoft Dev Camp 2015

Running, improving and maintaining a site in the real world

Page 27: Best of Microsoft Dev Camp 2015

ScaleLooking at Real World Scenarios

Scenario description: Your site load varies over time.You need to adapt.

Smoothly.

INCREASING

BATCH

Load

Noload

Load

PREDICTABLE

Load

UNPREDICTABLE

Load

Page 28: Best of Microsoft Dev Camp 2015

ScaleLooking at Real World Scenarios

Preserving Server Bandwidth?

Your servers are wasting bandwidth serving static files.

!Serve static files from blob storage.

This is a step towards to delivering content from a content delivery network (CDN).

Page 29: Best of Microsoft Dev Camp 2015

ScaleLooking at Real World Scenarios

Caching?

Your servers have finite resources.

You don’t want to repeat work you don’t have to.

!Store ASP.NET page output cache in Microsoft Azure Caching Service.

Page 30: Best of Microsoft Dev Camp 2015

ScaleLooking at Real World Scenarios

Manual Scale?

You need more server resources..

!Add more servers (horizontal scaling).

Use more powerful servers (vertical scaling).

Page 31: Best of Microsoft Dev Camp 2015

ScaleLooking at Real World Scenarios

Manual Scale?

You need more server resources..

!Add more servers (horizontal scaling).

Use more powerful servers (vertical scaling).

Page 32: Best of Microsoft Dev Camp 2015

ScaleLooking at Real World Scenarios

Auto-Scale?

Manual scaling reaction time means outages.

Manual scaling is busy work..

!Use auto-scale.

Page 33: Best of Microsoft Dev Camp 2015

Click to add picture / image

Page 34: Best of Microsoft Dev Camp 2015

ChangeLooking at Real World Scenarios

Scenario description: Your site isn’t done when you deploy to production.

You need to add new features.Change adds risk.

.

Page 35: Best of Microsoft Dev Camp 2015

ChangeLooking at Real World Scenarios

Manage database schema?

Your database and application code need to stay in sync.

!Use Entity Framework Data Migrations.

Page 36: Best of Microsoft Dev Camp 2015

ChangeLooking at Real World Scenarios

Manage deployments?

People sometimes make mistakes

!Take advantage of available Microsoft Azure services.

Page 37: Best of Microsoft Dev Camp 2015

Click to add picture / image

Page 38: Best of Microsoft Dev Camp 2015

Multiple EnvironmentsLooking at Real World Scenarios

Scenario description: Running a real site requires multiple internal environments.

Global availability requires multiple worldwide deployments..

Page 39: Best of Microsoft Dev Camp 2015

Multiple EnvironmentsLooking at Real World Scenarios

Dev / Test environments?

Setting up development web server environments is time consuming.You need to see your code running somewhere other than deployment before

deploying.

!Environment consistency via deployment setup in Microsoft Azure Web Apps or VM

images.Cost savings by paying only for what you need.

Page 40: Best of Microsoft Dev Camp 2015

Multiple EnvironmentsLooking at Real World Scenarios

Global Reach?

It’s hard to deploy a consistent environment in multiple datacenters.

!Use automated deployment workflow to ensure consistency in deployment process.

Page 41: Best of Microsoft Dev Camp 2015

Multiple EnvironmentsLooking at Real World Scenarios

Continuous Delivery?

Bugs and issues in your code get harder to fix the longer it takes to find out about them.

Deployment is a risky, error-prone operation.

!Use continuous integration to automate build, unit & integration testing.

Use automated deployment workflow to ensure consistency in deployment process.

Page 42: Best of Microsoft Dev Camp 2015

Real-time Communications with SignalR

Page 43: Best of Microsoft Dev Camp 2015

Without real-time

Client Browser

WebServer

Got Data?Got Data?Got Data?Got Data?

Here’s some data!Got Data?Got Data?Got Data?Got Data?

Page 44: Best of Microsoft Dev Camp 2015

With real-time

Client Browser

WebServer

I do real time, do you?

Absolutely!

Let’s Party in Real-time!

Page 45: Best of Microsoft Dev Camp 2015

With real-time

Client Browser

WebServerSignalR!!!

Page 46: Best of Microsoft Dev Camp 2015

What does SignalR do & how does it work?

DEMO

Page 47: Best of Microsoft Dev Camp 2015

FURTHER RESOURCES & DEMOS:http://aka.ms/webcapms-training-kit

AZURE DEMO SIGN UP:http://aka.ms/webcamps-azure

Page 48: Best of Microsoft Dev Camp 2015

THANK YOU!