A C# 6.0 Language Preview
MS의 요즘 빠른 행보와 함 C# 6.0 버전이 곧 출시를 할거 같습니다.
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->
A C# 6.0 Language Preview
http://msdn.microsoft.com/en-us/magazine/dn683793.aspx
그 중에 프로퍼티의 선언과 초기화가 좀더 단순화 할 수 있도록 개선이 되네요
지금까지는 private과 public의 변수를 각각 선언해서 초기화를 시켰는데 아래와 같이 초기화를 한줄로 할 수 있을 듯 합니다.
Auto-Properties with Initializers
Initializing a class today can be cumbersome at times. Consider, for example, the trivial case of a custom collection type (such as Queue<T>) that internally maintains a private System.Collections.Generic.List<T> property for a list of items. When instantiating the collection, you have to initialize the queue with the list of items it is to contain. However, the reasonable options for doing so with a property require a backing field along with an initializer or an else constructor, the combination of which virtually doubles the amount of required code.
With C# 6.0, there’s a syntax shortcut: auto-property initializers. You can now assign to auto-properties directly, as shown here:
1. class Queue<T>
2. {
3. private List<T> InternalCollection { get; } =
4. new List<T>;
5. // Queue Implementation
6. // ...
7. }
그리고 JSON Data를 쉽게 다룰 수 있는 JObject라는 타입이 새로 나왔습니다.
Figure 3 Leveraging the Indexed Method with JSON Data
1. using Microsoft.VisualStudio.TestTools.UnitTesting;
2. using Newtonsoft.Json.Linq;
3. // ...
4. [TestMethod]
5. public void JsonWithDollarOperatorStringIndexers()
6. {
7. // Additional data types eliminated for elucidation
8. string jsonText = @"
9. {
10. 'Byte': {
11. 'Keyword': 'byte',
12. 'DotNetClassName': 'Byte',
13. 'Description': 'Unsigned integer',
14. 'Width': '8',
15. 'Range': '0 to 255'
16. },
17. 'Boolean': {
18. 'Keyword': 'bool',
19. 'DotNetClassName': 'Boolean',
20. 'Description': 'Logical Boolean type',
21. 'Width': '8',
22. 'Range': 'True or false.'
23. },
24. }";
25. JObject jObject = JObject.Parse(jsonText);
26. Assert.AreEqual("bool", jObject.$Boolean.$Keyword);
27. }
총 10가지 정도가 프리뷰에서 보여졌는데요. 그 중에 크게 변한 2가지 부분을 우선 소개하고 좀더 자세한 사항은 링크를 타고 들어가서 확인하시면 될거 같습니다.
'.Net Framework' 카테고리의 다른 글
Visual Studio "14" CTP Now Available - Visual Studio 2014 (0) | 2014.06.09 |
---|---|
[Entity Framework] Entity Framework사용 시 편리한 테스트 방법 (0) | 2014.05.25 |
C#에서 Enum 타입을 다중값으로 활용 - Flags Attribute (0) | 2014.05.21 |
인터넷에서 프로그래밍 정보 얻는 사이트 - 영어 사이트 (0) | 2014.01.06 |
C# AppDomain에서 DataDirectory 세팅하기 (0) | 2014.01.05 |