# 44 Уроки C# – Продолжаем учиться
00:00 Введение • Приветствие и объявление темы видео: «Урок один один». • Обещание вспомнить прошлые темы и поделиться лайфхаками. 00:29 Работа в виртуальной среде • Использование VirtualBox версии 5.2.4.4. • Преимущества работы в виртуальной среде для безопасности данных. • Проблемы с графическими артефактами в более новых версиях. 01:28 Преимущества VirtualBox • Работа с файловыми системами, драйверами и флешками в VirtualBox. • Высокая производительность благодаря настройкам Windows. 02:17 Проблемы с копированием файлов • Ошибка при копировании папок в VirtualBox: файлы не копируются, а папки удаляются. • Решение: копировать файлы через архив. 03:17 Создание снимков в VirtualBox • Рекомендации по созданию снимков в VirtualBox на перезагруженной системе. • Проблема с Drag and Drop после создания снимка. 04:02 Выбор версии .NET • Совет использовать промежуточную версию .NET, например, 4.7.1. • Преимущества версии 4.7.1: поддержка библиотек и новых технологий. 05:00 Лайфхак с комментариями • Использование комментариев с ключевым словом «todo» для организации задач. • Поиск задач через список задач. 07:16 Работа с панелями и кнопками • Проблема размещения кнопки на форме, а не на панели. • Решение: использование Ctrl+Alt+T для изменения иерархии элементов. 09:57 Недоработки в системе • Ошибка при удалении папки с именем «del». • Проблемы с кэшированием файлов при удалении. 10:34 Лайфхак с копированием пути • Правой кнопкой мыши по папке, выбрать «Копировать как путь». • Создание текстового документа и батника для удаления лог-файлов. • Использование Ctrl++ для расширения окна. 11:16 Удаление лог-файлов • Использование команды `dir /s /b` для получения списка файлов. • Применение маски `*.log` для удаления файлов. • Пример команды для удаления всех лог-файлов из указанной папки. 12:02 Ошибка при удалении файлов • При удалении файлов по маске `*.log` удаляются все файлы, включая те, которые не соответствуют маске. • Пример ошибки: удаление файла `log.ics` вместо `log.log`. 13:21 Профилировщик производительности • Использование профилировщика для анализа производительности программы. • Пример анализа запуска программы и распределения ресурсов. • Объяснение работы с диаграммами и областями нагрузки. 14:17 Анализ нагрузки на ресурсы • Определение основных источников нагрузки на ядро, файловую систему и пользовательский интерфейс. • Роль динамического компилятора JIT в распределении ресурсов. • Рекомендации по использованию профилировщика для улучшения производительности. 15:46 Парсинг JSON • Обсуждение различных методов парсинга JSON. • Рекомендация использования веб-сериализатора для более эффективного парсинга. • Пример короткого и эффективного способа парсинга JSON. 18:35 Динамические типы данных • Объяснение разницы между динамическими типами данных и объектами. • Пример использования динамического типа данных `dynamic` и его динамической компиляции. • Подчёркивание преимуществ динамических типов данных для динамического изменения значений в программе. 19:41 Введение и спонсорство • Автор упоминает о спонсорстве на канале и дополнительных материалах для спонсоров. • Упоминает о видео про канал. 20:34 Пример с динамическим тестом • Демонстрация создания динамического теста. • Проверка состояния теста: если не равен нулю и не пустой, вывести в message box. 21:32 Упрощение проверки • Объяснение, как упростить проверку состояния теста. • Использование двух знаков вопроса для проверки пустого состояния. • Пример работы с пустым тестом: вывод «пусто». 22:26 Применение в реальных проектах • Обсуждение использования двух знаков вопроса в реальных проектах. • Пример проверки параметров из реестра. • Перевод параметра в строку для избежания конфликтов. 23:26 Заключение • Подведение итогов вступительного видео. • Анонс будущих видео по отдельным темам. • Призыв ставить лайки и подписываться на канал.
00:00 Введение • Приветствие и объявление темы видео: «Урок один один». • Обещание вспомнить прошлые темы и поделиться лайфхаками. 00:29 Работа в виртуальной среде • Использование VirtualBox версии 5.2.4.4. • Преимущества работы в виртуальной среде для безопасности данных. • Проблемы с графическими артефактами в более новых версиях. 01:28 Преимущества VirtualBox • Работа с файловыми системами, драйверами и флешками в VirtualBox. • Высокая производительность благодаря настройкам Windows. 02:17 Проблемы с копированием файлов • Ошибка при копировании папок в VirtualBox: файлы не копируются, а папки удаляются. • Решение: копировать файлы через архив. 03:17 Создание снимков в VirtualBox • Рекомендации по созданию снимков в VirtualBox на перезагруженной системе. • Проблема с Drag and Drop после создания снимка. 04:02 Выбор версии .NET • Совет использовать промежуточную версию .NET, например, 4.7.1. • Преимущества версии 4.7.1: поддержка библиотек и новых технологий. 05:00 Лайфхак с комментариями • Использование комментариев с ключевым словом «todo» для организации задач. • Поиск задач через список задач. 07:16 Работа с панелями и кнопками • Проблема размещения кнопки на форме, а не на панели. • Решение: использование Ctrl+Alt+T для изменения иерархии элементов. 09:57 Недоработки в системе • Ошибка при удалении папки с именем «del». • Проблемы с кэшированием файлов при удалении. 10:34 Лайфхак с копированием пути • Правой кнопкой мыши по папке, выбрать «Копировать как путь». • Создание текстового документа и батника для удаления лог-файлов. • Использование Ctrl++ для расширения окна. 11:16 Удаление лог-файлов • Использование команды `dir /s /b` для получения списка файлов. • Применение маски `*.log` для удаления файлов. • Пример команды для удаления всех лог-файлов из указанной папки. 12:02 Ошибка при удалении файлов • При удалении файлов по маске `*.log` удаляются все файлы, включая те, которые не соответствуют маске. • Пример ошибки: удаление файла `log.ics` вместо `log.log`. 13:21 Профилировщик производительности • Использование профилировщика для анализа производительности программы. • Пример анализа запуска программы и распределения ресурсов. • Объяснение работы с диаграммами и областями нагрузки. 14:17 Анализ нагрузки на ресурсы • Определение основных источников нагрузки на ядро, файловую систему и пользовательский интерфейс. • Роль динамического компилятора JIT в распределении ресурсов. • Рекомендации по использованию профилировщика для улучшения производительности. 15:46 Парсинг JSON • Обсуждение различных методов парсинга JSON. • Рекомендация использования веб-сериализатора для более эффективного парсинга. • Пример короткого и эффективного способа парсинга JSON. 18:35 Динамические типы данных • Объяснение разницы между динамическими типами данных и объектами. • Пример использования динамического типа данных `dynamic` и его динамической компиляции. • Подчёркивание преимуществ динамических типов данных для динамического изменения значений в программе. 19:41 Введение и спонсорство • Автор упоминает о спонсорстве на канале и дополнительных материалах для спонсоров. • Упоминает о видео про канал. 20:34 Пример с динамическим тестом • Демонстрация создания динамического теста. • Проверка состояния теста: если не равен нулю и не пустой, вывести в message box. 21:32 Упрощение проверки • Объяснение, как упростить проверку состояния теста. • Использование двух знаков вопроса для проверки пустого состояния. • Пример работы с пустым тестом: вывод «пусто». 22:26 Применение в реальных проектах • Обсуждение использования двух знаков вопроса в реальных проектах. • Пример проверки параметров из реестра. • Перевод параметра в строку для избежания конфликтов. 23:26 Заключение • Подведение итогов вступительного видео. • Анонс будущих видео по отдельным темам. • Призыв ставить лайки и подписываться на канал.
