Wersje języka C# a platforma NET

0

Witajcie

Ostatnio coraz więcej skupiam się na zapoznaniu z językiem C# i platformą NET. Choć już kiedyś zrobiłem pierwsze podejście do tego tematu, a obecnie jest to moje drugie podejście, to wciąż jestem mocno początkującym w tym temacie. Do pisania testowych aplikacji używam wymiennie Visual Studio w wersji Express z lżejszym SharpDevelop. W Visual Studio mogę zmienić wersję platformy dla której piszę aplikację, w SharpDevelop oprócz zmiany platformy NET mam również możliwość zmiany wersji języka. I nie jest ona na sztywno przypisana do platformy.

Jak z tym jest, czy wersja platformy jest niezależna od wersji języka w której piszemy aplikację? Czy w takim układzie można napisać aplikacje pracującą pod kontrolą frameworka 3.5 w najnowszej wersji języka (np 5.0) ?

2

Jak z tym jest, czy wersja platformy jest niezależna od wersji języka w której piszemy aplikację?

I tak i nie.

Czy w takim układzie można napisać aplikacje pracującą pod kontrolą frameworka 3.5 w najnowszej wersji języka (np 5.0) ?

Niektóre "ficzery" nowszej wersji kompilatora działają pod starszymi frameworkami, niektóre nie.

Przykładowo, w którejś tam wersji C# pojawiło się słowo kluczowe var, co się zbiegło z wydaniem bodajże Frameworka 3.5.
Ale mając kompilator z 3.5, można używać słowa var kompilując także pod .NET 2.0
Z drugiej strony, w tej samej wersji 3.5 pojawiło się LINQ, które już koniecznie wymaga .NETa w wersji 3.5.

W skrócie następujące wersje Visual Studio pozwalają na kompilowanie dla .NET-a w wersjach:

VS 2008 - 2.0, 3.0, 3.5
VS 2010 - 2.0, 3.0, 3.5, 4.0
VS 2012 - 2.0, 3.0, 3.5, 4.0, 4.5
VS 2013 - 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1

1 użytkowników online, w tym zalogowanych: 0, gości: 1