PROGRAMUL DE STUDII DE LICENT ,A: INFORMATIC A APLICAT A LUCRARE DE LICENT ,A COORDONATOR: ABSOLVENT: Dr.S ,TEFANIG A, Sebastian-Aurelian… [624302]

UNIVERSITATEA DE VEST DIN TIMIS ,OARA
FACULTATEA DE MATEMATIC A S ,I INFORMATIC A
PROGRAMUL DE STUDII DE LICENT ,A:
INFORMATIC A APLICAT A
LUCRARE DE LICENT ,A
COORDONATOR: ABSOLVENT: [anonimizat].S ,TEFANIG A, Sebastian-Aurelian LAKATOS, Niki Alex
TIMIS ,OARA
2019

UNIVERSITATEA DE VEST DIN TIMIS ,OARA
FACULTATEA DE MATEMATIC A S ,I INFORMATIC A
PROGRAMUL DE STUDII DE LICENT ,A:
INFORMATIC A APLICAT A
APLICAT ,IE PENTRU
GESTIUNEA UNUI CABINETMEDICAL
COORDONATOR: ABSOLVENT: [anonimizat].S ,TEFANIG A, Sebastian-Aurelian LAKATOS, Niki Alex
TIMIS ,OARA
2019

Rezumat
^In lucrarea de fat , a vom detalia aspectele administr arii unei clinici sau chiar al
unui cabinet medical particular. Pentru a bene cia de o consultat ,ie de c atre un medic
specialist, vom avea nevoie de o programare, except^ and situat ,iile de urgent , a. Pentru a
evita program arile telefonice sau deplasarea p^ an a la cabinetul/clinica respectiv a, avem
avantajul tehnologiei avansate unde putem obt ,ine o programare online.
Pentru construirea aplicat ,iei, am utilizat urm atoarele tehnologii:
Spring-boot s ,i MySQL, cu ajutorul acestor tehnologii am realizat partea de back-
end a aplicat ,iei
Angular 8.0, HTML(HyperText Markuo Language) s ,i CSS(Cascading Style She-
ets), cu ajutorul acestor tehnologii am construit partea de front-end a aplicat ,iei
CMD(Command Prompt) – folosit pentru lansarea aplicat ,iei din linia de comand a
IntelliJ IDE, cu ajutorul acestui IDE(Integrated development environment) am
reus ,it s a integrez toate tehnologiile folosite mai sus
Chiar dac a s ,tiint ,a proces arii sistematice a informat ,iei cu ajutorul calculatoarelor
s-a dezvoltat destul de mult ^ n ultimul deceniu, totus ,i, exist a cadre medicale ^ naintate
^ n v^ arst a s ,i nu numai care folosesc vechile obiceiuri, acelea de a-s ,i nota program arile
pacient ,ilor ^ ntr-o agend a. Prin implementarea acestei aplicat ,ii, dorim s a aducem un
bene ciu important at^ at pentru cadrele medicale, c^ at s ,i pentru pacient ,ii care se vor
putea programa online pentru consultat ,ie sau tratament medical.
3

Abstract
In this paper, we will detail the administration aspects of a hospital, a clinic and
even a private medical oce. In order to obtain a medical examination from a specia-
list doctor, we will need an appointment, except for emergencies.
To avoid phone appointment or to walk to the hospital/medical oce, we have the
opportunity to use the advanced technology an obtain an online appointment:
Spring-boot and MySQL – using this technology I created the application back-
end.
Angular 8.0, HTML(HyperText Markup Language) and CSS (cascading style
sheets)- using this technology I created the application front-end.
IntelliJ IDE – using(integrated development environment) I integrated all the
technology mentionated above.
Even though the science of systemic processing of the information by using the
computer have considerably developed in the last decade, still there are old healthcare
professionals and others that are using old habits/customs by writing down in their
agendas all the patients appointments.
By implementing this application, we wanted to bring an important bene t for
both doctors and patients that would have the chance to have an online appointment
for examination or medical treatment
4

