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

.NET *

Хаб со знаниями про NET Framework

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Делаем базу знаний для .NET разработчиков

Блог компании Контур Программирование *.NET *Карьера в IT-индустрии Конференции

Мы вместе с DotNetRu решили сделать базу знаний для .NET разработчиков. Собрать доступные в открытом доступе материалы по .NET и выбрать из них лучшие. Разбить все это по категориям и сложности, выстроить порядок изучения. А еще пригласить известных экспертов в каждой из тем, чтобы они помогли выбрать материалы и рассказали, что и почему вам будет полезно изучить.

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

Читать далее
Всего голосов 22: ↑20 и ↓2 +18
Просмотры 5.6K
Комментарии 17

Новости

Темы оформления Visual Studio Code стали доступны в Visual Studio (+8 интересных тем)

Программирование *.NET *C++ *Visual Studio *C# *
Перевод

Microsoft выпустила новый инструмент, который преобразует темы VS Code для работы в Visual Studio. Теперь есть возможность выбирать паттерн оформления IDE из встроенных тем и тем сообщества в Visual Studio 2022.

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

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

Как заказчик хотел blob вместо cache

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

Сразу введу в курс дела, это был легаси проект и задача была доработка одного эндпоинта, который должен возвращать огромную Json-нину. По итогу работы среднее количество строк в респонсе было 800.000-2.000.000 строк и весил он в районе 30 мб.

На этом проекте я выяснил что Postman уже ломается от 1.000.000 строк, перестаёт работать форматирование и начинает хромать поиск. А в целом весь json напоминал мне один огромный клубок снега который пустили горы и он всё разрастался и разрастался, т.к. когда я пришёл на проект он был всего лишь 40.000-80.000 строк.

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

Читать далее
Всего голосов 23: ↑5 и ↓18 -13
Просмотры 3.5K
Комментарии 5

Управляем компьютером (Windows PC) голосом, через Google Assistant

Блог компании ITSOFT .NET *C# *Умный дом DIY или Сделай сам

Всем привет!

Сделал сегодня простую, но достаточно забавную штуку, и решил поделиться с народом. Сразу хочу извиниться, красивых (и ненужных) картинок и скриншотов не будет: текст рассчитан "на тех, кому ехать, а не шашечки".

Наверняка не я один был озабочен тем, как же управлять компьютером через решения "умного дома", голосом. К удивлению, когда я задался этим вопросом (года два или чуть более назад), то вскоре убедился, что особого выбора-то и нет. Мне удалось найти лишь одну бесплатную утилиту, которая могла, пусть и "через попу автогеном", реализовать желаемое. Утилита эта называется "Push2Run" by Rob Latour, работает она достаточно прямолинейно и безыскусно, через апплеты IFTTT и DropBox - на IFTTT создается апплет с распознаваемой частью фразы (задается через $), а потом эта часть записывается (опять-таки, через скрипты IFTTT) в текстовый файл на DropBox-е. Push2Run отслеживает появление нового файла через FileSystemWatcher, считывает содержимое, как свою команду, и удаляет файл. В принципе, незатейливое, но вполне себе работоспособное решение, если бы не...

Я прекрасно пользовался Push2Run более двух лет, пока, не так давно, не затеял возится с моторизированной "умной" шторой. Под это дело даже заказал себе trial week платного IFTTT Pro - нужно сказать, что бесплатные эккаунты у них обслуживаются, ну, как бы сказать... не очень-то быстро - кстати, это небольшой недостаток как Push2Run в частности, так и IFTTT вообще. Недостаток действительно небольшой - годовая цена Pro сервиса у них (IFTTT) не настолько велика, чтобы реально экономить; тем более, с Pro эккаунтом все заработало гораздо быстрее, но вот именно тут, как у нас говорят, shit happens (ОРТ переводчик: "произошла небольшая неприятность") ☹

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

Создание статического анализатора для C# на основе Roslyn API

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

После прочтения этой статьи вы будете обладать знаниями для создания своего собственного статического анализатора для C# кода, благодаря ему вы сможете найти потенциальные ошибки и уязвимости в исходном коде своих и не только проектов. Заинтригованы? Что ж, давайте начнём.

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

11 проектов, которые нужно сделать, чтобы стать мастером фронтенда

Разработка веб-сайтов *Open source *JavaScript *Программирование *.NET *
Перевод

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

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

Читать далее
Всего голосов 19: ↑12 и ↓7 +5
Просмотры 20K
Комментарии 18

Как мы работу с корреспонденцией оптимизировали

