Чтобы сделать карьеру в сфере информационных технологий, необходимы знания и умение писать код. Здесь это самый востребованный навык. Таким образом, знания в области программирования, которые вы приобретаете и используете на практике с самого начала, бесценны.

Вот 5 простейших приемов работы на C#, которые будут очень полезны.


1. «Number», допускающий значения «null»

Первый основан на том, что объекты числовых типов данных могут принимать значения null. Это немного странный прием для большинства разработчиков из других языков, так как здесь после типа данных будет использоваться символ ?.

В нашем случае с number применим int, но сначала посмотрим, что получится без символа ?:

using System;

namespace dotnetsafer
{
  class Program
  {
    static void Main(string[] args)
    {
      int number = null;
      Console.WriteLine(number);
    }
  }
}

Если этот код просто скопировать и вставить, то при выполнении он выдаст ошибку:

А теперь просто добавим справа от int символ ?:

using System;

namespace dotnetsafer
{
  class Program
  {
    static void Main(string[] args)
    {
      int? number = null;
      Console.WriteLine(number);
    }
  }
}

Запустим код еще раз и посмотрим, что произойдет:

Сработало: никакой ошибки не вернулось. Проверив значение number, убеждаемся, что оно теперь null.


2. Значение «readonly»

readonly в поле для чтения указывает, что присвоение полю может выполняться только как часть объявления или в конструкторе того же класса. То есть READ ONLY (только для чтения).

Посмотрим, как выглядит это на примере:

using System;

namespace dotnetsafer
{
  class Program
  {
    public static readonly string Url = "dotnetsafer.com";
  }
}

Здесь значение Url равно dotnetsafer.com.

Но что, если поменять его?

using System;

namespace dotnetsafer
{
  class Program
  {
    public static readonly string Url = "dotnetsafer.com";
    static void Main(string[] args)
    {
      Url = "";
    }
  }
}

Попытка поменять значение Url на null не удалась:

Пример использования readonly  —  подключение к базе данных. Ведь БД всегда одна и та же и нам не нужно, чтобы ее кто-то мог изменить.

Readonly  —  интересная штука, потому что… Если это переменная, которую можно только читать, а изменять нельзя, то можно ли применить к ней определение константы?

Readonly и Const  —  это одно и то же?

Краткий ответ  —  нет, но об этом можно написать отдельную статью.


3. Обнаружение пустых строк

Как определить, пустая строка или нет? Вернемся к предыдущему примеру:

using System;

namespace dotnetsafer
{
  class Program
  {
    public static readonly string Url = "dotnetsafer.com";
    static void Main(string[] args)
  }
}

Используем sting.IsNullOrEmpty для проверки строк на наличие ссылок на строки со значением null или пустые строки. Просто возвращаем в консоли: null строка или не null 👇

using System;

namespace dotnetsafer
{
  class Program
  {
    public static readonly string Url = "dotnetsafer.com";

    static void Main(string[] args)
    {
      if (string.IsNullOrEmpty(Url))

        Console.WriteLine ("This string is null or empty.");

      else

        Console.WriteLine("This string is not null or empty.");
    }
  }
}

В нашем случае при выполнении возвращается не пустая строка (так как у нее есть значение dotnetsafer.com):


4. Завершение приложения

Здесь покажем очень простой способ (хотя применяется он очень редко) завершения выполнения приложения при соблюдении определенного условия. Используем следующий пример:

using System;

namespace dotnetsafer
{
  class Program
  {
    static void Main(string[] args)
    {
      int number = 1;
      if (number == 1)
      {
        Console.WriteLine("Exit");
      }
      Console.WriteLine("No exit");
    }
  }
}

Теперь нужно, чтобы при соблюдении условия (которое соблюдается) приложение завершило свое выполнение. Воспользуемся Environment.FailFast и завершим приложение с помощью аргумента Successfully exited

using System;

namespace dotnetsafer
{
  class Program
  {
    static void Main(string[] args)
    {
      int number = 1;
      if (number == 1)
      {
        Console.WriteLine("Exit");
        Environment.FailFast("Successfully exited");
      }
      Console.WriteLine("No exit");
    }
  }
}

При запуске этого кода приложение корректно завершает свое выполнение:

Здесь надо сделать небольшую оговорку.

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


5. Разрыв строки

Знаю, многие привыкли делать разрывы строк с помощью /n.

На C# есть еще особый способ. Для этого внутри класса environment имеется NewLine:

using System;

namespace dotnetsafer
{
  class Program
  {
    static void Main(string[] args)
    {
      Console.WriteLine($"First{Environment.NewLine}Second");
    }
  }
}

Проверим в деле этот способ разрыва строки:


Это были 5 простейших приемов работы на C#. Надеюсь, вам понравилось. Это было довольно легко, давайте идти от простого к сложному.

Читайте также:

Читайте нас в Telegram, VK и Дзен


Перевод статьи Juan Alberto España Garcia: 5 C# Tips that you MUST know NOW!!! ⚡

Предыдущая статьяЧто мы ожидаем от разработчиков на каждом уровне
Следующая статья12 проверенных способов оптимизации функций Python