Cuprins
1 Introducere 6
1.1 Motivarea alegerii temei . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2 Stadiul actual 7
2.1 Tehnologii folosite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.1 Angular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.2 Spring-boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.3 MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.4 Hyper Text Markup Language(HTML) . . . . . . . . . . . . . . 11
2.1.5 Cascading Style Sheets (CSS) . . . . . . . . . . . . . . . . . . . 13
2.1.6 Apache Maven . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.7 Command Prompt(CMD) . . . . . . . . . . . . . . . . . . . . . 14
2.1.8 IntelliJ IDEA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.9 Java Persistence API(JPA) . . . . . . . . . . . . . . . . . . . . . 16
3 Descrierea aplicatiei 18
3.1 Structura aplicatiei . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
5

Capitolul 1
Introducere
1.1 Motivarea alegerii temei
Am ales tema lucr arii mele"Aplicat ,ie pentru gestiunea unui cabinet medical" din
mai multe motive pe care le voi argumenta ^ n cele ce urmeaz a.
^In primul r^ and, aplicat ,ia despre care fac referire ^ n aceast a lucrare este deosebit
de bene c a at^ at pentru cadrele medicale c^ at s ,i pentru pacient ,i datorit a program arilor
online ^ n vederea consultat ,iilor c^ at s ,i a tratamentelor medicale.
Un alt bene ciu pe care aceast a aplcat ,ie ^ l aduce este notarea datelor personale
ale pacient ,ilor, tratamentul, consultat ,iile, analizele s ,i orice detaliu legat de acestea la
care poate avea acces s ,i pacientul, dar s ,i unele detalii la care are acces doar medicul.
S an atatea este unul dintre lucrurile primordiale pentru om, acesta devenind,de
multe ori, neputincios ^ n fat ,a bolii. De cele mai multe ori, din cauza s an at at ,ii s ,ubrede,
nu putem ajunge la cabinet pentru o programare sau pentru consultat ,ie sau tratament.
Cu ajutorul acestei aplicat ,ii vom putea face programarea online ne ind nevoie de
deplasarea noastr a la cabinetul medicului respectiv s ,i totodat a putem bene cia de
tratamentul de care avem nevoie pe care medicul ^ l va nota ^ n aceast a aplicat ,ie. [1]
Experient ,ele nepl acute s ,i cele auzite ale unor pacient ,i ^ i vor face pe ceilalt ,i s a
asemene as ,teptarea ^ n fat ,a cabinetului cu o zi pierdut a, o sal a de as ,teptare aglomerat a,
plin a cu alt ,i pacient ,i bolnavi, ner abd atori s ,i frustrat ,i.
^In acel moment, oricare ar problema lor medical a, aceasta devine intensi cat a
de revolta unei as ,tept ari ^ ndelungate ^ ntr-un cabinet medical. De partea cealalt a,
sunt cadrele medicale care vor si ele expuse la revolta, frustarea sau nemult ,umirea
pacient ,ilor dar si la ore suplimentare dep as ,ind, astfel, programul normal de lucru.
Cabinetul medical are nevoie de o schimbare prin care s a se
uidizeze
uxul mare
de pacient ,i, f ar a a se ^ ngreuna activitatea cu diferite sarcini administrative.
Cu ajutorul acestei platforme digitale de management, se va putea us ,ura timpul
alocat corespunz ator ec arei programare s ,i se va avea ^ n mod constant o perspectiv a
clar a asupra gradului de ocupare.
1.2
6

Capitolul 2
Stadiul actual
2.1 Tehnologii folosite
Pentru realizarea lucr arii "Aplicat ,ie pentru gestiunea unui cabinet medical" s-au folosit
urmatoarele tehnologii:
Angular 8.0
Command Prompt(CMD)
Hyper Text Markup Language(HTML5)
MySQL (Relational Database Management System(RDBMS))
IntelliJ IDEA
Spring-boot
Maven
CSS (Cascading Style Sheets)
Java Persistence API(JPA)
Spring REST (Representational State Transfer)
2.1.1 Angular
Angular este o platform a open source s ,i un framework pentru construirea aplicat ,iilor
client ^ n HTML(Hyper Text Markup Language) s ,i TypeScript. Angular este rescris
peste limgajul de programare JavaScript. Implementeaz a funct ,ionalit at ,i de baz a/opt ,ionale
ca un set de biblioteci TypeScript pe care le poti importa ^ n aplicat ,ii. Conceptele de
baz a ale unei aplicat ,ii Angular sunt Ng Modules, care furnizeaza un context de com-
pilare pentru componente. Ng Modules aduna codul aferent ^ n seturi funct ,ionale. O
aplicat ,ie Angular este de nit a pe baza unui set de Ng Module. O aplicat ,ie Angular
are ^ ntotdeauna cel put ,in un modul r ad acin a si care poate avea mai multe alte funct ,ii.
Angular este dezvoltat de echipa de la Google. Componentele care folosesc servicii,
pot oferi funct ,ionalit at ,i speci ce ce nu sunt legate direct de ceea ce se vede. Actiunile
pot injectate direct in componente ca o dependent ,a, ceea ce face ca un cod scris sa
arate modular, reutilizabil s ,i e cient.
7

