Загрузка...
Вы здесь:  Главная  >  Техника  >  Текущая статья

10 полезных вещей в C#, которые облегчат вам жизнь

  /   31.03.2016  /   2 комментария

Если вы начинаете знакомство с С# или хотите расширить свои познания, вам стоит изучить эти полезные особенности языка, которые помогут вам упростить код, избежать ошибок и сэкономить кучу времени.

Если вы начинаете знакомство с С# или хотите расширить свои познания, вам стоит изучить эти полезные особенности языка, которые помогут вам упростить код, избежать ошибок и сэкономить кучу времени.

async или await

Используйте возможности асинхронного программирования для того, чтобы разблокировать возможности одного потока, пока ожидается завершение другого. Например: если происходит медленный веб-запрос, то при синхронных программировании незанятый поток будет простаивать, пока веб-запрос не будет выполнен. Асинхронное программирование при помощи модификатора async позволяет избежать этого. Также полезным является использование async вместе с операторомawait, который приостанавливает выполнение потока, пока не произойдет ожидаемое событие.

Инициализаторы объектов, массивов и коллекций

Намного проще создавать экземпляры классов, массивы и коллекции при помощи специальных инициализаторов:

Лямбда-выражения, делегаты и замыкания

Они бывают необходимы в самых разнообразных случаях, но самую большую пользу они приносят при работе с LINQ. Узнайте о них побольше/

Оператор объединения со значением null

?? — довольно простой, но очень полезный оператор для определенных ситуаций. ??возвращает левый операнд, если он не NULL, иначе он вернет правый операнд:

Интерполированные строки $»{x}»

Новые возможности C# 6 позволяют вам интерполировать (разбивать) строки простым и элегантным путем:

Вы можете подставлять различные значения переменных в фигурные скобки в любой части строки, что делает инструмент весьма мощным и полезным.

Оператор безопасной навигации

Вот пример работы с оператором:

Выражение nameof

На первый взгляд использование nameof не является столь уж нужным, однако на самом же деле nameof весьма полезен, когда вы используете автоматические инструменты рефакторинга, вроде ReSharper, и тогда вам нужно обращаться к аргументу метода по его имени.

Но при использовании автоматического рефакторинга лучше реализовать тот же код следующим образом:

Больше информации.

Инициализаторы свойств

Инициализаторы свойств позволяют вам объявить начальное значение свойства:

Преимуществом является то, что значения свойств не являются неизменными, что придает некоторую гибкость вашему классу. Также примечательным является то, что инициализаторы свойств вполне реализуются внутри обычного конструктора.

Операторы as и is

Оператор is используется для того, чтобы определить принадлежность объекта к типу, если это так, то вернет true. Например, является ли объект Person экземпляром типаAdult или типа, производного от Adult:

Для проверки возможности преобразования типов используйте оператор as:

Если преобразование невозможно, то будет возвращено значение NULL.

Ключевое слово yield

Если используется ключевое слово yield в инструкции, то это означает, что обычный метод, метод доступа get или оператор, в котором оно встречается, является итератором. В следующем примере метод будет возвращать по порядку различные степени двойки по экспоненте: 2, 4, 8, 16, 32, 64, 128, 256.

1 Star2 Stars3 Stars4 Stars5 Stars (Нет оценок)
Загрузка...

Вам может быть интересно...

Япония разрабатывает новую систему оповещения на случай пусков ракет КНДР

Читать далее →