Мы продолжаем знакомство с шаблоном проектирования: "Active Record". На этом уроке мы реализуем несколько поисков по нашей базе из 10_000 записей случайных пользователей.
Дата отправки отчёта:
13 марта 2019 г.
Задание выполнено: за
55 мин.
Чему научился:
dapoki готов трудиться за 500 евро
Метод getMinSalaryUser возвращает экземпляр класса User
В теле метода создается экземпляр с именем min из значением при инициации null
В цикле, перебирающем все объекты ArrayListа userов с проверкой на значение null или зарплаты меньшей уже найденной, находится учетка с наименьшей зарплатой
Последняя инструкция метода getMinSalaryUser возвращает экземпляр User min
Похожим алгоритмом нашли самого молодого
После удаления альтруистов, жаждущих менее одной тысячи евро, база сократилась на 700 учетных записей и самым альтруистичным стал работником стал fymi
Что было сложным:
НА СТАРОЙ ТЕХНИКЕ ЭКЛИПС ТОРМОЗИТ, НЕ СТАВЬТЕ ЭТО ЧУДО БЕЗ НЕОБХОДИМОСТИ))
Отличный шаблон для сериализации данных или работай с базой данных. Обяхательно нужно брань данный шаблон на вооружение. Это хорошо при создании нового своего приложения
Отчёт оценивали: 2146. Иван+117425. ser2018+110365. Rita+19480. Кирилл+1162. Андрей+120071. New programist+119022. Олег Чудновский+118681. alklokov+120545. Max+120659. no name+13922. Александр+13146. Permitin Alexey+19913. vip+111353. AlliZzeN+117947. Dmitry Sinitsin+1791. Валерий Жданов+1
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: Реализовал методы : Program().getMinSalaryUsers(), Program().getMaxSalaryUsers(), Program().getMaxYearUsers(), Program().dropPoorUsers().
Ну буду пробовать использовать в этот метод на экзамене если получиться :)
Научился: Повторил пройденное Для каждого метода получения необходимой информации добавил вспомогательный метод отображения это самой информации в красивой таблице.
Вместо возвращения самого молодого и т.д. пользователя использовал ArrayList() так как если по зарплате рандом не попал из-за малого количества сгенерированных пользователей, то по году рождения их было более 1, а выводить только одного не верное решение (см. скриншот).
Предварительно удалили все записи и запустил все методы с нуля, и уместились на экране все фазы.
Добавил отображение информации во время индексации и удаления пользователей для наглядности.
Я думаю подобные методы обработки базы пользователей, можно спокойно перенести в класс User(), по аналогии с методом selectAll().
Мини курс по Активным записят отличный, но он аналогия того, что я реализовал сам и использую при реализации некоторых сайтов.
Но при реализации данного метода на игровых серверах не хватает системы кэширования часто используемых пользователей, дабы уменьшить нагрузки на БД и увеличить скорость работы серверов в целом.
з.ы.
Хотел добавить систему кэширования, чтобы ускорить работы с файлами пользователей и обновлять их только в том случае, если они были изменены в кэше (ОЗУ), но так подумал, что это может быть реализовано как VIP урок или что-то типо, да и времени и так не мало потратил на этот урок, так как было сложно остановиться оптимизировать его и наводить марафет =)