Visual Studio 2010 and.NET Framework 4 Training Workshop.

Slides:



Advertisements
Similar presentations
The Microsoft Technical Roadshow 2007 Language Enhancements and LINQ Daniel Moth Developer & Platform Group Microsoft Ltd
Advertisements

Ofir Aspis 1/2010 VS 2010 Targets High Level - IDE New Features VS 2010 As Editor and Platform Demo Editor features Extending.
Dynamic internals. Introductions  Alexandru Ghiondea  C# Compiler QA  
Visual Studio 2010 and.NET Framework 4 Bernard Fedotoff
 Anders Hejlsberg Technical Fellow Microsoft Corporation TL16.
Ken Casada Developer Evangelist Microsoft Switzerland
.NET 3.5 – Mysteries. NetFx Evolution NetFx 1.0 C# 1.0, VB 7.0, VS.NET NetFx 1.1 C# 1.1, VB 7.1, VS 2003 NetFx 2.0 C# 2.0, VB 8.0, VS 2005 NetFx 3.0 C#
Bart J.F. De Smet Software Development Engineer Microsoft Corporation Session Code: DTL304.
C#/.NET 5/4/ Ian Cooper
How to be a C# ninja in 10 easy steps. Benjamin Day.
Lisa Feigenbaum Community Program Manager Microsoft Corporation SESSION CODE: DEV04-INT.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
What’s New in C# 4.0? Pavel Yosifovich SELA Group
Visual Studio 2010 and.NET Framework 4 Training Workshop.
F# Shiva Srivastava David He Peter Bingel. Overview F# (pronounced "F sharp") is a functional and object oriented programming language for the Microsoft.NET.
Gurinder CTO. Lisa Feigenbaum Microsoft Program Manager Visual Studio Languages
demo video demo Dynamic Languages Simple and succinctImplicitly typedMeta-programmingNo compilation Static Languages RobustPerformantIntelligent.
Louis de Klerk Consultant Inobits Consulting DTL308.
Windows Azure AppFabric Access Control Service (ACS) v.2 (Beta) Prerequisites.
Neal Stublen Overview of.NET Windows Applications Microsoft Windows OS / Intel Platform Windows Application File SystemNetworkDisplay.
Eric Vogel Software Developer A.J. Boggs & Company.
Lesley Bross, August 29, 2010 ArcGIS 10 add-in glossary.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
Dynamic Languages & The.Net Framework Shay Friedman ActionBase
Alex Turner C# Compiler PM Session Code: DEV402 On the Dynamic menu today… The Dynamic Language Runtime How does it relate to the CLR? Dynamic in C#
 Jim Hugunin Partner Architect Microsoft Corporation TL10.
