Как стать автором
Обновить
46.09
Рейтинг

C# *

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

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

NFun — expression evaluator для .Net

Open source *Программирование *.NET *Компиляторы *C# *

Представляю вам Nfun - встраиваемый язык и исполнитель выражений, который поддерживает примитивные типы, массивы, структуры и лямбда выражения. 

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

Let's make some nFun!
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 1.4K
Комментарии 21

Новости

Как увеличилась производительность LINQ в .NET 7?

Блог компании PVS-Studio .NET *C# *

В новой версии .NET улучшилась производительность методов Min, Max, Average и Sum для массивов и списков. Как вы думаете, во сколько раз увеличилась скорость их выполнения? В 2 раза, в 5? Нет, они стали гораздо быстрее. Посмотрим, как этого удалось достичь.

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 2.4K
Комментарии 1

Программа для распознавания текста и перевода AssistAnt

Программирование *Интерфейсы *C# *

Хорош ли ваш английский? Мой – нет. По крайней мере точно недостаточно, чтобы обходиться без переводчика в играх.
Недолгий поиск бесплатных программ в интернете мне не помог. Возможно, я просто плохо искал :) Но когда я поймал себя на мысли, что сейчас возьму в руки сотовый и буду переводить экран с помощью камеры, я понял, что пора спасаться. И путь к спасению - сделать переводчик самому.
Я нашел широко известную в узких кругах программу распознавания текста Tesseract OCR и свободное API для Google Translate. В результате получилась программа, которая может на лету переводить выделенную надпись на экране. Выглядит это примерно так: вы зажимаете горячую клавишу Win+Alt и прямоугольной областью выделяете часть изображения, где находится непонятный текст. Область выделяется, только пока зажата горячая клавиша. Вуаля – перед вами перевод во всплывающей подсказке!

Читать далее
Всего голосов 11: ↑10 и ↓1 +9
Просмотры 2.2K
Комментарии 33

Enum в C# и некоторые его особенности

.NET *C# *
Recovery mode
Из песочницы

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

Читать продолжение в источнике...
Всего голосов 15: ↑7 и ↓8 -1
Просмотры 5.7K
Комментарии 24

Data Driven тестирование или как параметризовать Selenium тесты с использованием MSTest

Блог компании Bimeister Тестирование IT-систем *.NET *C# *Тестирование веб-сервисов *
Tutorial

При автоматизации E2E тестирования часто приходится писать много тестов для проверки определённого поведения, например, валидация числового инпута. Один из способов — дублировать метод и изменить значения параметров, но при большом количестве тестовых данных дублирующего кода может быть очень много, а еще такие тесты сложно поддерживать. Но есть способ проще, его идея заключается в создании параметризованного теста таким образом, чтобы один метод теста мог быть использован для выполнения N тестов со всеми тестовыми данными.

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

Насколько быстр ASP.NET Core?

Программирование *.NET *ASP *C# *
Из песочницы
Перевод

В последние годы команда .NET усиленно рекламирует ASP.NET Core как один из самых быстрых веб-фреймворков на рынке. Источником этих утверждений всегда были бенчмарки TechEmpower Framework Benchmarks.

Скотт Хантер - директор по управлению программами .NET, утверждает, что .NET более чем в 10 раз быстрее, чем Node.js.

Скотт также утверждает, что .NET быстрее, чем Java, Go и даже C++.

Читать далее
Всего голосов 72: ↑71 и ↓1 +70
Просмотры 16K
Комментарии 26

О том, как алгоритм Дейкстры реализовывал и некоторых его применениях

Алгоритмы *C# *Геоинформационные сервисы *Математика *

Приветствую Вас, хабровчане!

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

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 6.1K
Комментарии 14

Сохранение изображения в БД C#

.NET *Администрирование баз данных *C# *Разработка под Windows *
Tutorial

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

Оптимальным выходом из данной ситуации является представление изображения в виде массива байтов byte[]

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

Любой файл можно рассматривать как набор байтов, поэтому массив байтов является результатом чтения файла в виде двоичных данных. Файл также может быть декодирован как определенный формат, например, текстовый файл, результатом которого является строка, или формат сжатого изображения (JPEG, GIF, PNG и т. д.), результатом которого является Bitmap.

Читать далее
Всего голосов 19: ↑1 и ↓18 -17
Просмотры 3.1K
Комментарии 19

Обобщения C#

Программирование *.NET *C# *ООП *
Из песочницы

Обобщения (generics) необходимы в тех случаях, когда мы не можем заранее знать тип данных, который будем использовать. Они есть во многих языках программирования.

