Обновить
182.1
Рейтинг

C# *

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

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

Представляем .NET 7 Preview 1

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

Мы рады объявить об очередной вехе в истории .NET. Отмечая 20-летие технологии, .NET 7 Preview 1 знаменует собой первый шаг вперед к следующим 20 годам .NET.

ASP.NET Core Preview 1 и EF7 Preview 1 также были выпущены.

.NET 7 строится на базе, созданной .NET 6, которая включает в себя унифицированный набор базовых библиотек, среду выполнения и SDK, упрощенный процесс разработки и более высокую производительность. Основные направления работы .NET 7 включают улучшенную поддержку облачных сценариев, инструменты, облегчающие обновление устаревших проектов, а также упрощение работы разработчиков за счет упрощения работы с контейнерами.

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

Новости

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

Блог компании Хекслет Блог компании Dodo Engineering Программирование *.NET *C# *

У сервиса онлайн-обучения программированию Хекслет есть собственный Open Source проект Code Basics, на котором выходят бесплатные курсы для начинающих на разных языках. Когда-то их было только два – PHP и JavaScript, сейчас уже более десятка. В компании Dodo Engeneering есть хорошая экспертиза по C#, поэтому мы вместе решили сделать курс с тренажером для тех, кто хочет начать изучение программирования именно с него. Во время написания курса оказалось, что из-за долгого холодного старта и ограничений учебной платформы все решения студентов падают.

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

Читать далее
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 2.2K
Комментарии 4

Это Gaidai какой-то. Сервис HTTP сценариев

Блог компании ATI.SU .NET *C# *

Привет, Хабр, меня зовут Артем Кудряшов, некоторую кучу лет я работаю в ATI.SU — крупнейшей в России бирже грузоперевозок. В разное время я писал код, управлял командами и занимался другими весёлыми вещами. В статье, что вы видите, хочу рассказать об одном из наших сервисов с интересной функциональностью и крутым, по моему личному мнению, названием — Gaidai. Поехали.

У нас в системе есть уведомления для пользователей: мы сообщаем о новых грузах, новых сделках и разных других активностях. Получать уведомления можно на нашем сайте, в мобильных приложениях, пуш-уведомлениями на смартфоны и в браузеры, SMS сообщениями, письмами на почту. В общем и целом, если вы наш пользователь, и вам хочется что-то узнать — мы вас найдём.

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

Читать далее
Всего голосов 11: ↑8 и ↓3 +5
Просмотры 1.1K
Комментарии 1

Как мы TLS Fingerprint обходили…

Информационная безопасность *Open source *.NET *C# *Go *

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

Видимо сайт добавил наш прокси в blacklist, но в нашем пуле около 100к проксей, все прокси попали в blacklist?

Попробовав запустить парсер на другом сервере, HTTP запросы возвращали корректные данные. Спустя неделю, ситуация повторилась.

Мы также попробовали отправить запрос на локальной машине с "забанненым" прокси, на удивление, данные пришли корректные, но отправив запрос с этим же прокси на сервере, получили фейковые. Отсюда вытекает вопрос: как сайт определяет, что запросы посылаются с одной машины, если используются прокси?

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

Читать далее
Всего голосов 38: ↑34 и ↓4 +30
Просмотры 6.8K
Комментарии 32

Минуточку внимания

Unity Http Server или как превратить телефон пользователя в геймпад

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

Всем привет! Меня зовут Григорий Дядиченко, и я технический продюсер. Сегодня хотелось бы поговорить про протокол HTTP, про сервера, и про простенькую реализацию Http сервера вшитого в Unity. Если вам это интересно – добро пожаловать под кат!

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Просмотры 1.3K
Комментарии 16

Skyrim на Unity

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

Статья о моих приключениях при разработке первой игры в 3D. Да, вы правильно поняли, я замахнулась на святое, и попробовала сделать Skyrim на Unity. Но делала это с любовью и от чистого сердца.

Читать далее
Всего голосов 91: ↑82 и ↓9 +73
Просмотры 24K
Комментарии 30

