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

Теги: #monogame #gamedev #оптимизация #csharp #графика #индиразработка

Введение: Проблема падающих FPS и желание красоты

Каждый разработчик 2D-игр, мечтающий о живом, населённом мире, рано или поздно упирается в суровую реальность: рендеринг множества уникальных анимированных персонажей — это дорого. Хочется дать игроку кастомизацию, смену снаряжения, разнообразие врагов, но классический подход «нарисовать каждый спрайт отдельно» ведёт к сотням draw calls и падению производительности.

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

Все мы знаем стандартную лестницу: Junior, Middle, Senior. Но где на самом деле проходит граница? Почему в одном стартапе «сеньор» — это тот, кто вчера узнал про LINQ, а в кровавом энтерпрайзе от «мидла» требуют проектировать распределенные системы под нагрузкой в миллион RPS?

Я задалась вопросом оценки собственного грейда, когда уходила со своего первого места работы. Кто я для рынка? Почему мои знания на собесе в одной компании соответствуют чуть ли не уровню Senior, а в другой – покрывают максимум вакансию Junior’a?

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

Перфолента.NET — это на удивление профессионально выглядящий язык программирования на платформе .NET, который поддерживает объектно-ориентированное и функциональное программирование, и на котором написан даже написан другой язык, функциональный язык программирования — Перфо.NET (интерпретатор).

Мой личный опыт

Когда я начал немного программировать на Перфоленте/Перфо, моё понимание языков программирования сильно изменилось. Я почувствовал себя как англоязычный программист, пишущий код на родном языке.

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

Я начал разработку Minecraft на движке Unity. Пока не решил, какие механики я повторю из оригинала, а какие добавлю от себя. Но сегодня я вам расскажу о моей логике построения чанка.

Далее предоставлю полный скрипт для построения чанка:

Читать полностью »
Serialize Reference. Познаем грани - 1

И прежде чем погрузиться в мир SerializeReference, я рекомендую ознакомиться с документацией от самих Unity.

Там хорошо описаны базовые особенности и назначение этой функции. Вот часть пунктов, почему стоит попробовать SerializeReference:

Чему меня научила разработка C#-клиента для распределённой СУБД Яндекса - 1

Привет! Меня зовут Кирилл Курдюков, и мы с командой делаем YDB (СУБД Яндекса). Как и с языками программирования, популярность СУБД определяется не только их возможностями, но и экосистемой.

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

В мире кроссплатформенной разработки WPF (Windows Presentation Foundation) долгое время оставался эксклюзивной технологией Microsoft, доступной только на Windows. Однако с развитием контейнеризации и инструментов совместимости, таких как Wine, появляется возможность запускать WPF-приложения в изолированных средах Linux. Эта статья рассказывает о моем опыте запуска WPF-приложений внутри Docker-контейнеров с использованием Wine — решения.

Важное предупреждение: WPF официально не поддерживается на LinuxЧитать полностью »

Жадность — двигатель прогресса: как начинающий C# разработчик пилил бесплатную замену Quizlet, трогал React и боролся с Frontend-ом

По традиции статей Хабра начну с описания проблемы.

Я изучаю C#, .NET, ASP.NET и ищу работу Backend-разработчика. Сейчас дело дошло до собеседований и фундаментальных вещей (синтаксис, паттерны проектирования, принципы SOLID), я понял, что информации море и она вываливается из головы.

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

.net 10 logo

.net 10 logo

11 ноября 2025 вышел .NET 10 - очередной LTS-релиз, который будет жить до ноября 2028 года (см. таблицу поддержки на сайте .NET 1).
За это время многие проекты успеют мигрировать с .NET 6/8/9, а значит, нас ждут не только новые плюшки, но и немного боли от breaking changes.

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

В современных корпоративных системах обработки отчетности (например, XBRL-форматы для регуляторов или банков) одна из ключевых задач это эффективное хранение и загрузка больших объёмов структу­рированных данных. В экосистеме .NET Core такие данные часто представлены в виде объектов с комплексными связями, что требует продуманной стратегии сериализации и десериализации.

Одним из таких случаев является работа с объектами ReportItem объединяющими в себе названия бизнес-факты отчета и координаты в гиперкубе (временной охват, измерения и атрибуты). При создании отчетов данные загружаются в память в виде словаря Читать полностью »


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