Już coś się wyświetla

W ostatnim wpisie pokazałem prototyp interfejsu użytkownika. Od tamtego czasu udało mi się stworzyć backend, który obsługuje wyświetlanie listy produktów bankowych.

PrototypUIzDanymi

Po kliknięciu na wybraną pozycję na liście wyświetlają się szczegóły produktu bankowego. Brakuje mi jeszcze informacji dla pola “Warunki”. Zanim cokolwiek tam dodam muszę zastanowić się  czym te warunki w ogóle będą. Ponieważ w przypadku, gdy będzie więcej niż jeden warunek, wyświetlanie ich jako zwykły tekst nie będzie czytelne.

Produkty Bankowe dodawane są w tej chwili “ręcznie”, przez umieszczenie ich na liście:

private ObservableList<BankingProduct> bankingProductsData = FXCollections.observableArrayList();
  bankingProductsData.add(new BankingProduct("PierwszaLokata", 1, "PierwszyBank", "Lokata", new SimpleObjectProperty<LocalDate>(LocalDate.of(2017, 3, 26)),  new SimpleObjectProperty<LocalDate>(LocalDate.of(2017, 6, 27)) ));

Chcę to zmienić i docelowo dane przechowywać w pliku XML.

Advertisements

Pierwsze kroki

Po skonfigurowaniu środowiska (intellij Idea + plugin JavaFX + Scene Builder) i utworzeniu projektu nadszedł czas na pierwszy prototyp widoku:

PrototypUI

Aby go utworzyć posłużyłem się tutorialem z  tej strony. Podszedłem jednak do sprawy nieco inaczej niż jej autor. Chciałem żeby moje okienko było w pełni skalowalne, a rozbicie głównego widoku na dwa osobne pliki fxml komplikowało sprawę. Umieściłem więc wszystko w jednym pliku. Być może, po lepszym poznaniu JavyFX, rozwiązanie tego problemu nasunie się samo.

Kilka wniosków:

  • Budowanie UI za pomocą plików fxml i Scene Buildera jest o wiele łatwiejsze od grzebania w Swingu
  • Co jak co, ale Windows Form Application jest jednak przyjemniejsze 🙂
  • Intellij Idea nie lubi się ze Scene Builderem – zintegrowana wersja potrafi się zawiesić oraz zapomina o zapisywaniu zmian (pomimo wciskania Ctrl + S)

Desktopowy Asystent Finansowy – projekt

Cel projektu

W ramach DSP2017 tworzę aplikację pomagającą w zarządzaniu produktami bankowymi. Nie będzie ona służyć monitorowaniu wydatków*,  tylko kontrolowaniu posiadanych lokat, kont bankowych, pożyczek  itd.

Banki kuszą promocjami z atrakcyjnymi bonusami, a internet pełen jest stron zajmujących się filtrowaniem i wyciąganiem najlepszych ofert. Jednak, aby zdobyć bonus trzeba zazwyczaj spełnić określone warunki, o których łatwo zapomnieć. Szczególnie wtedy, gdy bierze się udział w kilku promocjach jednocześnie.
Trzeba zapamiętać:

  • nazwę banku,
  • login i hasło do bankowości internetowej,
  • produkt bankowy,
  • kiedy promocja się zaczyna i kończy,
  • czego dotyczy,
  • jakie warunki należy spełnić.

Desktopowy Asystent Finansowy ma w tym pomóc.

*Narzędzia udostępniane przez bankowość internetową są dla mnie wystarczające.

Założenia

  • Aplikacja ma być okienkowa.
  • Aplikacja ma być niezależna od systemu.
  • Użytkownik będzie miał do niej dostęp jedynie po zalogowaniu.
  • Dane aplikacji będą zapisywane w osobnym pliku.
  • Dane będą zaszyfrowane.

Wykonanie

W projekcie planuję wykorzystać technologię JAVAFX. Dlaczego? Ostatnią okienkową aplikację w Javie stworzyłem kilka lat temu w Swingu. O JavieFX słyszałem już od dawna, jednak do tej pory nie miałem okazji jej przetestować.

Pierwszy Post

Jest to mój pierwszy wpis na blogu – do tej pory moja działalność w sieci opierała się na przyjmowaniu treści, a nie na jej tworzeniu. Gdy po pracy siadałem przed komputerem, to kończyłem przewijając główne strony najpopularniejszych serwisów. Czasami tylko myślałem, że tracę czas i zamiast bezmyślnie patrzeć w monitor, fajnie byłoby coś zakodować dla samego siebie. Jednak zawsze znalazłem jakąś wymówkę ( “w pracy wystarczająco dużo programuję – po co mam jeszcze siedzieć nad kodem w domu?”).

Z tego stanu wyrwał mnie konkurs  Daj Się Poznać 2017. Wymaga on systematyczności – co według mnie jest jego głównym atutem (czynności wykonywane regularnie stają się nawykiem). Już teraz, pierwszym, widocznym skutkiem DSP2017 jest ten blog. Kolejnym będzie aplikacja, którą zamierzam stworzyć.