C# 5.0 + VB 11.0                                           Windows Runtime + Asynchrony              C# 4.0 + VB 10.0     ...
varvar
var data = DownloadData(...);ProcessData(data);var
Task<T>  IAsyncOperation<T>
public async Task<XElement> GetXmlAsync(string url){    var client = new HttpClient();    var response = await client.GetA...
Demo
async        void   Task<T>await
Demo
__FILE__ and __LINE__ macros in C#?
public static class Trace{    public static void WriteLine(string message,        [CallerFilePath] string file = "",      ...
C# 5.0 + VB 11.0                                           Windows Runtime + Asynchrony              C# 4.0 + VB 10.0     ...
ClassMeta-programming                              Read-Eval-Print Loop                   public               Foo    Lang...
Language Service   Compiler APIsCompiler Pipeline   Metadata                     Import
Demo
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
The Future of C# and Visual Basic
Upcoming SlideShare
Loading in …5
×

The Future of C# and Visual Basic

2,929 views

Published on

More info on http://www.techdays.be

Published in: Technology
  • The future of C# and Visual Basic seems to be open source. Strange that Microsoft won't even answer the calls to open source the VB6 programming language. Yet VBA programming is supported in Office.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

The Future of C# and Visual Basic

  1. 1. C# 5.0 + VB 11.0 Windows Runtime + Asynchrony C# 4.0 + VB 10.0 Dynamic + Language Parity C# 3.0 + VB 9.0 Language Integrated Query C# 2.0 + VB 8.0 GenericsC# 1.0 + VB 7.0 Managed Code
  2. 2. varvar
  3. 3. var data = DownloadData(...);ProcessData(data);var
  4. 4. Task<T> IAsyncOperation<T>
  5. 5. public async Task<XElement> GetXmlAsync(string url){ var client = new HttpClient(); var response = await client.GetAsync(url); var text = response.Content.ReadAsString(); return XElement.Parse(text);} public Task<XElement> GetXmlAsync(string url) { var tcs = new TaskCompletionSource<XElement>(); var client = new HttpClient(); client.GetAsync(url).ContinueWith(task => { var response = task.Result; var text = response.Content.ReadAsString(); tcs.SetResult(XElement.Parse(text)); }); return tcs.Task; }
  6. 6. Demo
  7. 7. async void Task<T>await
  8. 8. Demo
  9. 9. __FILE__ and __LINE__ macros in C#?
  10. 10. public static class Trace{ public static void WriteLine(string message, [CallerFilePath] string file = "", [CallerLineNumber] int line = 0, [CallerMemberName] string member = "") { Console.WriteLine(string.Format("{0}:{1} – {2}: {3}", file, line, member, message)); }} void Initialize() { Trace.WriteLine("Starting services"); … } Trace.WriteLine("Starting services", "c:sourcesfoo.cs", 1123, "Initialize");
  11. 11. C# 5.0 + VB 11.0 Windows Runtime + Asynchrony C# 4.0 + VB 10.0 Dynamic + Language Parity C# 3.0 + VB 9.0 Language Integrated Query C# 2.0 + VB 8.0 GenericsC# 1.0 + VB 7.0 Managed Code
  12. 12. ClassMeta-programming Read-Eval-Print Loop public Foo Language Field DSL Embedding Object Model private X string Source .NET File Source code Assembly Source code Source code Compiler Source code
  13. 13. Language Service Compiler APIsCompiler Pipeline Metadata Import
  14. 14. Demo

×