In de nitia Angular s-a vorbit despre JavaScript. Doresc sa expun in cateva cuvinte
ce este JavaScript. S-a mai vorbit si despre HTML,dar acesta subiect este deja explicat
in urmatoarele pagini. Deasemena s-a vorbit si despre TypeScript, doresc sa spun cum
expun e este Type script si cum functioneaza.
JavaScript este un limbaj de programare prin care va permite sa implementari si
sa creati lucruri complexe si dinamice pe o pagina WEB. In momentul in care o pagina
WEB este a sata pe ecranul monitorului, sunt componente de Hyper Text Markup
Language(HTML) si Cascading Style Sheet(CSS) si sunt statice. JavaScript intervine
pentru a imbunatati si a face anumit actiuni precum: actualizare datelor, gra ca
animatica(3D)(2D),valideaza date din diferite casute de dialog, butoane interactive etc.
JavaScript este suntinut de majoritate motoare de cautare precum, Google Chrome,
Internet Explorer, Opera etc. Prin imaginee de mai jos se dovedeste cat de popular a
ajuns JavaScript ca si libaj de programare folosit.
Figura 2.1: Statistic used JavaScript(30.08.2019)[15]
TypeScript este defapt JavaScript,dar cu multe imbunatatiri. TypeScript este
mai performant din punct de vedere al codului scris pentru ca ofera mai mult control
in privinta codului nostru prin intermediul adnotarii,interfete si clase,mai bine spus
este orientat pe obecte. A fost creat de Anders Hejlsberg un dezvoltator de de la
Microsoft.Cand se scrie un cod de dezvoltare unei aplicatii, codul in sine este scris
in TypeSript,dupa ce codul este lansat acesta este transformat din TypeScript in Ja-
vaScript.Daca o aplicatie este scrisa in JavaScript, partea frumoasa este ca se poate
rescrie usor in TypeScript.
Figura 2.2: Ilustration[16]
8

Cateva avantaje pe care le poate oferi TypeScript la momentul actual,precum:
Accepta concepte de programare orentate pe obecte,cum ar ,clase,interfete,mostenire.
Ajuta la detectarea erorilor si la testarea codul scris.
Ajuta la imbunatatire si intelegerea codului scris.
Refactorizarea este mai usora si rapida
Angular este structurat in urmatorul fel:
1.Module
2.Component
3.Templates
4.Data binding
5.Service
6.Directives
7.Dependency Injection
Cu ajutorul tehnologie Angular se pot construi urmatoarele:
Aplicatii WEB
Aplicatii DESKTOP
Aplcatii Mobile
2.1.2 Spring-boot
Spring-Boot este un framework open-source construit pentru a facilita si totodata
usura munca dezvoltatorilor de aplicatii. Cu Spring-Boot se poate crea o apicatie
foarte rapid si usor si este bazat pe Java pentru folosirea unu Micro Service . Spring-
Boot mai este numit si RDB(Rapid Application Development).In special, Spring-Boot
este folosit pentru construirea aplicatiilor WEB(World Wide Web),insa in acelasi timp
se pot dezvolat si aplicati de stine statatoare(JAR) pornite din linia de comanda.Acest
JAR(Java Archive) contine un server web care este incorporat Echipa de la Pivotal
Team a dezvoltat framework-ul Spring-boot reusind ca aplicatiile de tip-ul Spring sa
necesite minimul de con guratii,astfel incat cei de dezvolta aplicatii sa se poata bucura
de rapiditatea de a dechide aplicatii Soring.
Avantajele oferite de Spring-Boot sunt urmatoarele:
Reduce timpul de implementare si costul pentru a dezvolta o aplicatie.
Se poate integra usor o aplicatie Spring-Boot cu Spring JDBC,Spring ORM etc.
Sunt incorporate servere HTTP precut, Tomcat,Postnam etc.
Se pot creea aplicatii stand-alone(de sine statatoare)
9

