REKLAMA

Smart Model. Implementacja mechanizmu rejestracji i cofania wprowadzonych zmian

Każda profesja ma swoje opowieści grozy. Branżowe historie, które z pozoru wydają się być niezrozumiałe albo błahe, ale opowiedziane we właściwych kręgach, mrożą krew w żyłach. Również i w naszym zawodzie ich nie brakuje. Ot, choćby: „...i wtedy po roku klient powiedział: »Jednak będziemy chcieli mieć historię wprowadzonych zmian wraz z możliwością ich cofania«”...

...Opracowaną przeszło dekadę temu koncepcję Smart Modelu – zestawu klas ułatwiających realizację funkcji undo/redo – miałem ostatnio możliwość zaimplementować w pełnym zakresie w pracy, podczas opracowywania prototypu rozwiązania jednego z problemów, z którymi się mierzymy. Z kolejnych sekcji dowiemy się, jak Smart Model działa, jak z niego skorzystać, jakie dodatkowe zalety niesie jego używanie, jakie ma ograniczenia i wreszcie jaką cenę trzeba zapłacić za jego używanie...

Zagadnienia poruszane w tym artykule:

  • Undo i redo;
  • Założenia;
  • Detekcja zmian;
  • Utrzymywanie hierarchii rodzic-dziecko;
  • Klasy bazowe;
  • Klasy pól;
  • Rejestrowanie pól i kolekcji;
  • Rejestrowanie zmian;
  • Odnośniki do obiektów;
  • Mapowanie UIDów do referencji;
  • Proces cofania zmian;
  • Grupowanie zmian;
  • Zakres binarny;
  • Ewaluacja mechanizmu;
  • Rozwój.

Artykuł pochodzi z magazynu Programista nr 102 (3/2022). Magazyn jest z przełomu maja i czerwca 2022 roku. Szczegółowy spis treści wydania nr 102: https://programistamag.pl/programista-3-2022-102/

Autorem artykułu jest Wojciech Sura. Programuje 30 lat, z czego 15 komercyjnie; ma na koncie aplikacje desktopowe, webowe, mobilne i wbudowane – pisane w C#, C++, Javie, Delphi, PHP, JavaScript i w jeszcze kilku innych językach. Obecnie pracuje jako architekt w firmie WSCAD, rozwijającej oprogramowanie nowej generacji CAD dla elektrotechników.

>>FRAGMENT TEGO ARTYKUŁU DO POBRANIA<<