Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works
Anything · Lazarus or Delphi
Random projectRandom project

UserListViewerDemo

Demo Applicatiuon UserListViewerDemo.exe

View on GitHub

Member rating

No ratings yet.

Sign in to rate this project.

README

Демо программа User List View

Это демонстрация как работать с компонентом TControlList и JSON Код написан самым современным образом, используя все возможности RAD Studio 12.1, поэтому он не будет совместим с младшими версиями в некоторых аспектах даже с версией RAD 12.0 из - за несовместимости TControlList в котором появился новейший функционал, которого нет в предыдущих версиях.

Причиной написания такой демоверсии стало одно видео, в котором соискатель на должность программиста Delphi выполнял тестовое задание, суть которого нужно было создать программу работающую с JSON файлом и должно было спокойно работать с файлом более 1 миллиона записей (объектов). Автор видео работал с Delphi RAD 10.2 - это уже относительно современная версия, все бы ничего, но код писал самым архаичным способом как будто работает с Delphi 7 - это вызывало чуть ли не смех а местами ужас, как человек не компетентен и сведущ в возможностях RAD 10.2. То видео стало как вызов сделать подобное задание, это то как должен был сделать соискатель, но уже используя все современные возможности языка Delphi на текущий момент это Delphi RAD 12.1.

В данной демонстрационной программе вы можете загрузить список хоть на 10 миллионов записей (объектов) в программу и это будет очень быстро так как используется отдельный поток TTask. Потом можете прокрутить список сверху вниз и снизу вверх и не обнаружите ни каких тормозов или фризов список будет мгновенно перемещаться на более чем 10 миллионов записей - это даже быстрее чем в любой базе данных. Скорость чтения (загрузки) списка JSON на 1 миллион записей (объектов) не более 2.6 - 3 сек. c SSD NVME диска.

Пример файла JSON есть в репозитории Users20.json Файл JSON брал отсюда examplefile.com JSON

[ru] Требования: RAD 12.1 и выше с младшими студиями код не совместим [en] Requirements: RAD 12.1 and higher, the code is not compatible with junior studios.

screenshot

screenshot

Telegram channel: https://t.me/delphi_solutions
Telegram chat: https://t.me/delphi_solutions_chat
Telegram video: https://t.me/delphi_solutions_video
DONATE ME https://t.me/delphi_solutions_donate