Sunteți pe pagina 1din 3

FIŞA DE ACTIVITATE

Săptâmâna 18 mai-22 mai


Sarcini planificate: ___ Implementarea aplicatiei.
___________________________________________________________
______________________________________________________________________________
______________________________________________________________________________
Activităţi desfăşurate, observaţii personale

Aplicația Calculator
Pentru a aplica în practică toate cunoștințele obținute, am realizat în final un mic soft
care permite care permite efectuarea diverselor operații cu numere, realizat într-o interfață
grafică comodă și ușor de utilizat (Vezi Anexa B, Cod Sursă B.3). Pentru construirea interfeței
grafice, am folosit JavaFX. Drept IDE, am folosit Eclipse. Un mic istoric despre JavaFX.
JavaFX este urmașa lui F3 (Form Follows Function) ce îl are ca părinte pe Chris
Oliver. În 2010 Oracle a anunțat că dezvoltarea lui JavaFX Script language va fi întreruptă, în
schimb aceasta se va porta pe Java, formând platforma JavaFX 2. Prin aceasta se puneau
bazele ca JavaFX să devină cel mai important mediu pentru aplicații rich client.
API-ul JavaFX este rulat de un engine compus din subcomponente. Acesta cuprinde noul
engine grafic de înaltă performanță numit Prism, sistemul eficient de windowing numit Glass
și un engine media.
Glass Windowing Toolkit este responsabil cu furnizarea unui serviciu nativ ce include
gestiunea ferestrelor, a timer-elor și a suprafețelor. De asemenea, leagă platforma JavaFX de
sistemul de operare nativ. Mai mult, Glass este responsabil de gestiunea cozii de evenimente.
Dacă AWT își gestionează propria coadă de evenimente, Glass utilizează coada nativă a
sistemului de operare. Glass Toolkit rulează în același fir ca și aplicația JavaFX. În AWT se
crea un fir de execuție paralel cu cel al Javei.
O aplicație rich client este o aplicație ce are o interfață care reprezintă backend-ul fără a
aglomera astfel interfața utilizator. JavaFX are un set complet de butoane, diagrame, tabele și
container-e de layout pe care le folosim pentru a crea interfețe utilizator rich. În plus, putem
folosi stiluri CSS. Toate componentele se conectează și afișează date din backend. O aplicație
JavaFX este o aplicație Java de bază, ce permite feature-uri JavaFX. Codul minim necesar
pentru a rula o aplicație JavaFX constă din:
-O clasă ce extinde clasa abstractă javafx.application.Application.
-O metodă main() ce apelează metoda launch() și suprascrie metoda abstractă start(). Ca bună
practică apelul metodei launch() este singurul apel din main()
-Un stage primar ce este vizibil, ca argument al metodei start()
Avem trei tipuri de aplicații JavaFX:
-Aplicații propriu zise, ce folosesc sintaxa Java tradițională și API-ul JavaFX.
-Aplicații FXML. FXML se bazează pe XML și este folosit pentru a defini interfețe-utilizator
în aplicații JavaFX. Cu FXML vom defini layout-uri statice precum formulare, controale sau
tabele. Putem construi, de asemenea, layout-uri dinamice prin includerea unui script.
-Aplicații preloader, folosite în procesul de deployment.
Aplicația MyCalculator, este compusă din 4 fișiere. Main.java, MainController.java,
application.css și MainInterface.fxml.
Figura 4.1 – Ierarhia proiectului
Fișierul Main.java, este fișierul în care se va executa fereastra noastra principală. Un
stage (javafx.stage.Stage) este un container GUI top level pentru toate obiectele grafice, iar un
scene (javafx.scene.Scene) este container-ul de bază. Stage-ul primar este construit de
platformă, dar pot fi construite și alte obiecte stage de către aplicație. Obiectele stage trebuie
să fie construite și modificate în firul aplicației JavaFX. Articolele individuale care se află în
interiorul scenei grafice sunt numite noduri. Fiecare nod este clasificat ca fiind:
-Branch sau un părinte, ceea ce înseamnă că poate avea descendenți.
-O frunză.
Primul nod din arbore este numit rădacină și nu are părinte.
Scena grafică este așadar o structură arborescentă. API-ul JavaFX face ca interfața grafică să
fie mai ușor de creat, mai ales când sunt implicate efecte vizuale complexe și transformări.
Fișierul application.css este fișierul ce conține stiluri CSS pentru interfața noastră
grafică, iar acesta este inclus în Main.java.
Fișierul MainInterface.fxml, conține fiecare detaliu folosit pentru crearea interfeței
grafice. Acesta este redactat în Scene Builder, iar apoi în final se actualizează detaliile
adaugate în fișier prin intermediul softului adăugător.
Fișierul MainController.java conține toate funcțiile care face ca programul să
funcționeze după anumite reguli. Funcțiile folosite și rolul lor vor fi enumerate mai în jos:
public void processNum (ActionEvent event) – se prelucrează fiecare tastare a unui
buton (de la 0-9) în soft oferindui fiecărui buton o valoare anumită (doar numerele).
public void processOperators (ActionEvent event) – se prelucrează fiecare tastare a
unui operator, precum (+,-,*,/,ș.a).
public void processDecimal (ActionEvent event) – oferă suportul cifrelor cu virgulă,
atunci cînd este tastată (.)
public void processEqual (ActionEvent event) – prelucrează rezultatul în urma tastării
(=), și afișîndul în display.
Ca și oricare aplicație, conține cazuri cînd programul poate da crash. Astfel am
prevăzut situații precum:
-împărțirea la zero
-radical dintr-un număr negativ
-evitarea tastării repetate a virgulei după un număr
-afișarea unui număr fix de cifre după virgulă
-și multe altele care vor permite funcționarea programului într-o manieră prietenoasă.

S-ar putea să vă placă și