DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
  • Refcardz
  • Trend Reports
  • Webinars
  • Zones
  • |
    • Agile
    • AI
    • Big Data
    • Cloud
    • Database
    • DevOps
    • Integration
    • IoT
    • Java
    • Microservices
    • Open Source
    • Performance
    • Security
    • Web Dev
DZone >

Language improvements in C# 4

Gunther Lenz user avatar by
Gunther Lenz
·
Dec. 17, 08 · · Interview
Like (0)
Save
Tweet
9.34K Views

Join the DZone community and get the full member experience.

Join For Free

Based on the .NET Framework 4.0 we will see new and exciting features. The theme for future C# versions is to incorporate more features based on the industry trends:

  • Dynamic Language Support: In the industry see more and more use of dynamic languages such as Ruby and Python by the developer community. I still believe that static typing provides a very important safety net, but on the other hand some tasks are just done much more efficiently done in dynamic languages. Therefore I am very excited about the fact that C# will incorporate dynamic language features in its next version. C# will provide a dynamic keyword which will mark a property or variable as dynamic at compile time. Nevertheless, at runtime the corresponding static type will be assigned to that entity, see the example code below.image
  • Declarative Programming: In many ways we over specify our programs by using imperative programming techniques. This not only makes it tedious to program software but also makes it hard for the compiler to catch the intentions of the program in order for it to do optimizations (such as parallel execution). With LinQ and functional programming elements included in the C# language  it is possible to declaratively specify the intention of the code which allow the compiler to optimize more intelligently.
  • Concurrent Systems: With the saturation in clock speed improvements of processors and the trend to processors with multiple (many) cores, the paradigm in software development will have to shift from single threaded systems to systems that leverage the power of the hardware provided. In the next version of the .NET Framework and Visual Studio writing such programs should become much easier through:
    • Parallel Extensions for .NET (Parallel LINQ, Task Parallel Library, and Coordination Data Structures)
    • Parallel Pattern Library
    • Concurrency Runtime
    • Tooling for Debugging and Profiling

image

Furthermore the upcoming system of C# will allow for Improved COM compatibility through the optional and named parameters features. The results of these improvements can be seen in the example below.

image

So there are a lot of reasons to take a look at .NET 4.0 to get ready for and leverage the new features provided for your development…….

These are exciting times and programming languages today are not adhering to one paradigm, such as functional or object oriented programming, anymore but the new paradigm is multi-paradigm.

Software development

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • The Most Popular Kubernetes Alternatives and Competitors
  • How to Generate Fake Test Data
  • DZone's Article Submission Guidelines
  • Autowiring in Spring

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • MVB Program
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends:

DZone.com is powered by 

AnswerHub logo