best of microsoft dev camp 2015
TRANSCRIPT
![Page 1: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/1.jpg)
A creative technology company
![Page 2: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/2.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/3.jpg)
Introduction to ASP.NET & Visual Studio Web Tools
![Page 4: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/4.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/5.jpg)
One ASP.NET
ASP.NET
WebForm
s
SitesWeb
Pages
Single
PageApps
MVC WebAPI
SignalR
Services
![Page 6: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/6.jpg)
One ASP.NETVisual Studio 2013 – New ASP.NET Project Visual Studio 2015 – New ASP.NET Project
![Page 7: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/7.jpg)
Bootstrap
![Page 8: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/8.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/9.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/10.jpg)
Web Forms Model Binding
Better separation of concernsShare models with ASP.NET MVC, Web API
![Page 11: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/11.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/12.jpg)
.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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/13.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/14.jpg)
VISUAL STUDIO 2015Web Essentials
JSON Editor
Browser Link
NPM Integration
HTML Editor JavaScript Editor
![Page 15: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/15.jpg)
VS Web Essentials
![Page 16: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/16.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/17.jpg)
NPM Integration
![Page 18: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/18.jpg)
JSON Editor• Auto-completion• Tooltips• Supports SchemaStore.org• Powers NPM, Bower editing
![Page 19: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/19.jpg)
HTML EditorAngular directives and attributes
Bootstrap class IntelliSenseWeb Components and custom
elements
![Page 20: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/20.jpg)
JavaScript Editor• AngularJS Support• ES6 features
• Classes• Arrow Functions• Template Strings
• JSDoc IntelliSense• JSX (React.js)
![Page 21: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/21.jpg)
Building web front ends for desktop and mobile using the latest web standards
![Page 22: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/22.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/23.jpg)
API Services for both web and devices
![Page 24: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/24.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/25.jpg)
DEMO //Web API /Routing /Manipulating Responses /Posting Data
![Page 26: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/26.jpg)
Running, improving and maintaining a site in the real world
![Page 27: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/27.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/28.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/29.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/30.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/31.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/32.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/33.jpg)
Click to add picture / image
![Page 34: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/34.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/35.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/36.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/37.jpg)
Click to add picture / image
![Page 38: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/38.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/39.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/40.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/41.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/42.jpg)
Real-time Communications with SignalR
![Page 43: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/43.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/44.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/45.jpg)
With real-time
Client Browser
WebServerSignalR!!!
![Page 46: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/46.jpg)
What does SignalR do & how does it work?
DEMO
![Page 47: Best of Microsoft Dev Camp 2015](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/47.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022051707/58ee75001a28ab3d7d8b45b5/html5/thumbnails/48.jpg)
THANK YOU!