Micro Service este o arhitectura care ofera posibilitatea dezvoltatorilor da poata
dezvolta si totodata sa implementeze servicii independente.Foarte multe companii pre-
fera sa dezvolte aplicatii Micro Service in detrimentul lui monolith.
Voi prezenta cateva dintre avantajele pe care le ofera Microservice
Poate usor mentinuta si testabil in acelas timp
O implementare mai usoara a aplicatie
Nu necesita foarte multa con gurare pentru a crea o aplicatie
Micro Service vs. Monolith
Microserviciile ofera mai multe bene cii dup a cum subliniaz a Martin Fowler, eBay,
Amazon, Twitter, PayPal s ,i alte companii care au migrat de la monolitic la arhitectur a
Micro Service. Spre deosebire de microservicii, aplicat ,ia monolit este construit a ca o
singur a unitate autonom a. Acest lucru face ca modi c arile la aplicat ,ie s a e lente,
deoarece afecteaz a ^ ntregul sistem. O modi care adus a unei mici sect ,iuni de cod
ar putea necesita construirea s ,i implementarea unei versiuni cu totul noi. Scalarea
funct ,iilor speci ce unei aplicat ,ii ^ nseamn a, de asemenea, c a trebuie s a scalzi ^ ntreaga
aplicat ,ie.Micro-serviciile rezolv a aceste provoc ari ale sistemelor monolitice ind c^ at se
poate de modulare. ^In cea mai simpl a form a, ele ajut a la construirea unei aplicat ,ii
ca o suit a de servicii mici, ecare rul^ and ^ n propriul proces s ,i sunt implementate
independent. Aceste servicii pot scrise ^ n diferite limbaje de programare s ,i pot utiliza
diferite tehnici de stocare a datelor. ^In timp ce acest lucru are ca rezultat dezvoltarea
de sisteme scalabile s ,i
exibile, are nevoie de o transformare dinamic a. Microserviciile
sunt adesea conectate prin API-uri s ,i pot folosi multe dintre aceleas ,i instrumente s ,i
solut ,ii care au crescut ^ n ecosistemul RESTful s ,i serviciul web. Testarea acestor API-
uri v a poate ajuta s a validat ,i
uxul de date s ,i informat ,ii de-a lungul implement arii
dvs. de microservice.[17] TREBIOE MODIFICATE CUVINTE
2.1.3 MySQL
Compania suedez a numit a MySQL AB a dezvoltat init ,ial MySQL ^ n anul 1994.
Compania tehnologic a american a cu numele Sun Microsystems a acizitiona apoi propri-
etatea cu drepturi depline atunci c^ and a cump arat MySQL AB ^ n anul 2008. Gigantul
american Oracle care ^ n 2010 a achizit ,ionat de la compania Sun Microsystems , toate
drepturile numelui MySQL chiar si la momentul de fata tot de Oracle este detinut acest
brend. Ca si o de nit ,ia general a, MySQL este un sistem de gestionare a bazelor de
date relat ,ionale este open source RDBMS(Relational Database Management System)
cu interactiune model client-server. RDBMS este un software sau un serviciu utilizat
pentru a crea s ,i gestionarea bazelor de date care este baza pe un model relat ,ional.[2]
In cele ce urmeaza va s a arunc am o privire mai in detaliu la ecare termen:
MySQL este open-source insemana ca oricine doreste sa utilizeze aceasta
baza de date o poate face fara nici o constarangere. Mai mult, se poate descarca
de pe internet si nu se percepe nici un ban pentru utilizare sa,insa daca se doriti
utilizare versiuni cu licenta trebuie platita.De obicei companiile folosesc varianta
cu licenta.
10

