Wiem, gdzie znaleźć specyfikację języka C # 5, ale nigdzie nie mogę znaleźć specyfikacji języka C # 6.
Gdzie jest specyfikacja języka C # 6 ?
Wiem, gdzie znaleźć specyfikację języka C # 5, ale nigdzie nie mogę znaleźć specyfikacji języka C # 6.
Gdzie jest specyfikacja języka C # 6 ?
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC#\Specifications\1033\CSharp Language Specification.docx
(gdzie 14.0
odnosi się do VS2015) jest tylko kopią starej specyfikacji C # 5, a nie nową specyfikacją odzwierciedlającą „rzeczywistość” VS2015 i C # 6.
Odpowiedzi:
W chwili pisania tego tekstu (maj 2016 r.) Microsoft nie zakończył jeszcze aktualizacji specyfikacji dla C # 6. W międzyczasie opublikowałem tutaj najnowszą wersję roboczą specyfikacji C # 6 firmy Microsoft: https://github.com/ljw1004/csharpspec/blob/gh-pages/README.md
Bieżąca wersja robocza jest prawie ukończona, zachowaj kilka pozostałych komentarzy do TODO i sprawdzania. (Ta wersja została przekonwertowana na github + markdown, ale zawiera również linki do pobrania wersji specyfikacji DOCX i PDF oraz link do pobrania gramatyki w formacie ANTLR).
Aby uzyskać pełną listę wszystkich zmian specyfikacji od C # 5 do C # 6, zobacz żądanie ściągnięcia: https://github.com/ljw1004/csharpspec/pull/1/files
(Dlaczego Microsoft jeszcze nie wydał oficjalnie specyfikacji C # 6? Z powodu trwających prac nad dostosowaniem do ECMA, co oczywiście wymaga czasu; wydawało się, że wstydem wydawało się wydanie wysiłku na wydanie specyfikacji C # 6 teraz tylko po to, aby kolejna wersja specyfikacji C # 6 pojawiła się później po wyrównaniu z ECMA).
when
słowa kluczowego? Znalazłem tylko fragmenty i bardziej chodzi o filtrowanie wyjątków jako o ogólny temat, a nie o szczegóły dotyczące słowa kluczowego.
Nie ma specyfikacji dla języka C # 6,0 na tym samym poziomie, co w poprzednich wersjach.
Najbliższą rzeczą są notatki projektowe dla Roslyn w CodePlex (i dalej w GitHub).
Oto lista funkcji języka C #:
https://roslyn.codeplex.com/wikipage?title=Language%20Feature%20Status&referringTitle=Documentation
A oto uwagi dotyczące operatora propagującego wartość null, na przykład:
https://roslyn.codeplex.com/discussions/540883
Ponieważ zespół projektantów języka przeniósł się do GitHub, możesz kontynuować śledzenie filtru Uwagi do projektu w repozytorium Roslyn, aby zobaczyć, jak powstaje C # 7.0:
Najnowszy szkic specyfikacji C # 6 znajduje się pod adresem https://github.com/dotnet/csharplang/blob/master/spec/README.md