52. Avalonia UI Real World Generic Refactoring

52. Avalonia UI Real World Generic Refactoring

Видео: 52. Avalonia UI Real World Generic Refactoring

RuTube

Ленинский Букварь

Опубликовано: 21.04.2026 в 00:00:00 | Продолжительность: 00:27:27

00:00 Проблема масштаба модели просмотра страниц действий Класс состоит из 1470 строк кода более 1000 из которых повторяются. Повторяются действия: извлечение списка добавление нового элемента удаление и сохранение элемента. Цель создать универсальный класс для сокращения кода. 00:49 Начало оптимизации Выбор файла с информацией для начала оптимизации. Замена списка и создание элементов в универсальном классе. Логика повторяется в каждом элементе списка. 01:26 Создание нового класса Добавление нового класса в модель представления. Переопределение базы viewmodel с использованием стандартной viewmodel. Перенос элементов для работы со списком. 02:26 Универсализация свойств Изменение свойств списка и выбранного элемента. Создание универсального типа viewmodel. Проблема с идентификатором выбранного элемента. 03:52 Создание интерфейса Создание общедоступного интерфейса для элементов списка. Реализация интерфейса в моделях представления. Доступ к идентификатору через интерфейс. 06:45 Абстрагирование функций Абстрагирование функции fetch для получения списка информации о файлах. Передача команды funk в конструкторе для возврата наблюдаемой коллекции. Обновление логики для работы с общим списком. 08:14 Сохранение состояния Интеграция состояния сохранения в модели view. Определение общих свойств и методов для унификации логики. Копирование установленного состояния сохранения. 10:07 Добавление нового элемента Создание метода новый элемент для добавления нового элемента. Применение метода в конструкторе. Уточнение названия метода создавать элементы. 11:05 Уникальная логика создания нового предмета Выделение специфической логики создания нового предмета. Избегание смешивания общей и уникальной логики в универсальном классе. Оставление уникальной логики для конкретных опросов. 11:50 Отмена и удаление выбранного элемента Ввод идентификатора выбранного элемента. Удаление выбранного элемента при отмене. Повторение процесса добавления сохранения удаления и отмены. 12:44 Реализация нового элемента в модели просмотра Проверка наличия нового элемента в модели просмотра процесса. Упоминание о возможном общем классе для модели просмотра процесса и действия. Реализация логического значения для нового элемента. 13:30 Удаление элемента из пользовательского интерфейса Копирование определения заголовка для реализации удаления элемента. Переименование метода для удаления элемента. Проверка наличия элемента перед удалением. 14:22 Ввод идентификатора и удаление элемента Ввод идентификатора для удаления элемента. Удаление элемента из пользовательского интерфейса и базы данных. Сокращение кода для передачи идентификатора. 15:38 Диалог и название элемента Начало диалога при удалении элемента. Добавление названия элемента для описания диалога. Передача модели основного вида и диалоговой службы. 17:57 Обновление выбранного элемента Обновление выбранного элемента из списка. Асинхронное сохранение элемента. Использование службы базы данных для добавления и обновления элементов. 20:50 Компиляция и проверка ошибок Начало компиляции и проверка ошибок. Исправление ошибок связанных с настройкой нового свойства. Проверка работы функции извлечения списка. 21:36 Завершение Копирование и исправление ошибок в других местах. Повторная компиляция для подтверждения правильности работы. 21:50 Исправление ошибок в виде Ошибки находятся внутри вида нужно их исправить. Команда добавить новый элемент информации о файле заменена на добавить элемент. Список информации о файлах теперь называется список объектов для выбора информации о файле. 22:49 Работа с внутренним списком Внутренний список привязан к идентификатору выбранного элемента. Команда удалить информацию о файле заменена на удалить элемент. Важно не пропустить элементы при вставке кода. 23:50 Проверка и сохранение изменений Проверка не пропущены ли внешние элементы. Отмена и сохранение изменений. Компиляция кода и проверка его работы. 24:41 Тестирование интерфейса Создание и сохранение нового файла. Подтверждение работы кода выбора. Получение универсального интерфейса с возможностью выбора. 25:06 Применение подхода к другим функциям Применение подхода к распечатыванию списка выбору пользовательских свойств сохранению модели чертежа импорту чертежа и макросу. Добавление 100 строк кода для реализации методов. 26:43 Масштабная очистка кода Масштабная очистка кода откладываемая на некоторое время. Стандартизация поведения классов по мере работы. Рефакторинг классов по мере их развития. Ссылка на GitHub для доступа к завершённому коду.,

#

Комментарии ( 0 )
Введите имя и нажмите войти
Войти

Сначала новые
Сначала старые
Сначала лучшие

Присоединяйтесь к обсуждению

М
Гость
Это моё видео как вы его нашли
М
Гость
Я не совсем поняла, что хотели добится организаторы этой акции, когда закопали на ГОД машины? Хотели сравнить какая больше проржавеет? Земля, да еще и с водой, для любого металла это однозначно смерть, тем более за такой не малый срок. Мне, если честно, очень жаль как машины, так и людей, смотрет...
М
Гость
Супер!
М
Гость
Это не DDoS атака. DDoS атаку делают на Memcrashed используя Termux или Kali Linux. Memcrashed это серьёзная программа. Или использовать программу hammer. Программа hammer создаёт ботов для атаки. Мой тебе совет скачай программу PhoneSploit, вот ссылка: https://github.com/metachar/PhoneSploit ...
М
Гость
Мы после квартирантов избавились от запаха сигарет Ордогоном. Очень хорошая вещь против запахов.

40. Avalonia UI Real World (Loading Data Models)
Смотреть
Ленинский Букварь
  2026-04-20 в 18:50:34
2. Dops An Overview
Смотреть
Channel73310550
  2026-04-22 в 01:50:49
1. Solver Snow Footprints
Смотреть
Channel73310550
  2026-04-22 в 01:46:55
Форд понял одну вещь — и захватил рынок
Смотреть
Игнат Гулидов | Автоистории
  2026-04-22 в 01:18:31
Arturia Augmented Persia Overview
Смотреть
57. Avalonia UI Real World Drag Drop ListBox
Смотреть
Ленинский Букварь
  2026-04-22 в 00:41:14
About Shelf Tools
Смотреть
Channel73310550
  2026-04-22 в 01:44:43
45. Avalonia UI Real World (New Page Back End)
Смотреть
Ленинский Букварь
  2026-04-21 в 04:03:00
44. Avalonia UI Real World (Automatic Restart On Error)
Смотреть
Ленинский Букварь
  2026-04-21 в 02:56:20
55. Avalonia UI Real World (Entity Framework TPC)
Смотреть
Ленинский Букварь
  2026-04-21 в 21:36:29
53. Avalonia UI Real World (Headered ListBox)
Смотреть
Ленинский Букварь
  2026-04-21 в 19:04:10
3. Output Flag In Dops
Смотреть
Channel73310550
  2026-04-22 в 01:53:17
Гимнастика мозга с Валерией Брушковской 15:00 22.4
Смотреть
Как избавиться от свиста в речи
Смотреть
Фишки продаж. Коллаборация Sela в магазине обуви и одежды. #продажи #коллаборация #sela
Смотреть
48. Avalonia UI Real World (Advanced Collection Changes)
Смотреть
Ленинский Букварь
  2026-04-21 в 13:19:06
43. Avalonia UI Real World (Error Handling UI)
Смотреть
Ленинский Букварь
  2026-04-21 в 01:48:30
49. Avalonia UI Real World (Add Files To List)
Смотреть
Ленинский Букварь
  2026-04-21 в 14:23:15