MySQL este o baza de date relationala o baza de date relationala stoceaza
date in mai multe tabele.Ceea ce o face relationala este ca poate comunica cu mai
multe tabele prin urmatoarele relatii: One to many, many to many, many
to one .
MySQL poate gestiona un sistem de baze de date poate gestiona un volum
impresionant de date dar si o lista e ea cat de mica. Poate suporta baze de
date pana la 50 milionane de randuri intr-un tabel pe un calculator obisnuit.
Cateva avantaje daca este folosit MySQL database:
Poate functiona pe mai multe sisteme de operare precum Linux,UNIX ,Windows
etc.Dar in acelas timp este acceptat si de mai multe libaje de programare cum
ar ,Java,C, C++ , PHP etc.
Este rapid,scalabil, abil si usor de uitilzat de clienti.
Este utilizat ca si conectiune dintre un client si server.
2.1.4 Hyper Text Markup Language(HTML)
HTML(Hyper Text Markup Language) este un limbaj de marcare pentru a crea
structura unei pagini web. Se compune din tag-uri, iar browserul Web reda text, tabele,
liste s ,i multe alte elemente de pe pagina pe care este aplicat ^ n conformitate cu aceste
etichete. HTML(Hyper Text Markup Language) este mai us ,or de ^ nv at ,at dec^ at limbile
de programare, cum ar C, C ++ s ,i Java. Mai mult, un programator poate crea cu
us,urint , a un s ,ier HTML folosind diferite editorare de tip text ca Notepad, Atom s ,i
execut^ andu-l pe un browser Web. Exist a dou a sect ,iuni principale^ ntr-o pagin a HTML.
Acestea sunt: sect ,iunea HEAD s ,i sect ,iunea BODY. Sect ,iunea HEAD include titlul s ,i
metadatele paginii, ^ n timp ce sect ,iunea BODY include tot cont ,inutul vizibil al unei
pagini Web. ^In plus, HTML are etichete pentru a marca diverse elemente, precum
paragrafe, titluri, tabele s ,i liste. Exist a mai multe versiuni de HTML ca HTML 1, 2
etc. Cea mai recent a versiune HTML este HTML5.[8]
La ^ nceput, HTML a fost dezvoltat cu intent ,ia de a realiza structura documente-
lor precum: titluri, paragrafe, liste s ,i as ,a mai departe pentru a facilita schimbul de
informat ,ii s ,tiint ,i ce ^ ntre cercet atori. Acum, HTML este utilizat pe scar a larg a pentru
formatarea paginilor Web cu ajutorul diferitelor tag-uri disponibile ^ n limbaj HTML.
^In exemplul de mai jos este ilustrat a structura HTML-ului.
HTML5 Este a cincea revizuire a standardului HTML (creat ^ n 1990 s ,i standardi-
zat ca HTML4 din 1997) s ,i din octombrie 2011 este ^ n curs de dezvoltare. Obiectivele
sale principale au fost acelea de a ^ mbun at at ,i limbajul cu un suport pentru cele mai
recente aparit ,ii multimedia ^ n acelas ,i timp ment ,in^ andu-l us ,or de citit de oameni s ,i
bine ^ nteles de calculatoare s ,i device-uri (browsere web, parsere, etc.). HTML5 ^ s ,i
propune s a ^ nsumeze nu numai HTML4, dar s ,i XHTML1 s ,i DOM2HTML (^ ndeosebi
JavaScript). Urm arind predecesorii s ai imediat ,i HTML 4.01 s ,i XHTML 1.1, HTML5
este un r aspuns la observat ,ia c a HTML s ,i XHTML utilizate ^ n comun pe World Wide
Web sunt un amestec de caracteristici introduse de speci cat ,ii diferite, ^ mpreuna cu
11

Figura 2.3: Ilustrat ,ie(27.08.2017)[9]
acestea mai sunt s ,i caracteristicile diferite aduse de software, de browsere, s ,i multe
erori de sintax a ^ n documnentele web existente. Astfel, HTML5 devine o ^ ncercare
de a de ni un singur limbaj de marcare (markup language) care poate scris ^ n ori-
care dintre sintaxele HTML sau/s ,i XHTML. Acesta include modele detaliate de prelu-
crare pentru a ^ ncuraja mai multe implement ari interoperabile; extinde, ^ mbun at at ,es,te
s,i rat ,ionalizeaz a disponibilit at ,ile pentru documentele web s ,i introduce marcarea s ,i
aplicat ,ii API (application programming interfaces) pentru aplicat ,ii web complexe. Din
aceste motive, HTML5 este un posibil candidat pentru aplicat ,iile de platforme mobile.
Multe caracteristici ale HTML5 au fost create din considerarea c a va trebui s a devin a
capabil s a ruleze pe dispozitive cum ar smart-phonurile sau tabletele.[10] TREBUIE
SA SCHIMB CUVINTE
Cateva caracteristici despre HTML5 :
1. Aplicat ,ii Web oine
2. Drag and drop
3. Editare de documente
4. Redarea media cronometrat a
5. Elementul Canvas pentru proiectare
C^ ateva diferent ,e ^ ntre HTML4 si HTML5 :
HTML4
Nu poate accepta s ,iere audio s ,i video f ar a a utiliza
ash player.
Nu este permis a rularea cu JavaScript ^ n browser.
12

