Как стать автором
Обновить
74.91

C# *

Объектно-ориентированный язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Основы деревьев выражений в .NET

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров519

Деревья выражений — одна из сложных тем в C#/.NET, которую необходимо понять. Они представляют код в виде древовидной структуры данных, где каждый узел является выражением (например, вызов метода, бинарная операция или константа). Они позволяют динамически создавать, исследовать и выполнять код во время выполнения.

Деревья выражений особенно полезны для создания динамического кода, анализа кода во время выполнения и для таких фреймворков, как LINQ to SQL и Entity Framework, для преобразования кода C# в SQL-запросы или другие операции.

Читать далее
Всего голосов 2: ↑1 и ↓1+1
Комментарии0

Новости

Что выбрать для типов моделей: Enums VS Tables?

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров615

Enums VS Tables для создания типов моделей...

Зачем использовать вообще одно из этих решений?

Существуют модели, у которых необходимо выделить разновидности и сделать это именно с помощью типов, а не категорий... Разберёмся...

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии2

Пишем приложение на C#-стеке

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров5.9K

Всем привет! Меня зовут Дмитрий Бахтенков, и я .NET-разработчик. Сегодня мы проведем эксперимент — напишем полноценное веб-приложение с использованием решений, которые написаны на C# и платформе .NET. Больше моих статей можно прочитать в медиа вАЙТИ.

Что я имею в виду?

Как мы знаем, в общем случае веб-приложение состоит из бэкенда, фронтенда, базы данных и иногда из кеша. С бэкендом и фронтендом всё понятно: у нас есть замечательный фреймворк ASP.NET Core для сервера и blazor или razor pages для клиента. Однако инфраструктурные части приложения — БД, кеши — чаще всего пишутся на других, более низкоуровневых языках, таких как C и C++.

К счастью, недавно Microsoft выпустила решение для кеширования — аналог Redis, который называется Garnet. В качестве основной базы данных можно использовать документную БД RavenDB, которая как раз написана на C#.

Читать далее
Всего голосов 16: ↑15 и ↓1+21
Комментарии4

Анализ кода WolvenKit: что нужно знать перед созданием модов для Cyberpunk 2077

Время на прочтение8 мин
Количество просмотров987

Все мы любим игры, но есть люди, которые любят в них не только играть, но ещё и создавать различные модификации для них. Сегодня посмотрим на WolvenKit — один из инструментов для создания модов для Cyberpunk 2077.

Читать далее
Всего голосов 10: ↑9 и ↓1+15
Комментарии1

Истории

Знакомство с гипермедийными системами на ASP.NET Core 8.0

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров4K

Быстрый старт с HTMX 2.0. Знакомство с гипермедийными системами на основе современной серверной платформы ASP.NET Core.

Гипермедийные системы облегчают создание прежде всего низконагруженных веб-приложений.

Читать далее
Всего голосов 7: ↑4 и ↓3+5
Комментарии9

Немного про DDD: Реализация событий предметной области в .NET

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров6.1K

Всем привет! Предметно-ориентированное проектирование, на мой взгляд, является недопонятым подходом, о котором многие говорят, но немногие его действительно применяют.

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

Читать далее
Всего голосов 11: ↑10 и ↓1+14
Комментарии19

Мой опыт в переводе между типами С++ и С#

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров1.5K

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

Читать далее
Всего голосов 11: ↑4 и ↓7+1
Комментарии7

Вот здесь точно нужен рефакторинг, есть идеи?

Время на прочтение7 мин
Количество просмотров8.6K

Бывают пет-проекты, а у нас получился проект с наработками, которые вроде бы могут быть полезны например студентам технических специальностей и просто всем кому интересно поразбираться с возможностями визуализации на C# + WPF, например, или с системой избыточного кодирования.

Мы со студентами сделали приложение для анализа характеристик LDPC кодов изначально на Java (Java код тоже присутствует в репозитории) потом я переписал его в виде проекта C# + WPF, чтобы добавить возможность конфигурации статистических экспериментов через визуальный интерфейс, а главное чтобы иметь возможность визуализации результатов экспериментов в виде графиков (обычных, в X, Y осях). Я как раз для работы сделал библиотеку для рисования обычных математических графиков по массивам значений с возможностью масштабирования области просмотра мышкой.

Думаю студентам любых технических направлений может пригодиться такая библиотека при том, что весь ее достаточно компактный исходный код (5-7 файлов) локализован в проекте и доступен как для изучения так и для любых изменений и доработок.

Под катом ссылка на Гит-репозиторий с исходным кодом и обзор реализованной функциональности со скриншотами.

Читать далее
Всего голосов 7: ↑5 и ↓2+6
Комментарии5

Черепаха в лабиринте или осенний марафон

Уровень сложностиПростой
Время на прочтение34 мин
Количество просмотров680

Статья является логическим и практическим продолжением статьи про алгоритм вывода черепахи из лабиринта. Автор @demitryy сформулировал идею, но не описал практического её воплощения и в ходе оживлённой дискуссии появилось два подхода к реализации алгоритма. Один представил и воплотил на C++ пользователь @wataru, а второй, с разными видами оптимизаций, озвучил ваш покорный слуга. В статье мы увидим результат тестирования обоих подходов на C# и какие открытия для себя сделал автор.