Unity: 8 причин отказаться от Coroutine в пользу Async

Разработка игр *C# *Unity *
Из песочницы

Когда речь заходит об асинхронных операциях в Unity, на ум первым делом приходит coroutine. И это не удивительно, так как большинство примеров в сети реализованы именно через них. Но мало кто знает, что Unity поддерживает работу с async/await еще с 2017 версии.

Так почему же большинство разработчиков до сих пор использует coroutine вместо async/await? Во первых, как я уже упомянул, большая часть примеров написана с использованием coroutine. Во вторых, async/await кажется очень сложным для начинающих разработчиков. Ну и в третьих, когда речь заходит о коммерческих проектах, где основным из критериев является стабильность, предпочтение отдается проверенному годами подходу.

Но технологии не стоят на месте и появляются библиотеки, которые делают работу с async/await в Unity удобной, стабильной и самое главное высокопроизводительной.

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

Как пользоваться Microsoft Dataverse Web API и не плеваться

Блог компании EPAM Программирование *.NET *C# *Microsoft Azure
Tutorial

Обычно для решения рабочих задач хватает примера кода из своего или соседнего проекта. Дополнительные сведения можно найти на страницах официальной документации, в профильных блогах или на StackOverflow. Но вот про реализацию работы Azure Functions c базой данных Dataverse, которая относится к облачной Power Apps (часть Power Platform), вы найдете крупицы информации.

Автор этой статьи – Борис Шимберев, .NET-разработчик в EPAM. Борис на практике разобрался со всеми мыслимыми и немыслимыми проблемами, с которыми можно столкнуться при работе с Microsoft Dataverse. В статье он рассказывает об особенностях использования этой СУБД и делится полезными находками.

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

Почему моё приложение при открытии SVG-файла отправляет сетевые запросы?

Блог компании PVS-Studio Информационная безопасность *Программирование *.NET *C# *

0923_SVG_XXE_ru/image1.png


Вы решили сделать приложение, работающее с SVG. Набрали библиотек, запаслись энтузиазмом, и в итоге всё удалось. Но вот незадача! Внезапно вы обнаруживаете, что приложение отправляет странные сетевые запросы. Кроме того, с хост-машины утекают данные. Как же так?

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

TeamCity C# API для сборки приложений

Блог компании JetBrains .NET *C# *Системы сборки *

Начиная с первых версий .NET Core для сборки приложений, компания Microsoft предоставляет простой и удобный интерфейс командной строки (.NET CLI). Его возможности покрывают большинство потребностей по сборке, упаковке и тестированию приложений. Несмотря на это, по мере роста приложения, увеличения количества его составных частей/сборок/пакетов, усложнения процессов тестирования и развертывания, рядом с проектом часто появляются такие файлы сценариев как build.ps1, build.sh, build.cmd или даже полноценные инфраструктуры автоматизации построения приложений. В статье TeamCity C# script runner была предложена еще одна альтернатива - сценарии C#, которые особенно полезны, когда необходимо эффективно автоматизировать какой либо аспект сборки силами .NET разработчиков или  DevOps, знакомыми с синтаксисом C#. Тогда же была упомянута идея расширить встроенный API сценариев для более глубокой интеграции с TeamCity и для поддержки наиболее частых вариантов использования. Предполагая, что API сценариев чаще всего будет задействован при сборке приложений, мы в первую очередь решили расширить именно его. В этой статье будут приведены примеры использования этого API.

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

Компилятор бизнес-правил на основе деревьев выражений

Блог компании Arcadia Программирование *.NET *C# *Microsoft Azure

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

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

DotNetRu. 2020-2021. Итоги

Блог компании JUG Ru Group .NET *C# *Конференции