Блог компании АльфаСтрахование .NET *Хранение данных *

Мы в АльфаСтрахование стремимся к сквозной обработке информации (STP) и для этого постоянно производим анализ наших процессов на предмет исключения из них ручной обработки, а также осуществляем мониторинг появления новых «фич» как внутри нашей Компании, так и среди Партнёров, открывающих нам возможности для автоматизации.

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

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

5 проблем и их решения при создании высоконагруженного сервиса с использованием .NET и Kafka

Блог компании Parimatch Tech Высокая производительность *.NET *

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

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

Именно с задачей по подготовке продукта к выходу на международные рынки и столкнулась наша команда летом 2020-го года. На тот момент у нас был обширный набор микросервисов, спроектированных и поддерживаемых исходя из старой организационной структуры компании. Поддерживать эту кучу сервисов было сложно и дорого. Более того, куча сервисов уже не соответствовала актуальным требованиям бизнеса и технологическим трендам. Об этом под катом:

Читать далее
Всего голосов 12: ↑9 и ↓3 +6
Просмотры 4.5K
Комментарии 13

Работа с набором параметров листа через API nanoCAD

Блог компании Нанософт .NET *API *CAD/CAM *C# *
Tutorial

При подготовке чертежа к печати необходимо настраивать большое количество параметров: принтер, формат бумаги, масштаб, область печати и т.д.

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

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

Высокопроизводительная вставка с помощью SqlBulkCopy с IDataReader

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

SqlBulkCopy можно использовать в трех вариантах: вставка данных, представленных в виде DataTable, массива DataRowили IDataReaderэкземпляра. В этой статье я продемонстрирую две реализации IDataReaderинтерфейса, которые используются в сочетании с SqlBulkCopyвысокопроизводительной вставкой в ​​базу данных. Два других варианта похожи друг на друга и могут использоваться для относительно небольших объемов данных, поскольку они требуют, чтобы все записи были предварительно загружены в память перед их передачей SqlBulkCopy. Напротив, этот IDataReaderподход более гибкий и позволяет работать с неограниченным количеством записей в «ленивом» режиме, что означает, что данные могут передаваться SqlBulkCopyна лету так быстро, как сервер может их использовать. Это аналогично подходу IList<T>vs.IEnumerable<T>.

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

Я не могу спроектировать архитектуру своего интернет-магазина или как я пишу «под клиента»

Разработка веб-сайтов *Программирование *.NET *Разработка под Windows *

В этой статье я расскажу про свою проблему с доработкой сайта под клиентов...

Читать!
Всего голосов 19: ↑5 и ↓14 -9
Просмотры 6.1K
Комментарии 15

Разработка кроссплатформенного приложения на Avalonia для Raspberry Pi с использованием Github Action

.NET *Яндекс API *C# *GitHub Разработка на Raspberry Pi *
Из песочницы

Вступление

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

Примерный план был такой: приобрести Raspberry PI 3 и экран, подключить его к интернету, написать приложение, повесить на стенку и пользоваться с удовольствием.

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

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

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

Выбор технологий для разработки и настройка Raspberry Pi

Для решения поставленных задач, нам потребуется ряд технологий, а именно:

-        Кроссплатформенный фреймворк для работы логики и GUI приложения;

-        ПО для автоматического развертывания приложения;

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

CI/CD для Dynamics CRM на базе Azure DevOps. Часть 2. Continuous Deployment

.NET *CRM-системы *Microsoft Azure DevOps *

В прошлой статье я рассказал как собрать CI часть пайплайна непрерывной поставки CI/CD на базе Azure DevOps Pipelines для Microsoft Dynamics CRM. Сегодня же поговорим о CD (Continuous Deployment) части.

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

Нагрузочное тестирование сайта на Microsoft Azure

Тестирование IT-систем *.NET *Microsoft SQL Server *Microsoft Azure
Из песочницы

В последние лет пять про облачные технологии слышно все чаще. Microsoft и Amazon отчитываются о высоком росте доли облачных сервисов в отчетах о прибыли. Российский Яндекс относительно давно продвигает свое Облако. К этому подключился и Сбер со своим облачным продуктом. Часто можно услышать и о других, менее крупных игроках.

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

Цель этой статьи можно выразить в 2х пунктах:

1. С одной стороны мы познакомимся с тарифными планами службы веб-приложений и службы хостинга баз данных

2. С другой стороны мы проведем нагрузочное тестирование тремя стратегиями тестирования в разрезе разных тарифных планов.

