Какой код будет работать быстрее? Benchmark'и и несколько аморальных вопросов о строках

На собеседовании мне как-то задали аморальный вопрос про строки, придя домой я начал копать! #devjungles #dotnet #ityoutubers Telegram канал Dev Jungles -
Поддержать канал можно: - Спонсорством на YouTube - Переводом на карту или пополнением банки монобанка: Dev Jungles YouTube Channel Fund
Номер карты банки: 5375 4112 0230 1466 - Или криптой: BTC - 18C3jsFYwviN5FvzpAt4uMWRfUeVKvdWxy ETH - 0x2903f63ba9009732272e91a299053b9d7b623216 USDT on ERC20 - 0x2903f63ba9009732272e91a299053b9d7b623216 USDT on TRC20 - TSmS5RzQKbWdxZkoM2oRo9HK8FYBaq744T LTC - LN3CkrnvZLZTXDUhqTy1gUKMVpLjEPA4G2 DOGE - DPwon439jf3axVSBwyuXso6z7CivuJF655 AAVE - 0x2903f63ba9009732272e91a299053b9d7b623216 Waves - 3P8D57Zw7CrqW2o7dHpvZR2UzAzQRFA2kZd В этом видео я буду рассказывать о том, как правильно проводить бенчмаркинг приложений на платформе .NET и предоставлю практические примеры использования бенчмарков. В начале видео я расскажу о том, что такое бенчмаркинг и зачем он нужен при разработке программного обеспечения. Я объясню основные метрики производительности, которые используются при проведении бенчмарков, и дам советы, как избежать ошибок при проведении тестирования. Затем я перейду к практическим примерам. Я покажу, как использовать библиотеки бенчмарков для .NET, такие как BenchmarkDotNet и NBench, чтобы провести тестирование производительности конкретных методов и алгоритмов. Я также рассмотрю особенности тестирования приложений на разных платформах .NET, таких как .NET Framework и .NET Core. В заключении я подведу итоги и дам рекомендации по правильному использованию бенчмарков при разработке программного обеспечения на платформе .NET. Это видео будет полезно как для начинающих разработчиков, так и для опытных специалистов, которые хотят улучшить свои навыки в области тестирования производительности. Тайм-коды: 00:00 - Тизер 00:32 - История с собеса на Senior и аморальный вопрос 02:03 - Пример. Benckmark аморального вопроса 05:47 - Получение и интерпретация результатов 07:14 - Атрибут MemoryDiagnoser и другие Diagnosers 09:46 - Статья про эволюцию класса стрингбилдера 11:02 - Байки про StringBuilder 18:58 - Четвертый пример. List`class` vs List`struct` 21:59 - Получение и интерпретация результатов 23:56 - Задачка на подумать 25:37 - Задача на самостоятельную работу 27:15 - Еще одна задача

Смотрите также