Calculator calc = GetCalculator(); int sum = calc.Add(10, 20); Calculator calc = GetCalculator(); int sum = calc.Add(10, 20); object calc.
Mads Torgersen, Microsoft.  Language INtegrated Query  An open multi-language query facility  Uses cool language stuff  Points into the future.
© FPT Software Advanced features in C# 1. © FPT Software Agenda Attributes Delegates & Events Anonymous Types & Dynamic Type Extension Methods Lambda.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
How to be a C# ninja in 10 easy steps Benjamin Day.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
Module 2 Introduction to Visual Studio 2010 and WPF Version 4.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
Lisa Feigenbaum Microsoft Program Manager Session Code: DEV314.
AUC Technologies LINQ (Language Integrated Query) LINQ Presented By : SHAIKH SHARYAR JAVED Software Engineer (Daedalus Software Inc.) Technology Teacher.
Ahmed Salijee Developer Advisor
IronRuby for the.NET Developer Cory Foy - Cory Foy, LLC + + =
Scott Hanselman Principal Program Manager Microsoft DTL303.
CIS 375—Web App Dev II ASP.NET 1 Getting Started.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
Jonathan Aneja Program Manager Microsoft Corporation Session Code: DTL336 Anders Hejlsberg Technical Fellow Microsoft Corporation.
Visual Studio 2010 and.NET Framework 4 Training Workshop.
Lap Around the.NET Framework 4 NameTitleCompany. A Look Back….NET 1.0.NET 1.1.NET NET CTP CLR 1.0 CLR 1.1 CLR 2.0 CLR.
Dynamic Languages Initiative Silverlight ASP.NET Web Services Summary.
M ICROSOFT.NET Kyle Adamski 10/15/2012. Road Map What is.NET? Common Language Runtime (CLR) Language Integrate Queries (LINQ).NET Pros.NET Cons Sources.
Luke Hoban Senior Program Manager Microsoft Session Code: DTL310.
© Copyright SELA software & Education Labs Ltd Baruch Hirsch St.Bnei Brak Israel 1 בס " ד.
Введение в DLR UNETA 16 апреля, 2010 Иван Колодяжный, Software Developer Teamdev Ltd.
Lucian Wischik SESSION CODE: DEV401. Advanced Use of the New Microsoft Visual Basic 2010 Language Features Lucian Wischik, VB spec lead.
61% YoY Growth.NET Active Developers (VS 2012+) 40%.NET Core downloads by new developers 62% GitHub contributions from outside of Microsoft (corefx.
Visual Studio 2010 and .NET Framework 4 Name Title
Part 1: Overview of LINQ Intro to LINQ Presenter: PhuongNQK.
Visual Studio 2010 and .NET Framework 4 Training Workshop
/* LIFE RUNS ON CODE*/ Konstantinos Pantos Microsoft MVP ASP.NET
Using Dynamic Languages to Build Scriptable Apps
C# in the Big World Mads Torgersen Program Manager
Visual Studio 2010 and .NET Framework 4 Training Workshop
.NET and .NET Core: Languages, Cloud, Mobile and AI
.NET and .NET Core 5.2 Type Operations Pan Wuming 2016.
Visual Studio 2010 和 .NET Framework 4 培训研讨会
Type system of Go/C# Seminar
.NET and .NET Core 9. Towards Higher Order Pan Wuming 2017.
Tech·Ed North America /18/2018 5:14 PM
6 Delegate and Lambda Expressions
1.2 Key Concepts and Walkthroughs
Visual Studio 2010 and .NET Framework 4 Training Workshop
Presentation transcript:

Visual Studio 2010 and.NET Framework 4 Training Workshop

Presentation Outline (hidden slide): Technical Level: 300 Intended Audience: Developers & Architects Objectives (what do you want the audience to take away): Understand the new features and improvements to C# 4.0 Understand the new features and improvements to VB 10 Understand the ongoing relationship between C# and VB as they both evolve Presentation Outline: Where we’re at today LINQ/Declarative Language Trends C# (Evolution -> C# 4.0) Co-Evolution VB (Evolution -> VB 10) DLR

What’s New In C# 4.0 and Visual Basic 10 Name Title Organization

Where We’re At Today Our managed languages are starting to share some very similar features: Functional Concise Declarative

Before IList FindParentsWithChildNamed(string childName) { var matches = new List (); foreach(var person in _people) { foreach(var child in person.Children) { if (child.Name.Equals(childName)) { matches.Add(person); break; } return matches; } LINQ, The Power of Declarative

IList FindParentsWithChildNamed(string childName) { var matches = from person in people from child in person.Children where child.Name.Equals(childName) select person; return matches.ToList(); } After LINQ, The Power of Declarative

Why Declarative Matters… ImperativeDeclarative What How

Addressing Language Trends Declarative ConcurrentDynamic

The Evolution of C# C# 1.0 C# 2.0 C# 3.0 Managed Code Generics LINQ C# 4.0 Dynamic

New C# 4.0 Features 1.Late-Binding Support 2.Named and Optional Parameters 3.Improved COM Interop 4.Covariance and Contravariance

Simplifying Your Code with C# 4.0

Co-evolving C# and VB Think of co-evolution as a game of leap-frog…

There’s a problem when co-evolution doesn’t exist…

The Evolution of Visual Basic VB1 – VB3 VB4-VB6 VB7-VB9 Windows Programming Made Easy Components Made Easy Power and Simplicity for.NET VB10 Continuing the trend

New VB10 Features 1.Auto-Implemented Properties 2.Collection Initializers 3.Statement Lambdas 4.Covariance and Contravariance 5.Implicit Line Continuation

VB 10

Why a “Dynamic Language Runtime”? Common Language Runtime Statically-Typed C# VB Ruby Python Dynamically-Typed

Why a “Dynamic Language Runtime”? Common Language Runtime Statically-Typed C# VB Ruby Python Dynamically-Typed Dynamic Language Runtime

Python Binder Ruby Binder COM Binder JScript Binder Object Binder.NET Dynamic Programming Dynamic Language Runtime Expression Trees Dynamic Dispatch Call Site Caching IronPython IronRuby C# VB.NET Others…

Dynamically Typed Objects Calculator calc = GetCalculator(); int sum = calc.Add(10, 20); object calc = GetCalculator(); Type calcType = calc.GetType(); object res = calcType.InvokeMember("Add", BindingFlags.InvokeMethod, null, new object[] { 10, 20 }); int sum = Convert.ToInt32(res); ScriptObject calc = GetCalculator(); object res = calc.Invoke("Add", 10, 20); int sum = Convert.ToInt32(res); dynamic calc = GetCalculator(); int sum = calc.Add(10, 20); Statically typed to be dynamic Dynamic method invocation Dynamic conversion

Dynamic Language Interop

Summary… 1.Targeting the current trends in programming languages 2.Addressing current pain points in developing for Windows and the.NET Framework 3.Laying the foundation to enable developers to solve tomorrow’s problems

What Is F#? F# Is… 1.A Functional Programming Language derived from OCaml and the ML family of languages 2.Included with Visual Studio Very good for compute-intensive problems, highly parallel problems, and language-oriented programming