c# - visual - what is.net framework




C#의 올바른 버전 번호는 무엇입니까? (6)

C # 언어 버전 기록 :

다음은이 글을 쓰는 당시 알려진 C #버전입니다 .

  • .NET 1.0 및 VS2002 (2002 년 1 월)와 함께 출시 된 C # 1.0
  • C # 1.2 (기괴한 정도); .NET 1.1 및 VS2003 (2003 년 4 월)과 함께 출시되었습니다. IDisposable 을 구현 한 IEnumerator Dispose 를 호출하는 첫 번째 버전입니다. 몇 가지 작은 기능.
  • .NET 2.0 및 VS2005 (2005 년 11 월)와 함께 출시 된 C # 2.0 새로운 주요 기능 : 제네릭, 익명 메소드, null 가능 유형, 반복자 블록
  • .NET 3.5 및 VS2008 (2007 년 11 월)과 함께 출시 된 C # 3.0 새로운 주요 기능 : 람다 식, 확장 메서드, 식 트리, 익명 형식, 암시 적 입력 ( var ), 쿼리 식
  • C # 4.0 은 .NET 4 및 VS2010 (2010 년 4 월)과 함께 출시되었습니다. 주요 새로운 기능 : 후기 바인딩 ( dynamic ), 대리인 및 인터페이스 일반 분산, 더 많은 COM 지원, 명명 된 인수, 튜플 데이터 형식 및 선택적 매개 변수
  • .NET 4.5 및 VS2012 (2012 년 8 월)와 함께 출시 된 C # 5.0 주요 기능 : 비동기 프로그래밍, 발신자 정보 속성. 속보 변경 : 루프 변수 닫힘 .
  • .NET 4.6 및 VS2015 (2015 년 7 월)와 함께 출시 된 C # 6.0 Roslyn 구현했습니다. Features : 자동 구현 된 속성에 대한 이니셜 라이저, 정적 멤버 가져 오기 지시문, 예외 필터, 요소 이니셜 라이저, catch 에서 await finally 으로 Extension 컬렉션 초기화 자의 메서드 Add .
  • C # 7.0 은 .NET 4.7 및 VS2017 (2017 년 3 월)과 함께 출시되었습니다. 주요 새로운 기능 : tuples , 참조 로컬 및 참조 반환 , 패턴 기반 스위치 문 포함, 인라인 out 매개 변수 선언 , 로컬 함수 , 이진 리터럴, 숫자 구분 기호 , 임의의 비동기 반환합니다 .
  • VS2017 v15.3 (2017 년 8 월)과 함께 출시 된 C # 7.1 새로운 기능 : 비동기 메인 , 튜플 멤버 이름 추측 , 기본 표현식 , 제네릭과 일치하는 패턴 .
  • VS2017 v15.5 (2017 년 11 월)와 함께 출시 된 C # 7.2 새로운 기능 : 개인 보호 액세스 수정 자 , Span <T>, 일명 실내 포인터, 일명 stackonly 구조체 , 그 밖의 모든 것 .
  • VS2017 v15.7 (2018 년 5 월)과 함께 출시 된 C # 7.3 새로운 기능 : enum, delegate 및 unmanaged 제네릭 형식 제약 조건 . ref 재 할당. 안전하지 않은 개선 사항 : stackalloc 초기화, 고정 stackalloc 않은 인덱스 된 fixed 버퍼, 사용자 정의 fixed 명령문. 과부하 해결 개선. 이니셜 라이저 및 쿼리의 식 변수. ==!= 은 튜플에 대해 정의됩니다. 이제 자동 속성의 지원 필드를 속성별로 타겟팅 할 수 있습니다.
  • 현재 미리보기에서 C # 8.0 . 예상되는 새로운 기능 : nullable이 아닌 참조 유형 , IAsyncEnumerable<T> 지원, 범위 및 기본 인터페이스 메소드

OP 질문에 대한 답변 :

C #의 올바른 버전 번호는 무엇입니까? 언제 나온거야? C # 3.5에 대한 답변을 찾을 수없는 이유는 무엇입니까?

C # 3.5와 같은 것은 존재하지 않습니다. 혼란의 원인은 .NET 3.5에 C # 3.0이 있다는 것입니다. 언어와 프레임 워크는 독립적으로 버전 관리됩니다. CLR과 마찬가지로 .NET 2.0 ~ 3.5 버전 2.0, .NET 4는 CLR 4.0을 도입했지만 서비스 팩에도 적용됩니다. .NET 4.5의 CLR에는 여러 가지 개선 사항이 있지만 버전 관리가 명확하지 않습니다. CLR 4.5 ( 이 MSDN 페이지 는이를 참조하는 데 사용됨)이지만 Environment.Version 속성은 여전히 4.0.xxx를보고합니다.

언어, 런타임 및 프레임 워크 버전 간의 관계에 대한 자세한 내용은 C # in Depth 사이트를 참조하십시오. 여기에는 .NET 2.0을 대상으로 할 때 사용할 수있는 C # 3.0의 기능에 대한 정보가 포함됩니다. (누구든지이 위키 답변에 모든 콘텐츠를 가져오고 싶다면 환영합니다.)

2017 년 5 월 3 일부터 C # 언어 팀에서는 C # 버전의 기능과 github repo에 대한 기능을 추가했습니다. C # 언어 버전에 추가 된 기능 입니다. 다가오는 최근에 구현 된 언어 기능을 추적하는 페이지있습니다 .

C #의 올바른 버전 번호는 무엇입니까? 언제 나온거야? C # 3.5에 대한 답변을 찾을 수없는 이유는 무엇입니까?

