Code review NET web приложения ASPNET 7
>> YOUR LINK HERE: ___ http://youtube.com/watch?v=sHmTf8m-_t8
В этом видео мы рассмотрим .NET web приложение, которое любезно предоставил Евгений. Я разберу основные ошибки, расскажу как его улучшить, как правильно сделать рефакторинг кода. Так же мы рассмотрим разные советы для улучшения кода. • 00:00:00 - Вступление • 00:01:20 - Про проект • 00:02:30 - Введение • 00:05:15 - Issues • 00:07:45 - Pull request (PR) • 00:09:13 - Action • 00:12:10 - Сервер + БД / PR • 00:15:55 - Milestones • 00:16:50 - ReadMe • 00:22:44 - Коммиты • 00:28:52 - Разделение фронтенда/бэкэнда • 00:31:00 - Про настройку CI/CD • 00:32:50 - Про монолит • 00:34:35 - Three-tier • 00:37:48 - Clean architecture • 00:44:10 - DDD • 00:45:49 - Дублирование слов в методах/свойствах • 00:49:30 - Guard clause • 00:53:27 - Null vs Exception • 00:59:27 - CancellationToken • 01:00:20 - Async в названии • 01:00:50 - Nullable (pvs-studio) • 01:04:41 - Интерфейсы • 01:07:55 - Сущности (entity) • 01:19:20 - Data слой • 01:19:40 - Generic repository • 01:20:53 - Specification pattern • 01:23:55 - FirstOrDefault to Any • 01:27:45 - Сокращаем имена/выносим репозитории • 01:30:00 - ToLower • 01:31:38 - Where + Any • 01:32:41 - ToList • 01:34:15 - AutoMapper • 01:36:35 - Получение нужных колонок • 01:41:20 - Фильтрация через обьект • 01:42:50 - Null (??) • 01:14:50 - Один Where • 01:46:00 - Оптимизация обновления • 01:47:40 - Необязательный Where • 01:48:30 - SOLID (ISP) • 01:49:10 - string to enum • 01:51:28 - Удаление по id • 01:53:15 - Неправильное условие • 01:55:40 - UnitOfWork • 02:00:17 - Ef vs Dapper • 02:03:00 - Обработка исключений • 02:07:07 - JsonSerializerOptions • 02:08:00 - DTO • 02:12:22 - enum Нумерование • 02:16:05 - Вспомогательные классы • 02:20:27 - Константы • 02:23:00 - Сервисы • 02:25:30 - Jwt • 02:26:40 - SignalR • 02:32:38 - REST • 02:44:25 - Выводы • Fork - https://clck.ru/35t7FG • Issues - https://clck.ru/35t7GB • Pull requests - https://clck.ru/35t7Gn • Actions - https://clck.ru/UooBd • Milestones - https://clck.ru/35t7Hn • eShopOnWeb - https://clck.ru/35t7JU • InMemoryDb - https://clck.ru/35t7Jz • Как выложить приложение - • Как бесплатно выложить .NET web прило... • Правильные коммиты - https://clck.ru/35t7Ke • Three-tier architecture - https://clck.ru/35t7Lh • Clean architecture: • Дядя Боб - https://clck.ru/U5KdP • От Microsoft - https://clck.ru/35t7MZ • DDD: • Wiki - https://clck.ru/Z55XS • Видео доклад - • Алексей Мерсон — Domain-driven design... • Microservices: • Wiki - https://clck.ru/ZHETQ • Книга по микросервисам - https://clck.ru/35t7Qb • Курс по Clean architecture/DDD - https://clck.ru/35ttmh • Проектирование архитектуры сервиса доставки еды - • Проектирование архитектуры сервиса до... • Про микросервисы 11 часов - https://clck.ru/35ttqu • Guard clause - https://clck.ru/35t7RV • Null vs Exceptions - https://clck.ru/35t7Sw • CancellationToken - https://clck.ru/35t7TK • Nullable для всего проекта - https://clck.ru/35t7Tq • Pvs-studio - https://clck.ru/35t7UW • DRY - https://clck.ru/UdBmu • Generic repository - https://clck.ru/35t7VK • Specification pattern - https://clck.ru/35t7Vq • Регистро-независимость для колонки (COLLATE case_insensitive ) - https://clck.ru/35t7Wi • Any in Where to join - https://clck.ru/35t7XC • Выбрать только нужные колонки без .Select(): • StackOverFlow - https://clck.ru/35t7Zu • Моя либа - https://clck.ru/35uNzP • Обновить сущность без получения - https://clck.ru/35t7bC • Удалить сущность по id - https://clck.ru/35t7bo • UnitOfWork - https://clck.ru/35t7cA • Repository/UnitOfWork антипаттерн - https://clck.ru/35t7cb • Exception ToString - https://clck.ru/35t7cv • Библиотека для обработки исключений - https://clck.ru/35t7dK • JsonSerializerOptions по умолчанию - https://clck.ru/35t7dd • Про константы, секреты, переменные окружения - https://clck.ru/35ttou • Refresh token - https://clck.ru/35t7f6 • ExtremeCode про архитектуру - • Вся суть объектно-ориентированного пр... • REST - https://clck.ru/AHJ7y • Контакты • Rutube - https://rutube.ru/channel/31587053/ • VK Video - https://vk.com/video/@kurnakovv • YouTube - / @kurnakovv • GitHub - https://github.com/kurnakovv • VK - https://vk.com/kurnakovv • Telegram - https://telegram.me/kurnakovv • #ityoutubersru #ityoutubers #it #kurnakovv #программирование #программист #aspnetcore #dotnet #csharp #dotnetcore #aspnet #codereview #review #код_ревью #ревью #проверка_кода #проверка #refactoring #рефакторинг #github #гитхам #git #гит #issues #pull_request #actions #github_actions #milestones #github_milestones #eshoponweb #in_memory_db #render #commit #коммит #three_tier_architecture #трех_уровневая_архитектура #clean_architecture #architecture #чистая_архитектура #uncle_bob #дядя_боб #clean_code #чистный_код #microsoft #ddd #microservices #микросервисы #guard_clause #exception #error_handling #обработка_исключений #исключения #cancellation_token #nullable #pvs_studio #dry #generic_repository #repository #репозиторий #specification_pattern #паттерн_спецификация #postgresql #postre #efcore #collate #case_insensitive #query #db #select_specific_fields #unitofwork #unit_of_work #jsonserializeroptions #constants #environment_variables #константы #переменные_окружения #rest #рест #kurnakovv #kurnakov
#############################
![](http://youtor.org/essay_main.png)