Читать далее
Всего голосов 5: ↑4 и ↓1+8
Комментарии5

10 самых необычных вопросов на собеседовании по C#

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров13K

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

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

Читать далее
Всего голосов 24: ↑2 и ↓22-18
Комментарии44

10 сложных вопросов по C# для собеседования и подробные ответы на них

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.6K

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

Читать далее
Всего голосов 17: ↑2 и ↓15-11
Комментарии10

HybrydCLR. Как обновлять код Unity игры без загрузки обновлений в стор

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров2.6K

Как обновлять код игры, написанный на Unity без загрузки свежего билда в стор. Как делать это без колхоза и всякого рода адаптеров. Zero learning cost, zero usage cost.

Читать далее
Всего голосов 14: ↑13 и ↓1+15
Комментарии2

Docker для разработки C#

Время на прочтение6 мин
Количество просмотров6.8K

Примерно пару назад я открыл для себя великолепный инструмент в арсенале разработчика под названием Docker. Вкратце, Docker — это открытая платформа для разработки, доставки и эксплуатации приложений. Сам Docker работает по принципу виртуализации, то есть каждое приложение представляет из себя виртуальный образ, который помещается в контейнер. Docker использует возможности операционной системы создавать изолированные контейнеры. Контейнер отличается от виртуальной машины тем, что контейнер не эмулирует железо и использует операционную систему хоста.

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

Возможности Docker достаточно обширны, однако в данной статье хотелось бы остановиться на трех:

Читать далее
Всего голосов 13: ↑8 и ↓5+7
Комментарии14

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
10 – 11 октября
HR IT & Team Lead конференция «Битва за IT-таланты»
МоскваОнлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн

Тредпульное заклятие Dotnet-демонов на Linux

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров4.6K

Все слышали о том, что иногда dotnet на Linux потребляет больше ресурсов, чем на Windows. Порой эта разница практически незаметна. Но случается и такое, что одно и то же приложение потребляет на Linux в 2–3 раза больше CPU, чем на Windows.

Читать далее
Всего голосов 19: ↑19 и ↓0+24
Комментарии10

Гипермедийные системы на ASP.NET MVC 5. Часть третья — окончание

Уровень сложностиСредний
Время на прочтение24 мин
Количество просмотров1.1K

Окончание статьи по быстрой разработке гипермедиа-ориентированного веб-приложения с HTMX 2.0.

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

В статье будет использоваться библиотека Htmx.js вместе с устаревшей серверной платформой ASP.NET MVC 5.

Читать дальше
Всего голосов 6: ↑4 и ↓2+6
Комментарии7

Гипермедийные системы на ASP.NET MVC 5. Часть вторая — продолжение

Уровень сложностиСредний
Время на прочтение24 мин
Количество просмотров1.2K

Продолжение статьи по быстрой разработке гипермедиа-ориентированного веб-приложения с HTMX 2.0.

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

В статье будет использоваться библиотека Htmx.js вместе с устаревшей серверной платформой ASP.NET MVC 5.

Читать дальше
Всего голосов 7: ↑4 и ↓3+5
Комментарии4

Гипермедийные системы на ASP.NET MVC 5. Часть первая — начало

Уровень сложностиСредний
Время на прочтение25 мин
Количество просмотров1.8K

Начало статьи по быстрой разработке гипермедиа‑ориентированного веб‑приложения с HTMX 2.0.

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

В статье будет использоваться библиотека Htmx.js вместе с устаревшей серверной платформой ASP.NET MVC 5.

Читать дальше
Всего голосов 8: ↑4 и ↓4+4
Комментарии20

SAP Scripts на C#

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.7K

Всем привет! Это моя первая статья на Хабре, я решил создать её здесь, чтобы поделиться наработанным опытом со всеми коллегами по RPA. Речь пойдёт об автоматизации интерфейса SAP через SAP скрипты при разработке на C#.

Читать далее
Всего голосов 3: ↑3 и ↓0+7
Комментарии4

Оптимизация небрежно написанного маппера

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров3.9K

В один день тестировщик пришла к программистам с вопросами об эндоинте, который работает "вечно". Сие утверждение было странным, потому как ранее его не замечали, но было одно НО. Пару дней до этого случилось долгожданное событие - нам предоставили полноценный бекап тестовой базы, который конечно же мы быстренько залили на наши тестовые энвы вместо нагенерированных данных. В следующие несколько дней было обнаружено ещё с десяток "вечно" работающих эндпоинтов, но в этой статье будет исправление только одного из них, который работал около 30 секунд на тестовом маломощном окружении и около 16 секунд на моем ПК.

Подробности внутри
Всего голосов 5: ↑4 и ↓1+6
Комментарии10

Space Invaders в 2 строчки кода (c#)

Время на прочтение4 мин
Количество просмотров6.9K

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

Игра представляет собой вольный ремейк культовой игры, выпущенной в 1978 году.

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

Как говорится:
Везет программистам, захотел поиграть - написал игру.

Друзья, в статье есть тег - Юмор, не стоит использовать такое в продакшене.

Update1: Добавил описание методик, используемых для сжатия кода.

Читать далее
Всего голосов 20: ↑16 и ↓4+17
Комментарии10
1
23 ...