Środowisko przygotowane, podstawy obsługi Subversion przyswojone - czas więc wziąć się za bazę danych, czyli fazę pierwszą. Postanowiłem podzielić ją na kilka etapów.
Etap 1: Organizacja struktury drzewa
Na tym etapie stworzony zostanie zalążek klasy ldbEntry, zawierający wyłącznie składowe odpowiedzialne za umiejscowienie wpisu wewnątrz struktury drzewa. Także wtedy powstanie klasa ldbBase, która pozwoli na przechowywanie wszystkich postów oraz umożliwi szybki dostęp do pojedynczych linii oraz ich odgałęzień
Etap 2: Stworzenie pojedynczego wpisu
Podczas tego etapu w centrum uwagi znajdować się będzie klasa ldbEntry. To właśnie wtedy zostanie wzbogacona o składowe pozwalające jej spełniać swoją funkcję - przechowywanie pojedynczego wpisu. Dodane zostaną składowe odpowiedzialne za przechowywanie daty, tytułu, treści, tagów itp. Jednak nie będzie to wyłącznym celem tej fazy - drugim z nich będzie umożliwienie organizacji tagów przez klasę ldbBase
Etap 3: Przechowywanie bazy danych na dysku
Jaki sens miałoby tworzenie pamiętnika przy użyciu programu, który nie umożliwia zapisania tej twóczości, a później jej odtworzenia? Zapewne żaden, dlatego trzeci etap fazy pierwszej skupi się na klasie ldbBase, a konkretnie na metodach odpowiedzialnych za zapis i odczyt bazy danych danych z dysku. Wtedy też powstanie prosty algorytm szyfrujący, który utrudni odczyt pamiętnika przez osoby postronne
Etap 4: Testy
Napisany system będzie trzeba przetestować pod kątem poprawności i szybkości działania. Na tym skupi się czwarty etap. Oczywiście, kod będzie testowany po każdej większej zmianie, jednak na tej fazie optymalizacja i poprawianie błędów będzie priorytetem.
Pracę nad tym elementem projektu zaczną się na poważnie dopiero jutro. Dla osób śledzących bezpośrednio zmiany w kodzie przydatnym może być fakt, że podział pracy na fazy i etapy ma swoje odzwierciedlenie w numeracji wersji, na przykład wersja oznaczona jako 0.3.5 ma zaimplementowane wszystkie funkcjonalności, jakie zostały zaplanowane na piąty etap fazy trzeciej, a oznaczenie typu 0.2.0 dotyczy wersji opublikowanej po ukończeniu fazy pierwszej, ale jeszcze przed rozpoczęciem pierwszego etapu fazy drugiej.

Brak komentarzy:
Prześlij komentarz