Привет, на связи DotNetRu – сообщество, объединяющее .NET разработчиков России и не только. Казалось бы, совсем недавно мы рассказывали про митапы и прочие наши активности 2019 года и с оптимизмом смотрели в наступающий 2020-й. Штош, начался он действительно бодро, но затем известные события чуть охладили наш пыл. Какое-то время мы посидели со всей страной в домике в надежде переждать неприятности. Но ближе к лету дошли до стадии принятия и провели митап онлайн, открыв новую большую главу в истории сообщества DotNetRu. И если в конце 2020-го хотелось просто сесть, выдохнуть и забыться, а не писать статьи на хабр, то сейчас, в начале 2022-го, мы полны сил и бодры как никогда!

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

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

Blazor: Нужен ли нам .Net в вебе?

Блог компании Orion Innovation .NET *C# *

Всем доброго времени суток, меня зовут Михаил. Я .net разработчик в компании Orion Innovation. Сегодня речь пойдет про наш опыт создания веб приложения при помощи Blazor. Обсудим с какими проблемами мы столкнулись при разработке и почему вообще решили использовать Blazor.

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

Пожалуй, осталось совсем немного людей, кто хоть раз не слышал про новый, модный, молодежный фреймворк от Майкрософт. Однако, для тех кто в танке. Blazor - это фреймворк для построения web приложений с использованием всеми любимой платформы .net. Если опустить детали, то можно выделить 3 главных компонента, которыми вы будете пользоваться при создании своих сайтов: Razor pages, .Net core и web технологии (html, css, js). 

Читать далее
Всего голосов 28: ↑26 и ↓2 +24
Просмотры 12K
Комментарии 62

Координаты курсора сцены в редакторе

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

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

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

Вычисление стихотворного размера

Программирование *.NET *Алгоритмы *C# *Natural Language Processing *

Привет, Хабр! Расскажу о решении нестандартной задачи: алгоритм определения силлабо-тонического стихотворного размера по строке на русском языке. Опишу все нюансы и неочевидные подводные камни, с которыми столкнулся.

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

20 часов оптимизаций, вживую

Программирование *.NET *SQL *Microsoft SQL Server *C# *

Всем привет.

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

А славы и света софитов хочется-то! 

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

И я попробовал.

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

Под катом немного об идеях с которыми я делал видео и немного текста про каждую из тем.

Читать далее
Всего голосов 17: ↑16 и ↓1 +15
Просмотры 6.5K
Комментарии 8

20 лет .NET

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

Сегодня исполняется 20 лет с тех пор, как Visual Studio .NET была запущена, и первая версия платформы .NET была выпущена для всего мира. Мы празднуем весь месяц и приглашаем вас прийти на специальную праздничную трансляцию, которая состоится сегодня, 14 февраля, в 20:00 по московскому времени на сайте www.dot.net. Делитесь своими историями в Твиттере с хэштегом #dotNETLovesMe, расскажите о своих проектах или скачайте что-нибудь.

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

Диапазоны (Ranges) в C# 8

.NET *Visual Studio *C# *

Всем привет. Продолжаю цикл статей про нововведения в C# 8 версии. Ранее уже вышло статья про работу с индексами.

Сейчас же поговорим про диапазоны (Ranges). Забегая вперед, скажу, что теперь мы, C# разработчики, можем получать из коллекции непрерывный кусок элементов очень простым и понятным синтаксисом. Очень похоже это все на срезы как в Python.

Пристегнитесь. Начинаем😎

Погнали
Всего голосов 11: ↑9 и ↓2 +7
Просмотры 5.9K
Комментарии 19

Уязвимости из-за обработки XML-файлов: XXE в C# приложениях в теории и на практике

Блог компании PVS-Studio Информационная безопасность *Программирование *.NET *C# *

Как простая обработка XML-файлов может стать дефектом безопасности? Каким образом блог, развёрнутый на вашей машине, может стать причиной утечки данных? Сегодня мы ответим на эти вопросы и разберём, что такое XXE и как эта уязвимость выглядит в теории и на практике.


0918_XXE_BlogEngine_ru/image1.png

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

Криптостойкость хеш функций «на пальцах» или зачем нужна математика программисту

Криптография *.NET *C# *Математика *
Из песочницы

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

Читать далее
Всего голосов 22: ↑4 и ↓18 -14
Просмотры 11K
Комментарии 19

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

Работа