이 질문은 주로 C # 3.5 와 같이 잘못된 버전 번호를 사용하여 답변을 검색하는 사용자를 돕는 것입니다. 희망 사항은 잘못된 버전 번호로 답변을 찾지 못한 사람은 질문을 찾은 다음 올바른 버전 번호로 다시 검색한다는 것입니다.


C #의 버전 번호를 다룰 때 가장 큰 문제는 Visual Studio와 .NET Framework 간의 동기화 된 릴리스로 인해 나타나는 .NET Framework 버전과 관련이 없다는 사실입니다.

C #의 버전은 실제로 프레임 워크가 아니라 컴파일러에 바인딩됩니다. 예를 들어 Visual Studio 2008에서는 C # 3.0을 작성하고 .NET Framework 2.0, 3.0 및 3.5를 대상으로 할 수 있습니다. C # 3.0 명명법은 ANSI C89, C90, C99 에서 C의 코드 구문 / 기능을 설명하는 것과 같은 방식으로 코드 구문 및 지원되는 기능의 버전을 설명합니다.

Mono를 살펴보면 Mono 2.0 (주로 ECMA 사양의 .NET Framework 버전 2.0 구현)이 C # 3.0 구문과 기능을 지원한다는 것을 알 수 있습니다.


이 표의 대부분 버전을 요약했습니다. 누락 된 유일한 것들은 ASP.NET Core 버전이어야합니다. 또한 여러 버전의 ASP.NET MVC를 추가했습니다.

ASP.NET 5는 ASP.NET Core 1.0으로 변경되었으며 ASP.NET MVC 6은 ASP.NET Core MVC 1.0.0으로 변경되었습니다. 나는이 변화가 2016 년 1 월경에 언젠가 일어났다 고 생각합니다.

ASP.NET 5 RC1의 출시 날짜를 테이블에 포함 시켰지만 정확한 출시 날짜를 찾을 수 없기 때문에 아직 ASP.NET 코어 1.0 및 기타 핵심 버전을 포함했습니다. ASP.NET Core와 관련된 릴리스 날짜에 대한 자세한 내용은 다음을 참조하십시오. ASP.NET Core 1.0 (ASP.NET 5 / vNext)은 언제 릴리스 예정입니까?


이것은 대부분의 답변과 동일하지만 쉽게 표로 표시되며 Visual Studio 및 .NET 버전이있어 완벽합니다.

╔════════════╦════════════╦══════════════╦═════════════╦══════════════╗
║ C# version ║ VS version ║ .NET version ║ CLR version ║ Release date ║
╠════════════╬════════════╬══════════════╬═════════════╬══════════════╣
║    1.0     ║    2002    ║    1.0       ║     1.0     ║   Feb 2002   ║
║    1.2     ║    2003    ║    1.1       ║     1.1     ║   Apr 2003   ║
║    2.0     ║    2005    ║    2.0       ║     2.0     ║   Nov 2005   ║
║            ║            ║    3.0       ║     2.0     ║   Nov 2006   ║
║    3.0     ║    2008    ║    3.5       ║     2.0     ║   Nov 2007   ║
║    4.0     ║    2010    ║    4.0       ║     4       ║   Apr 2010   ║
║    5.0     ║    2012    ║    4.5       ║     4       ║   Aug 2012   ║
║    5.0     ║    2013    ║    4.5.1     ║     4       ║   Oct 2013   ║
║            ║            ║    4.5.2     ║     4       ║   May 2014   ║
║    6.0     ║    2015    ║    4.6       ║     4       ║   Jul 2015   ║
║            ║            ║    4.6.1     ║     4       ║   Nov 2015   ║
║            ║            ║    4.6.2     ║     4       ║   Aug 2016   ║
║    7.0     ║    2017    ║              ║             ║   Mar 2017   ║
║            ║            ║    4.7       ║     4       ║   May 2017   ║
║    7.1     ║ 2017(v15.3)║              ║             ║   Aug 2017   ║
║            ║            ║    4.7.1     ║     4       ║   Oct 2017   ║
║    7.2     ║ 2017(v15.5)║              ║             ║   Dec 2017   ║
║            ║            ║    4.7.2     ║     4       ║   Apr 2018   ║
║    7.3     ║ 2017(v15.7)║              ║             ║   May 2018   ║
╚════════════╩════════════╩══════════════╩═════════════╩══════════════╝

참고 : .NET 개발은 요즘 VS과 거의 별개이며 각 버전 간에는 상관 관계가 없습니다. 자세한 내용은 " .NET Framework 버전 및 종속성 "을 참조하십시오.


VERSION _____ 언어 사양 ______ MICROSOFT COMPILER

C # 1.0 / 1.2 ____ 2001 년 12 월 ? / 2003 ? ___________ 2002 년 1 월 ?

C # 2.0 _______ 2005 년 9 월 ________________ 2005 년 11 월 ?

C # 3.0 _______ 2006 년 5 월 _____________________ 2006 년 11 월 ?

C # 4.0 _______ 2009 년 3 월 (초안) ______________ 2010 년 4 월 ?

C # 5.0; 2012 년 8 월 .NET 4.5 출시

C # 6.0; .NET 4.6 2015와 함께 출시

C # 7.0; .NET 4.7과 함께 발표 된 2017


C # 버전 기록 :

C #은 Microsoft에서 개발 한 간단하고 강력한 객체 지향 프로그래밍 언어입니다.

C #은 2002 년 첫 출시 이후 많이 발전했습니다. C #은 .NET Framework 1.0과 함께 도입되었습니다.

다음 표에는 각 버전의 C #에서 소개 된 중요한 기능이 나와 있습니다.

C #의 최신 버전은 C # 버전에서 사용할 수 있습니다.





compiler-version