Nu sunt permise efecte de drag and drop.
Funct ,ioneaz a cu browsere vechi.
Atributele precum charset-utf-8 s ,i async sunt absente ^ n HTML.
HTML5
Suport a s ,iere audio s ,i video prin utilizarea etichetelor <audio> s ,i <video>
Permite rularea JavaScript ^ n back-end. Lucrul acesta este posibil datorit a API-
ului JS Web Worker din HTML5.
Permite efecte de drag and drop
Este conceput pentru toate browser-urile noi precum: Firefox, Mozilla, Chrome,
Safari s.d.
Atributele precum charset-utf-8 s ,i async fac parte din HTML 5.
2.1.5 Cascading Style Sheets (CSS)
Cascading Style Sheets (CSS) este utilizat pentru a construi aspectul paginilor
Web. CSS pot folosit pentru a de ni text cu stil , dimensiunile unui tabel s ,i multe
alte aspecte ale paginilor Web care inainte erau de nite doar ^ ntr-o pagin a HyperText
Markup Language(HTML). Cascading Style Sheets(CSS) ajut a pe cei ce dezvolta apli-
catii de tip WEB(World Wide Web) s a creeze un aspect frumos si uniform pe mai multe
pagini WEB. Pentu a nu de nit de mai multe ori aspectul unui tabel s ,i al unui text
din HTML-ul unei pagini, style utilizate de mai multe ori trebuie de nite o singur a
dat a ^ ntr-un sier de tip document cu extensia CSS. Odata ce este de nit ^ n Casca-
ding Style Sheets, acesta poate utilizat de orice pagin a cu referinta la s ,ierul cu
extensia CSS. ^In plus, Cascading Style Sheets(CSS)usureaza foarte mult munca unui
developer.[7]
2.1.6 Apache Maven
Apache Maven este un instrument foarte puternic de management/gestiune de
proiect software care este bazat pe POM (Project Object Model). Este utilizat pentru
dezvoltare de proiecte, dependent , a s ,i documentatia poriectului. Simpli c a procesul de
construire precum ANT(Another Neat Tool). Dar este mai avansat si mai performant
dec^ at ANT(Another Neat Tool). ^In termeni cat mai scurti, putem spune c a Maven
este un tool care poate utilizat cu succes pentru construirea, gestionarea oric arui
proiect bazat pe Java. Maven faciliteaza munca de zi cu zi a unui dezvoltator Java si
o face mai us ,oar a, ^ n general, te ajuta la ^ nt ,elegerea oric arui proiect care esti scirs in
limbajul Java.[3].Maven mai poate folosit si in alte limbaje de programare cum ar
,C Sharp si Ruby.
13

Another Neat Tool(ANT) este o boblioteca asigurata de cei de la Apache
Software Fundation care se bazeaza pe limbajul Java. ANT este scris in XML(Extensible
Markup Language).Poate utilizat si pentru a dezvoltarea aplicatiilor non-Java.Ca si
implicare,initial a facut parte din Apache Tomcat. Asigura dependentele necesare la
compilare proiectului,iar ca si avantaje pe care le ofera sunt portabilitatea si simpli-
tatea sunt doar doua dintre avantajele pe care le are ANT.Exista o conventie cum se
mai numeste si anume,build.xml.
Voi prezenta cateva concepte de baza pe care le ofera Maven,si anume:
1.Project Object Model(POM) contine toate informatiile care sunt legate de
proiectul pe care este aplicat.Poate contine si informatii legate de con gurare
proiectului,precum dependinte,plugin-uri,directoare spre alte proiecte etc.
2.Construira de plugin-uri se pot construi plugin-uri pentru a indeplini diferite
sarcini.Acestea de adauga in POM.xml pentru a functionale.
3.Dependinte sunt biblioteci externe Java care ajuta la buna functionare a apli-
catie.Daca nu sunt gasite local(pe disk),sunt descarcate de pe internet pentu a
ajuta la rularea aplicatie.
4. Build Life Cycles, Phases and Goals:
MAI POT ADAUGA CATEAVA ASPECTE DESPRE AVANTAJELE PE CARE LE
OFERA MAVEN
Pentu o intelegere mai buna cum actioneaza Mavan,voi adauga o diagrama.
Figura 2.4: Ilustrat ,ie(27.08.2017)[3]
2.1.7 Command Prompt(CMD)
Ce este CMD?
14