Читать далее
Всего голосов 17: ↑7 и ↓10 -3
Просмотры 2.7K
Комментарии 9

Почему тяжело писать про хороший код?

.NET *Разработка игр *C# *Unity *

Всем привет. Меня зовут Гриша Дядиченко, и я технический продюсер. Почему так сложно писать про хороший код? Меня периодически спрашивают, почему я так мало пишу про архитектуру. В то же время я даже среди заказчиков встречаю мнение что “в Unity пишется только плохой код”. Чтож, давайте один раз попробуем, а точнее я попробую показать, почему это очень сложно. Разработаем вместе такую “простую вещь” как инвентарь.

Читать далее
Всего голосов 20: ↑16 и ↓4 +12
Просмотры 14K
Комментарии 21

Что нового в .NET 7?

Блог компании PVS-Studio Программирование *.NET *C# *

Вышел .NET 7, а это значит, что можно вдоволь насладиться различными нововведениями и фишками. Расскажем про самые интересные улучшения: C# 11, контейнеры, производительность, GC и прочее.

Читать далее
Всего голосов 39: ↑39 и ↓0 +39
Просмотры 13K
Комментарии 36

Руководство по созданию облачного приложения под Microsoft Azure на основе опенсорсных технологий. Часть 1

Блог компании OTUS Программирование *ASP *C# *
Перевод
Tutorial

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

Читать далее
Всего голосов 9: ↑8 и ↓1 +7
Просмотры 1K
Комментарии 2

Практическое применение async/await в Unity

C# *Unity *
Из песочницы

Использование async/await позволяет сделать код легче для понимания, убирает необходимость в функциях обратного вызова и протаскивании необходимых данных (или их сохранения в полях объекта).
Требования и ограничения async/await с примером реализации для UI.

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 3.5K
Комментарии 1

Истории

Через две недели: эмулятор Сферы, часть 3

Разработка игр *C# *Реверс-инжиниринг *Godot *

Привет, Хабр!

После долгого перерыва — снова Сфера. Прошлые статьи (раз, два) были про то, как войти в игру и в ней остаться на всю жизнь. Гулять по миру, конечно, интересно, но быстро надоедает: делать в нем нечего, монстров и NPC нет, даже в озере утонуть не выйдет. Начнем нашу дорогу в темное средневековье там же, где начинается сама игра — в стартовом данже.

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 2.4K
Комментарии 5

Как построить управление анимациями персонажа в Unigine

Программирование *Разработка игр *C# *
✏️ Технотекст 2022
Tutorial

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

Читать
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 758
Комментарии 4

Как побороть Stale Element Reference Exception при E2E тестировании современных SPA-приложений

Блог компании Bimeister Тестирование IT-систем *.NET *C# *Тестирование веб-сервисов *
Tutorial

Всем привет, меня зовут Денис, я Software Developer Engineer in Test (SDET) в компании Bimeister. Я занимаюсь разработкой софта для тестирования — это фреймворки, автоматизированные тесты, настройка CI Pipeline’ов и многое другое.

В статье расскажу, как мы победили исключение Stale Element Reference Exception при разработке нашего фреймворка, используя Selenium WebDriver и C#.

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

Как написать игру на Monogame, не привлекая внимания санитаров. Часть 4, решаем основной вопрос философии

.NET *Разработка игр *C# *
Tutorial

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

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 1.5K
Комментарии 0

Build godot from source on linux with c# support and web export template

C# *WebAssembly *Godot *
Из песочницы

Проблема: чтобы собрать UE из сурсов, достаточно команд; чтобы собрать UE докер-образ, достаточно 1 команды. А чтобы собрать godot из сурсов с поддержкой c# на линукс и с возможностью экспортировать проект в web, надо прочитать 5+ статей и потратить кучу времени на понимание оных. Чтобы вы могли не тратить своё время, я собрал всю необходимую информацию в одной статье. Здесь приведены краткие инструкции по сборке godot движка из сурсов на debain 11 (64bit).

Собрать godot
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 1.7K
Комментарии 3

Сумачечая производительность LINQ в .Net7

.NET *C# *Unity *Разработка под Linux *Микросервисы *
Из песочницы

Исторически так сложилось, что LINQ взыскал "сомнительную" репутацию за его скромную производительность. LINQ медленный, аллоцирует память, сложно читается, поэтому обычно его используют как инструмент запросов к БД и то, зачастую сложные запросы легче написать на SQL. Даже на собеседованиях джунов просят не использовать LINQ в алгоритмах.

Однако в .NET 7 всё будет по-другому...

Подробней...
Всего голосов 37: ↑31 и ↓6 +25
Просмотры 12K
Комментарии 25

Вклад авторов

Работа