Рубрика «C#» - 6

Архитектура игр в Unity с использованием Zenject - 1

Всем привет!

Меня зовут Яков, не сказал бы, что я супер разработчик игр (в общей сумме у меня 20 тыс игроков со всех игр выложенных на Яндекс.Игры), но хотел бы поделиться опытом создания гибкой архитектуры игр в Unity с использованием DI-контейнера Zenject.

Читать полностью »

Описание

Небольшая и простая в освоении система комбо-атаки для 2D и 3D проектов. Основана на машине состояний и может включать любое количество состояний атаки.

Полученная реализация комбо-атаки

Полученная реализация комбо-атаки

Читать полностью »

0. Кто такая асинхронность?

Асинхронность — это способ не блокировать поток, пока ты ждешь завершения операции. Она позволяет программе продолжать работать, даже если одна из операций (например, запрос к серверу) занимает время.

Какие преимущества дает?

Асинхронность

Асинхронность

Читать полностью »

Привет, друзья и коллеги по инженерному делу и проектированию! Меня зовут Сергей Погорельский, и я работаю в компании КРОК в качестве эксперта по автоматизации инженерных систем. Работаю с BIM-технологиями 6 лет и недавно защитил диссертацию на эту тему.

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

Читать полностью »
Эквивалент двенадцати FullHD мониторов

Эквивалент двенадцати FullHD мониторов

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

Событийный диспетчер отложенных задач на C#: консолидация и дедупликация данных в текущей инстанции - 1

Всем привет, меня зовут Артур Богданов. Я занимаюсь проектированием, разработкой и оптимизацией высоконагруженных веб-приложений на ASP.NET Core.

Читать полностью »

Если бы строили так, как пишут код ООП.

Если бы строили так, как пишут код ООП.

В этой статье попробуем разобраться, почему ООП — худшее, что было придумано в программировании, как оно стало таким популярным, почему опытные программисты Java (C#, C++ и т.п.) в принципе не могут считаться крутыми инженерами, а код на Java - хорошим.

Читать полностью »

Всем привет. Не так давно добавлял поддержку кастования через 'as' к себе в компилятор и задался вопросом - в каких случаях я получу Compile Time ошибку? Если заинтересовал - прошу под кат.

Решил начать с простого:

class Dog { }
class Cat { }

Dog dog = new Dog();
Cat cat = dog as Cat; // error: CS0039 Cannot convert type 'Dog' to 'Cat'

Тут, вроде, все логично: при кастовании смотрим - является ли тип кастуемого экземпляра дочерним от типа, к которому кастуем; или является ли тип кастуемого экземпляра родительским от типа, к которому кастуем. Если одно из условий верно, то ошибок во время компиляции возникать не должно.

Читать полностью »

Всем привет, эта статья создана для ребят, которые знакомы с делегатами, но хотели бы разобраться, что это поподробнее.

Что же такое делегаты?

Делегаты - это указатели на методы

Такое понятие нам дает практически каждый сайт, на который мы перейдем по запросу "Делегаты C#".

Также, как мы уже знаем - делегаты это ссылочный тип. Но давайте подумаем, где они храняться, как передаются и просто работают?

Сами методы хранятся в метаданных класса/структуры. "ссылки на методы" для делегатов хранятся в хипе. Но только лишь ссылка на метод храниться в хипе у делегата или что - то еще? Давайте проверим

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js