Upgrade to Pro — share decks privately, control downloads, hide ads and more …

C# 7.0 - Neuheiten im Detail (BASTA! Spring 2017)

C# 7.0 - Neuheiten im Detail (BASTA! Spring 2017)

The new features of C# 7.0 from BASTA! 2017 in Frankfurt, Germany

4736273aed82148d9d3c3ca192c1cd61?s=128

Christian Nagel

February 21, 2017
Tweet

Transcript

  1. C# 7.0 – Neuheiten im Detail Christian Nagel csharp.christiannagel.com @christiannagel

  2. Agenda – 3 Schritte History of C# Goals New Syntax

  3. Christian Nagel • @christiannagel • csharp.christiannagel.com • www.cninnovation.com

  4. History of C# • OO & Component Oriented 1.0 •

    Generics 2.0 • LINQ 3.0 • Dynamic 4.0 • Async 5.0 • Roslyn & Many Improvement's 6
  5. None
  6. GOALS OF C#

  7. C# is a Multi-Paradigm Language!

  8. Typical Applications SQL Azure App Services WPF UWP Xamarin Storage

  9. What’s Needed? • Separation of Functionality and State • Immutable

    Objects  Functional Programming can help
  10. Functional Programming • Functions as 1st-Class • Avoiding State Mutation

  11. C# 6 Features for Functional Programming • Using Static •

    Enhancements with Properties • Expression Bodied Methods • Exception Filters • String Interpolation • Null Conditional Operator
  12. None
  13. NEW SYNTAX WITH C# 7.0

  14. DEMO…

  15. C# 7.0 Enhancements • Binary Literals • Digit Separators •

    Out Var, Ref Local and Ref Return • Local Functions • Expression Syntax Everywhere • Throw Expressions • Tuples and Deconstruction • Pattern Matching
  16. C# Future Plans • Records • Pattern Matching extended •

    Async Streams • Non-nullable References
  17. Summary • C# is a Multi-Paradigm Language • Influences from

    Functional Programming • Major new Features – Tuples and Deconstruction – Pattern Matching
  18. Questions?

  19. More Information (1) • https://dot.net • https://github.com/dotnet/csharplang • Sample Code:

    • https://github.com/CNinnovation
  20. More Information (2) • https://github.com/ProfessionalCSharp • https://csharp.christiannagel.com • https://www.cninnovation.com •

    Training & Coaching
  21. Thank you!

  22. Images Copyright • Violin © Beyla Balla • Ladder to

    the Sky © Louise Reach • Diversity working people © Vladimir Mucibabic • Code Coding Programming Sire © Rawpixelimages • Problem Solving Series © Pablo631 • Frankfurt © Rudi1976 • http://www.dreamstime.com