Linia de comand a (numit a s ,i consol a sau terminal) este o interfat , a bazat a doar
pe text ^ n cadrul sistemului de operare, prin care se pot transmite comenzile de la
utilizator la sistemul de operare. Acest lucru este posibil, de exemplu, organizarea de
s,iere, pornirea/oprirea programelor sau rularea altor comenzi legate la sistemul de
operare, computerul sau ret ,eaua.
^In sistemele de operare mai vechi (cum ar MS-DOS), se lucra f ar a o interfat , a
gra c a de utilizator s ,i de multe ori chiar se naviga f ar a mouse. ^In schimb, au trebuit
tastate toate comenzile – structurile de directoare care au fost apoi a s ,ate ca text
simplu pe ecran. Dar chiar s ,i dup a ce s-au schimbat sistemele de operare gra ce, linia
de comand a a r amas bazat a pe text.
^In general, conexiunea dintre sistemul de operare, indiferent dac a este gra c a (GUI
= interfat , a de utilizator gra c a) sau bazat a pe text (CLI = interpret de linie de co-
mand a) a fost condensat a sub termenul "Shell". Interpretul de linie de comand a
implicit pentru Windows se numes ,te CMD .EXECUTABIL. ^In plus, exist a, de ase-
menea, "PowerShell": aceasta ofer a mai multe opt ,iuni dec^ at CMD.EXE. De exemplu,
automatiz arile pot create mai bine cu PowerShell. ^In acest fel, utilizatorii pot crea
programe de script cu limbajul de script PowerShell. Exist a diferite opt ,iuni pentru
accesarea liniei de comand a a calculatorului. Tehnic vorbind, linia de comand a este
programul CMD.EXE. Acest s ,ier executabil se gases ,te ^ n directorul de sistem al fol-
derului Windows. (Dac a se face clic dreapta pe s ,ier, Windows v a ofer a s ,i opt ,iunea
de a porni programul ca administrator – ^ n cazul ^ n care avet ,i datele de acces pentru
aceasta.) Pentru a ajunge mai rapid la program, putet ,i utiliza bara de c autare sau
meniu alerga. Acesta din urm a este deschis sub Windows 7, 8 s ,i 10 cu combinat ,ia
de taste Win + R. Apoi, tot ce trebuie s a facet ,i este s a tastat ,i"cmd" ^ n c^ ampul de
c autare s ,i s a ap asat ,i butonul OK.[4]
Figura 2.5: Logo CMD[5]
2.1.8 IntelliJ IDEA
15