Перейдем к эксперименту
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 2.2K
Комментарии 9

Реализуем рефлексию при помощи source generators

Высокая производительность *Ненормальное программирование *.NET *C# *

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

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

48 полноценных бесплатных книг для программистов (happy developer's day)

Open source *Программирование *.NET *Читальный зал DevOps *
Tutorial

Привет, Хабр! Немного запоздало (ко дню программиста) делюсь подборкой бесплатных книг по программированию. Все они полезные, уровень скорее профессиональный, хотя и для развития от базового тоже подойдет, но, к сожалению, на английском. Среди тем книг: .NET, Алгоритмы, Android, iOS, Angular, C, C++, C#, JS, Linux, Python. В целом, найдется почти любая тема, которая приходит в голову.

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

Читать далее
Всего голосов 100: ↑99 и ↓1 +98
Просмотры 60K
Комментарии 55

Делаем быстрый поиск по неточному совпадению среди 100 миллионов товаров

Поисковые технологии *.NET *Алгоритмы *C# *Разработка под e-commerce *
Tutorial

Это четвертая статья с этой картинкой для привлечения внимания. Она каким-то удивительным образом опять подошла по смыслу.

Мы делаем проект по управлению большими каталогами товаров, и нам потребовалось быстро искать товары по неточному совпадению.

Забегая вперед, скажу, что от идеи до рабочего решения на продакшене прошло пять часов.

Исходная ситуация такова: таблица в MS SQL базе, 50 миллионов записей, записи добавляются постоянно, удаляются или обновляются крайне редко. Средняя длина названия товара составляет 64 символа. Поиск по неточному совпадению работает, для этого используются триграммы и полнотекстовый индекс по столбцу с триграммами. Ранжирование результатов осуществляется при помощи функции CONTAINSTABLE. Результаты получаются релевантные, но поиск работает откровенно медленно, 2-5 секунд на запрос, в зависимости от длины запроса. Мы хотим ускорить его раз в 20, а лучше в 100 подручными средствами.

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

Асинхронные потоки от Стивена Клири

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


Про Стивена Клири можно сказать «он всерьез занялся многопоточным программированием еще до того, как это стало мейнстримом». Клири стал палочкой-выручалочкой для тысяч разработчиков, терпеливо объясняя на StackOverflow, почему программы не работают и как их исправить.


Еще в 2019-м на нашей конференции DotNext Стивен рассказал об асинхронных потоках: чем они могут быть полезны, чем отличаются от существующих библиотек вроде System.Reactive и RxJS, а также как задействовать их в проектах.


Спустя пару лет этот доклад остается полезным — поэтому теперь, в преддверии нового DotNext, мы решили сделать для Хабра текстовый перевод доклада Стивена. Видео тоже есть под катом. Далее повествование будет от лица спикера.

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

Самодельный стратостат. Часть 2

.NET *Разработка на Raspberry Pi *DIY или Сделай сам

Vostok-3b view


Long, long time ago… Нет, не так. 4 месяца назад я рассказал вам, как из клея и резиновых сапог создать с нуля свой стратостат с телеметрическим модулем и видеокамерой. Я так же описал наш опыт запуска и поиска этого метеозонда, обозначив несколько возникших проблем. Что ж. Мы анализировали, анализировали и доанализировались до четвертого шара. И сейчас я расскажу вам, что произошло за это время, почему он четвертый, и где пропавшие два. Эта часть будет менее технической, т.к. изменений конструкции почти не было, но те что были — имеют значение. Если вы вне контекста, то эту часть советую читать только после прочтения первой (хотя бы технических разделов). Ссылка на первую часть ниже. Будет много фото, видео и графиков. Поехали?

Читать дальше →
Всего голосов 75: ↑74 и ↓1 +73
Просмотры 14K
Комментарии 97

Топ-10 докладов DotNext 2021 Piter

Блог компании JUG Ru Group Высокая производительность *.NET *Конференции

Весной мы провели DotNext 2021 Piter. А теперь, пока готовим следующий DotNext (пройдёт 21-22 октября), выложили на YouTube видеозаписи весеннего.

И традиционно представляем Хабру лучшую десятку докладов (составленную на основе зрительского фидбека). Для большей интриги доклады расположены в тексте от десятого места к первому, чтобы можно было до последнего момента гадать, кто лидирует.

Если вы .NET-разработчик, то почти наверняка под катом есть что-то, полезное для вас: там и перформанс, и глубокая отладка, и БД с разных ракурсов, и даже детективное расследование.

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

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