0
© Copyright SELA software & Education Labs Ltd. | 14-18 Baruch Hirsch St Bnei Brak, 51202 Israel | www.selagroup.com
SELA ...
It’s been 8 months since we last
met.
There’s enough new technology
from Microsoft to fill three
conferences.
Azure .NET M...
New Azure Features
Azure File
Service
API
Management
Automation
Remote App
Hybrid
Connections
Redis Cache
Service
Azure .N...
Major Azure Updates
Web Sites
• Java support
• Backup and restore
• Staged publishing
Virtual Machines
• Chef and Puppet
a...
.NET Native
Precompiles .NET apps to optimized native code
Uses the C++ optimizing compiler backend
End result does not de...
RyuJIT
RyuJIT is a rewrite of the CLR JIT compiler
Better throughput and code quality
Currently in CTP4
Azure .NET Mobile ...
Microsoft.Bcl.Simd
Modern processors can issue 4-8 integer/fp
operations per cycle; RyuJIT supports it
int ArithmeticSerie...
Roslyn and C# 6.0
Roslyn is coming, in the meantime many new
C# 6.0 features were publicly revealed
And Roslyn went open s...
More C# 6.0 Features
using System.Math;
class Point(int x, int y) {
public int X { get; set; } = x;
public int Y { get; se...
ASP.NET vNext
Redesigned
ASP.NET
stack (MVC
6)
Cloud-
optimized
.NET (11MB)
available
through
NuGet
Multiple
side-by-side
...
Universal Apps
Windows Phone 8.1 is sufficiently converged
with WinRT to allow most code and UI to be
shared
Universal app...
Cordova Tools for Visual Studio
Bringing Cordova tools
for mobile apps into
Visual Studio
Multi-device hybrid app
template...
Xamarin Partnership
Xamarin allows building iOS and Android apps
in C# and Visual Studio
Xamarin Forms beta announced with...
C++ Conformance and Library
Updates
C++ 14 is done, C++ 17 work is underway
Largest focus is on libraries: file system*, n...
This Is, Or Could Be, C++
async optional<string> translate_async(string term);
async auto translate(vector<string> terms)
...
Questions
© Copyright SELA software & Education Labs Ltd. | 14-18 Baruch Hirsch St Bnei Brak, 51202 Israel | www.selagroup.com
SELA ...
Upcoming SlideShare
Loading in...5
×

State of the Platforms

636

Published on

Presentation from SDP 2014 covering the new announcements in Microsoft Azure, .NET, mobile development, and C++.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
636
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "State of the Platforms"

  1. 1. © Copyright SELA software & Education Labs Ltd. | 14-18 Baruch Hirsch St Bnei Brak, 51202 Israel | www.selagroup.com SELA DEVELOPER PRACTICE JUNE 29 – JULY 3, 2014 Sasha Goldshtein State of the Platforms
  2. 2. It’s been 8 months since we last met. There’s enough new technology from Microsoft to fill three conferences. Azure .NET Mobile C++
  3. 3. New Azure Features Azure File Service API Management Automation Remote App Hybrid Connections Redis Cache Service Azure .NET Mobile C++ Related session: Microsoft Cloud, Monday 9:00am
  4. 4. Major Azure Updates Web Sites • Java support • Backup and restore • Staged publishing Virtual Machines • Chef and Puppet agents • A8 and A9 compute instances Mobile Services • .NET backend • Offline sync • Sencha touch support • Xamarin support Storage • Read-only geo- redundant storage • Import/export service Azure .NET Mobile C++ Related session: Microsoft Cloud, Monday 9:00am
  5. 5. .NET Native Precompiles .NET apps to optimized native code Uses the C++ optimizing compiler backend End result does not depend on the .NET Framework installation C# code IL assembly .ildll Native .exe/.dll csc ilc nutsi CoreFX MRT .NET Native Toolchain Azure .NET Mobile C++
  6. 6. RyuJIT RyuJIT is a rewrite of the CLR JIT compiler Better throughput and code quality Currently in CTP4 Azure .NET Mobile C++ Source: Microsoft .NET Team Blog
  7. 7. Microsoft.Bcl.Simd Modern processors can issue 4-8 integer/fp operations per cycle; RyuJIT supports it int ArithmeticSeriesSumSimd(int n) { Vector4f vsums = new Vector4f(0, 0, 0, 0); Vector4f viter = new Vector4f(1, 2, 3, 4); Vector4f vstep = new Vector4f(4, 4, 4, 4); for (int i = 1; i <= n / 4; ++i) { vsums = vsums + viter; // ADDPS viter = viter + vstep; // ADDPS } return (int)(vsums.W + vsums.X + vsums.Y + vsums.Z); } Azure .NET Mobile C++ 32-bit float 32-bit float 32-bit float 32-bit float 32-bit float 32-bit float 32-bit float 32-bit float 32-bit float 32-bit float 32-bit float 32-bit float XMM0 XMM1 XMM0
  8. 8. Roslyn and C# 6.0 Roslyn is coming, in the meantime many new C# 6.0 features were publicly revealed And Roslyn went open source! var salaries = new Dictionary<string, int> { ["Kate"] = 1200, ["Dave"] = 1100 }; if (int.TryParse(1700, out var result)) { Console.WriteLine(result); } customer?.Address?.AddressLine[0]?.Print(); Azure .NET Mobile C++ Dictionary initializer Declaration expression Null propagation
  9. 9. More C# 6.0 Features using System.Math; class Point(int x, int y) { public int X { get; set; } = x; public int Y { get; set; } = y; public double Magnitude => Sqrt(X*X + Y*Y); } try { Parallel.ForEach(...); } catch (AggregateException ex) if (ex.Count > 1) { ... } Azure .NET Mobile C++ Using static membersPrimary constructor Auto-property initializers Expression member Exception filter
  10. 10. ASP.NET vNext Redesigned ASP.NET stack (MVC 6) Cloud- optimized .NET (11MB) available through NuGet Multiple side-by-side versions of .NET Live refresh of edited code through Roslyn Open source and cross- platform Related session: Introducing ASP.NET vNext, Tuesday 1:30pm Azure .NET Mobile C++
  11. 11. Universal Apps Windows Phone 8.1 is sufficiently converged with WinRT to allow most code and UI to be shared Universal app templates in Visual Studio (still creates two projects and shared files) Azure .NET Mobile C++ Related session: Developing XAML Apps for Multiple Devices, Tuesday 1:30pm
  12. 12. Cordova Tools for Visual Studio Bringing Cordova tools for mobile apps into Visual Studio Multi-device hybrid app templates Azure .NET Mobile C++ Related workshop: Building Mobile Web Apps with jQuery Mobile and PhoneGap, Wednesday
  13. 13. Xamarin Partnership Xamarin allows building iOS and Android apps in C# and Visual Studio Xamarin Forms beta announced with shared UI controls in addition to business logic Azure .NET Mobile C++ Related session: C# Everywhere: Introduction to Xamarin, Tuesday 2:35pm
  14. 14. C++ Conformance and Library Updates C++ 14 is done, C++ 17 work is underway Largest focus is on libraries: file system*, networking, concurrency*, parallel STL* * Previews available on CodePlex/Visual Studio “14” CTP Azure .NET Mobile C++ Related workshop: Making the Most of C++ 11/14, Wednesday/Thursday
  15. 15. This Is, Or Could Be, C++ async optional<string> translate_async(string term); async auto translate(vector<string> terms) { decltype(terms) results; for (auto term : terms) { auto translated = await translate_async(term); results.push_back(translated ? translated : "N/A"s); } parallel_sort(results.begin(), results.end()); return results; } Azure .NET Mobile C++ Related workshop: Making the Most of C++ 11/14, Wednesday/Thursday
  16. 16. Questions
  17. 17. © Copyright SELA software & Education Labs Ltd. | 14-18 Baruch Hirsch St Bnei Brak, 51202 Israel | www.selagroup.com SELA DEVELOPER PRACTICE JUNE 29 – JULY 3, 2014 Azure .NET Mobile C++ Sasha Goldshtein blog.sashag.net CTO, Sela Group @goldshtn Thank You!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×