IntelliJ IDEA este un program de dezvoltare software d sau mediu de dezvoltare
integrat (IDE) destinat ^ n mare parte pentru Java. Acesta este utilizat, ^ n special,
pentru dezvoltarea programelor software. Este dezvoltat de o companie pe nume
JetBrains, care a fost numit a IntelliJ. Este disponibil ^ n dou a variante: Community
Edition care este sub licent ,a Apache 2.0 s ,i o editur a comercial a cu numele de Ultimate
Edition. Cele dou a pot utilizate pentru a crea software care poate pl atit. Ceea ce
face ca IntelliJ IDEA s a e atat de diferit de restul dintre omologii s ai, este us ,urint ,a
de utilizare,
exibilitatea s ,i designul s au solid.[11]
Voi prezenta c^ ateva avantaje despre IntelliJ, cum ar :
Sunt generate foarte rapid metode de getter s ,i setter.
Baze de date precum SQL, ORACLE, Microsoft SQL Server sunt ^ ncorporate ^ n
IntelliJ
Ruleaz a pe diferite sisteme de operare.
Accept a foarte multe limbaje de programare, precum JavaScript, Java s ,i multe
altele.
^In ceea ce urmeaz a, vreau s a prezint c^ at de mult s-a dezvoltat IntelliJ-ul. Din 2012,
IntelliJ a crescut foarte mult s ,i foarte repede, ^ n 2016 cota lui era de aproape 50 la
suta din piat ,a de dezvoltare software. Conform unui studiu f acut ^ n 2018, IntelliJ a
crescut peste 55 la sut a. Astfel, el ajunge s a performeze ^ n domeniul Java. Martin
Fowler, este un cunoscut consultant software s ,i vorbes ,te foarte mult despre IntlliJ cum
a crescut foarte mult ^ n fat ,a celorlalt ,i concurent ,i.^In imaginea de mai jos este dovedit a
statistica legat a de IntelliJ.
Figura 2.6: Ilustratie(27.08.2017)[12]
16

2.1.9 Java Persistence API(JPA)
API Persistence Java ofer a un model de persistent , a Plain Old Java Object(POJO)
pentru a ajuta obiectele sa e relationale intre ele. Java Persistence API(JPA) a
fost dezvoltat a de un grupul de expert ,i software EJB 3.0(Enterprice Java Bean) ca
parte a JSR 220(Java Speci cation Requests), dar utilizarea sa nu este limitata la
componentele software EJB. De asemenea se poate utiliza direct de aplicat ,iile World
Wide Web(WEB) chiar si de client ,ii de aplicat ,ii, chiar s ,i ^ n afara platformei Java EE,
de exemplu, ^ n aplicat ,iile Java SE.[13]In cateva cuvinte, Java Persistence API este o
colectie de clase si obiecte, si este utilizata pentru a stoca date intr-o baza de date.
Figura 2.7: Ilustrat ,ie(27.08.2017)[14]
17

Capitolul 3
Descrierea aplicatiei
3.1 Structura aplicatiei
18

Bibliogra e
[1] "calendis.ro",URL https://blog.calendis.ro/sfaturi-cabinet-medical ,
accesat la data de 24.08.2019
[2] URL https://www.hostinger.com/tutorials/what-is-mysql ,accesat la data
de 01.09.2019
[3] URL https://www.geeksforgeeks.org/introduction-apache-maven-build-automation-tool-java-projects/ ,accesat
la data de 01.09.2019
[4] URL https://www.ionos.com/digitalguide/server/know-how/
windows-cmd-commands ,
accesat la data de 25.08.2019
[5] URL https://www.instructables.com/id/Making-a-Batch-File-Game-on-Notepad-part-1
,
accesat la data de 25.08.2019
[6] URL https://angular.io/guide/architecture ,accesat la data de 26.08.2019
[7] URL https://techterms.com/definition/css ,accesat la data de 01.09.2019
[8] URL https://ro.sawakinome.com/articles/technology/
what-is-the-difference-between-html-and-html5.html#HTML ,accesat
la data de 27.08.2019.
[9] URL https://codescracker.com/html/html-structure.htm ,accesat la data
de 27.08.2019.
[10] https://silviustroe.com/introducere-in-html5 ,accesat la data de
27.08.2019
[11] URL https://www.techopedia.com/definition/7755/intellij-idea
,accesat la data de 28.08.2019
[12] URL https://medium.com/@Alibaba_Cloud/what-can-we-learn-from-intellij-idea-186298679001 ,
accesat la data de 28.08.2019
[13] URL https://www.oracle.com/technetwork/java/javaee/tech/
persistence-jsp-140049.html , accesat la data de 29.08.2019;
[14] URL https://terasolunaorg.github.io/guideline/5.0.1.RELEASE/en/
ArchitectureInDetail/DataAccessJpa.html ,accesat la data de 29.08.2019
19

[15] URL https://umbrellait.com/how-to-build-a-simple-web-application-using-node-js ,
accesat la data de 30.08.2019
[16] URL https://www.tutorialspoint.com/typescripttypescript_overview.
htm
,accesat la data de 01.09.2019
[17] URL https://smartbear.com/solutions/microservices/ ,accesat la data de
01.09.2019
20

Similar Posts