An Independent Look at the Arc of .NET

An Independent Look at the Arc of .NET

<p><strong>Past, present and future of </strong></p><p><strong>C# and .NET </strong></p><p><strong>Kathleen Dollard </strong></p><p>Director of Engineering, ROICode <a href="mailto:[email protected]" target="_blank">[email protected] </a></p><p>Coding: 2 Advanced: 2 </p><p>“In the beginning there was…” Take a look back at over 15 years of .NET and C# </p><p>evolution and look into the future driven by enormous underlying changes. Those changes are driven by a shift in perception of how .NET fits into the Microsoft </p><p>ecosystem.You’ll leave understanding how to leverage the .NET Full Framework, </p><p>.NET Core 1.0, .NET Standard at the right time. Changes in .NET paralleled changes in </p><p>the languages we’ll reflect on how far C# and Visual Basic have come and how they’ve </p><p>weathered major changes in how we think about code. Looking to the future, you’ll </p><p>see both the impact of functional approaches and areas where C# probably won’t go. </p><p>The story would not be complete without cruising through adjacent libraries – the </p><p>venerable ASP.NET and rock-star Entity Framework that’s recovered so well from its </p><p>troubled childhood.You’ll leave this talk with a better understanding of the tool </p><p>you’re using today, and how it’s changing to keep you relevant in a constantly </p><p>morphing world. </p><p>Coding: 2 Advanced: 2 </p><p>“In the beginning there was…” Take a look back at over 15 years of .NET and C# evolution and look into the future driven by enormous underlying changes. Those </p><p>changes are driven by a shift in perception of how .NET fits into the Microsoft </p><p>ecosystem.You’ll leave understanding how to leverage the .NET Full Framework, </p><p>.NET Core 1.0, .NET Standard at the right time. Changes in .NET paralleled changes in </p><p>the languages we’ll reflect on how far C# and Visual Basic have come and how they’ve </p><p>weathered major changes in how we think about code. Looking to the future, you’ll </p><p>see both the impact of functional approaches and areas where C# probably won’t go. </p><p>The story would not be complete without cruising through adjacent libraries – the </p><p>venerable ASP.NET and rock-star Entity Framework that’s recovered so well from its </p><p>troubled childhood.You’ll leave this talk with a better understanding of the tool </p><p>you’re using today, and how it’s changing to keep you relevant in a constantly </p><p>morphing world. </p><p>Coding: 2 Advanced: 2 </p><p>“In the beginning there was…” Take a look back at over 15 years of .NET and C# </p><p>evolution and look into the future driven by enormous underlying changes. Those changes are driven by a shift in perception of how .NET fits into the Microsoft </p><p>ecosystem.You’ll leave understanding how to leverage the .NET Full Framework, </p><p>.NET Core 1.0, .NET Standard at the right time. Changes in .NET paralleled changes in </p><p>the languages we’ll reflect on how far C# and Visual Basic have come and how they’ve </p><p>weathered major changes in how we think about code. Looking to the future, you’ll </p><p>see both the impact of functional approaches and areas where C# probably won’t go. </p><p>The story would not be complete without cruising through adjacent libraries – the </p><p>venerable ASP.NET and rock-star Entity Framework that’s recovered so well from its </p><p>troubled childhood.You’ll leave this talk with a better understanding of the tool </p><p>you’re using today, and how it’s changing to keep you relevant in a constantly </p><p>morphing world. </p><p>Coding: 2 Advanced: 2 </p><p>“In the beginning there was…” Take a look back at over 15 years of .NET and C# </p><p>evolution and look into the future driven by enormous underlying changes. Those changes are driven by a shift in perception of how .NET fits into the Microsoft </p><p>ecosystem.You’ll leave understanding how to leverage the .NET Full Framework, </p><p>.NET Core 1.0, .NET Standard at the right time. Changes in .NET paralleled changes in </p><p>the languages we’ll reflect on how far C# and Visual Basic have come and how they’ve </p><p>weathered major changes in how we think about code. Looking to the future, you’ll </p><p>see both the impact of functional approaches and areas where C# probably won’t go. </p><p>The story would not be complete without cruising through adjacent libraries – the </p><p>venerable ASP.NET and rock-star Entity Framework that’s recovered so well from its </p><p>troubled childhood.You’ll leave this talk with a better understanding of the tool </p><p>you’re using today, and how it’s changing to keep you relevant in a constantly </p><p>morphing world. </p><p>Coding: 2 Advanced: 2 </p><p>“In the beginning there was…” Take a look back at over 15 years of .NET and C# </p><p>evolution and look into the future driven by enormous underlying changes. Those changes are driven by a shift in perception of how .NET fits into the Microsoft </p><p>ecosystem.You’ll leave understanding how to leverage the .NET Full Framework, </p><p>.NET Core 1.0, .NET Standard at the right time. Changes in .NET paralleled changes in </p><p>the languages we’ll reflect on how far C# and Visual Basic have come and how they’ve </p><p>weathered major changes in how we think about code. Looking to the future, you’ll </p><p>see both the impact of functional approaches and areas where C# probably won’t go. </p><p>The story would not be complete without cruising through adjacent libraries – the </p><p>venerable ASP.NET and rock-star Entity Framework that’s recovered so well from its </p><p>troubled childhood.You’ll leave this talk with a better understanding of the tool </p><p>you’re using today, and how it’s changing to keep you relevant in a constantly </p><p>morphing world. </p><p>Coding: 2 Advanced: 2 </p><p>“In the beginning there was…” Take a look back at over 15 years of .NET and C# </p><p>evolution and look into the future driven by enormous underlying changes. Those changes are driven by a shift in perception of how .NET fits into the Microsoft </p><p>ecosystem.You’ll leave understanding how to leverage the .NET Full Framework, </p><p>.NET Core 1.0, .NET Standard at the right time. Changes in .NET paralleled changes in </p><p>the languages we’ll reflect on how far C# and Visual Basic have come and how they’ve </p><p>weathered major changes in how we think about code. Looking to the future, you’ll </p><p>see both the impact of functional approaches and areas where C# probably won’t go. </p><p>The story would not be complete without cruising through adjacent libraries – the </p><p>venerable ASP.NET and rock-star Entity Framework that’s recovered so well from its </p><p>troubled childhood.You’ll leave this talk with a better understanding of the tool </p><p>you’re using today, and how it’s changing to keep you relevant in a constantly </p><p>morphing world. </p><p>My other talks at SDDConf </p><p>• Session: C# 6 &amp; below • Session: C# 7 &amp; above </p><p>• Session: Visual Studio Tips and Tricks </p><p>• Workshop: I will make you a better C# programmer </p><p>Independent? </p><p>What do I know about this history stuff? </p><p>• Trained as a research chemist </p><p>• X-Ray crystallographer &amp; electrochemist with interest in active sites of proteins </p><p>• Worked in the Microsoft languages space since about 1996 </p><p>• Previously, Clipper, Fortran, C, C++, FORTH, BASIC, 4GLs </p><p>• Microsoft MVP since 1998, recognized for community work since 1980’s </p><p>• I care a lot about community and people in it </p><p>• Do NOT work for Microsoft </p><p>• Do respect a lot of people that work at Microsoft (and other places) </p><p>• Have been giving language feedback since VB4 beta </p><p>• Contributed at every MVP summit and a number of private design meetings </p><p>C++ </p><p>Circa 2000 </p><p>Visual Basic </p><p>Circa 2000 </p><p>Road ahead </p><p>Circa 2000 </p><p>OTHER THINGS WERE ALSO </p><p>HAPPENING AT THE END <br>OF THE LAST CENTURY </p><p>AND THEN CAME… </p><p></p><ul style="display: flex;"><li style="flex:1">JAVA </li><li style="flex:1">.NET </li><li style="flex:1">JAVA </li><li style="flex:1">.NET </li></ul><p></p><ul style="display: flex;"><li style="flex:1">JAVA </li><li style="flex:1">.NET </li></ul><p></p><p>• Strongly and statically typed with manifest • Object oriented, class based • Semi-interpreted (JVM) </p><p>• Garbage collected (traced) </p><p>• Curly braces <br>• Strongly and statically typed with manifest • Object oriented, class based • Semi-interpreted (MSIL) </p><p>• Garbage collected (traced) </p><p>• Curly braces (C#) </p><ul style="display: flex;"><li style="flex:1">• Reflection </li><li style="flex:1">• Reflection </li></ul><p></p><p></p><ul style="display: flex;"><li style="flex:1">JAVA </li><li style="flex:1">.NET </li></ul><p></p><p></p><ul style="display: flex;"><li style="flex:1">• Arbitrary precision (library) </li><li style="flex:1">• Unsigned ints, decimal (now imaginary, etc.) </li></ul><p></p><ul style="display: flex;"><li style="flex:1">• All types have common root </li><li style="flex:1">• Primitive types do not have common root </li></ul><p>• Primitives wrapped for methods • Primitive and reference types <br>• All types: methods, properties, interfaces • Value and reference types • Defined operators (inclusion of new types) </p><p>• Enumerations are bit manipulation of integers </p><p>• Delegates </p><p>• Enumerations are class based </p><p>• Wrappers and adapters </p><p>THE RACE WAS ON… </p><p>EFFECT ON .NET </p><p>• Different goals </p><p>• <strong>C# </strong>• <strong>Visual Basic </strong></p><p>EFFECT ON .NET </p><p>• Different goals </p><p>• <strong>C#</strong>: </p><p>Convert Java programmers <br>• <strong>Visual Basic</strong>: Keep&nbsp;existing VB developers </p>

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    108 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us