Как замерить программно время выполнения участка кода C#

Приветствую всех! Программируя большие проекты, мы сталкиваемся с его задержкой выполнения, что приводит к подвисанию самой программы, либо долгому ожиданию. Все это может происходить из за того что у него раздуты методы, множество циклов, либо программист не производит рефакторинг кода программы. Как же узнать время от начало до конца работы определенного метода. Рассмотрим пример ниже, […]

Все о массивах в C#

Приветствую всех. Сегодня я решил написать статью в которых будут рассмотрены примеры работы с массивами. Объявления массива Методы массива Передача массива в методы Двумерному массиву Массив массивов   Объявления массива Объявления массива происходит так же как и обычной переменной другого типа. Типы массивов могут быть как int, string, double, итд. Объявляем массив: int[] array; Инициализируем […]

Как сделать рефакторинг кода на C#

Приветствую всех, сегодня мы рассмотрим что такое рефакторинг на практике. Рефакторинг- своего рода перепроектирования кода программы, уменьшив ее в объеме но не изменив ее функциональности, порой после рефакторинга код программы может сократиться в десятки раз. И так рассмотрим код метода. static bool ShouldFire(bool enemyInFront, string enemyName, int robotHealth) { bool shouldFire = true; if (enemyInFront […]

Как определить корректный ли ход ферзя? C#

Сегодня мы рассмотрим одну задачу, в которой имеются три метода, один из которых необходимо дописать самостоятельно. И так по условию задания нам необходимо вычислить верно ли ходит ферзь по заданным клеткам шахматной доски. Если кто не знает, ферзь ходит строго по диагонали и в стороны, без всяких зигзаков итд. Для понимания задания стоит взглянуть на […]

Как реализовать метод для расчета угла отскока шарика от стены?

Приветствую всех, сегодня мы создадим метод который позволят рассчитать угол отскока шарика от стены. Этот метод  используется часто в игровых движках. Опять же нам потребуется формула для нахождения направления шара при отскоке от стены. y = 2b — a; Но не будем терять время и приступим к рассмотрению метода: public static double BounceWall(double directionRadians, double […]