Na koniec całej serii Co nowego w C# pozostawiłem kilka rzeczy które nazywam lukrem składniowym a nie koniecznie jest to czysty lukier – czasami siedzi pod tym jakaś maszyna lub kawał dobrego kodu :)

Z cyklu nowości w C# 7, do tej pory ukazały się artykuły:

  1. C# 7: Tuples
  2. C# 7: Pattern Matching
  3. C# 7: out i ref
  4. C# 7: Funkcje lokalne
  5. C# 7: Lukier składniowy

Side node: wszystkie przykłady zostały przetestowane na VS 2017 RC.

Czysty lukier składniowy

Od c# mamy możliwość pięknego zapisy liczb! :) Od teraz mamy możliwość separacji cyfr za pomocą _ i tak o to:

var pl_vat_id = 123_123_22_22;
var one_million = 1_000_000;
var hex = 0x12_34_56_78_9A_BC_DE_F0;

// new kid on the block
var binary = 0b0000_1111_0000_1111;

Zwróciliście uwagę na new kid on the block? No właśnie :) teraz też możemy zapisywać liczby binarnie :)

=> dla wartości własności

Co tu dużo, mówić, w C# 6 mogliśmy zrobić tak:

private string _name;

public string Name => _name;

Teraz możemy zrobić dodatkowo tak:

private string _name;

public string Name
{
    get => _name;
    set => _name = value;
}
=> dla throw

Metoda jeszcze nie zaimplementowana? Nie ma problemu:

public Person Get() => throw new NotImplementedException();

Podsumowanie

To tyle jeżeli chodzi o nowości w C#. Chyba opisałem wszystkie, nie wchodziłem zaś w unifikację lub generalizację typów które mogą być zwracane w określonych miejscach (i.e. już Task<T> nie musi być zwracany z async). Mam nadzieję, że seria się podobała :)

Życzę więc wam miłej eksploatacji języka :)

1 KOMENTARZ

Comments are closed.