Programowanie obiektowe rządzi, programowanie obiektowe radzi

Data: 2017-02-06, autor: Michał Misztal

"Programowanie obiektowe rządzi, programowanie obiektowe radzi, programowanie obiektowe nigdy Cię nie zdradzi" - usłyszałem w którymś odcinku kursu C++ pana Mirosława Zelenta. I cóż, trudno się z tym nie zgodzić.

Zaczynając pisać programik serwisowy nie zdawałem sobie sprawy z tego, że nagle sporo rzeczy trzeba zmienić. A to tu się zmieni typ zmiennej, gdzie indziej trzeba dodać ikonę a jeszcze gdzieś weryfikację cen zakupionych części. No i koncert życzeń "ma być tutaj to a jeszcze lepiej jakby było to". No i całość trzeba przerabiać.

Początek przeróbek nie należał do łatwych. Dużo tego nie było ale za to jaka masakra. Całość leciała funkcjami i już nie miałem pomysłu na nowe nazwy zmiennych. Aż tu nagle - "a może by to przepisać obiektowo?". Na początku wziąłem się za zlecenie, jest to osobna klasa trzymająca wszystkie swoje właściwości. Można aktualizować wartości i dodawać. Będzie jeszcze usuwanie i filtrowanie. Na początku przy filtrowaniu myślałem nad " like %:s% " ale za bardzo by to obciążyło bazę. Niby dużo rekordów na razie nie ma ale lepiej nie przeginać. Kolejna kwestia - do utworzenia obiektu potrzebny jest id przekazywany w konstruktorze. Potem pobierana jest reszta wartości. Myślałem nad pobieraniem wartości na zewnątrz i inicjalizacją przez przekazanie wszystkich wartości konstruktorem (jedno połączenie z bazą zamiast dwóch). Ale uciekłbym z jednego bajzlu w drugi.

Druga rzecz jaką poprawiłem to obiekt bazy danych. Teraz jest przekazywany do obiektu dziecka. Poprzednio był tworzony od nowa przez co duplikowały się połączenia do bazy danych (choć zamykałem połączenie w destruktorze to jakoś to nie działało). A propos "nie działania". Musiałem nieco przerobić bazę danych a, że pracuję na kilku różnych więc musiałem stworzyć programik do aktualizacji. Niby jest OK ale wartości z jednej kolumny nie chcą za żadną cholerę się przenieść. Ręcznie wpisując polecenia wszystko działa, ale z programu już nie. Dziwne. Edytowałem więc ręcznie i na razie potrzeby edycji bazy nie mam.

Konkludując - obiektowo opiszemy się więcej ale kod będzie bardziej czytelny. Ba, sam się będzie tłumaczył. Teraz zasiadam na drugim programem - tym razem do obsługi serwisu kas fiskalnych.

A na koniec.

Ryc. 1. Jest podstawowe filtrowanie, ikonki i podpowiedzi

Skomentuj lub zgłoś błąd

© Michał Misztal 2023

Czytasz właśnie

Programowanie obiektowe rządzi, programowanie obiektowe radzi
Autor: Michał Misztal
Data: 2017-02-06

Podobne wpisy