Universit a tea din Craio v a [601749]

Universit a tea din Craio v a
F a cul t a tea de Ma tema tic  ³i “ti inµe ale Na turi i
Master Metode ³i Modele în Inteligenµa
Ar tificial 
Lucrare de Diser t a µie
Dezv oltarea unei aplicaµii (in teligen te) p en tru
optimizarea onor rii comenzilor unei companii de
taxi
Îndrum tor ³tiinµic: Absolv en t:
Conf. Univ. Dr. Mirel Co³ulsc hi Mic hael F athi Afana
Craio v a, iulie 2015

Cuprins
1 In tro ducere 5
1.1 In ternetul – o reµea global  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Mobilitatea in tegrat . T axiul ca v erig  în lanµul transp ortului public . . . . 6
1.2.1 T axi(metrul): etimologie, istorie, utilitate . . . . . . . . . . . . . . . . 7
1.3 R spândirea telefoanelor in teligen te ³i a tabletelor . . . . . . . . . . . . . . . 8
1.3.1 Sisteme de op erare p en tru disp ozitiv e mobile (sau mobile OS) . . . . 9
1.3.2 T ableta – un calculator p ortabil . . . . . . . . . . . . . . . . . . . . . 11
1.4 Utilitatea aplicaµiei . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2 Aplicaµii mobile in teligen te p en tru a comanda un taxi 14
3 T ehnologii utilizate 18
3.1 GIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2 HTML5 ³i geolo calizarea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3 CSS3 ³i Design resp onsiv e . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.4 Ja v aScript ³i jQuery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.5 jQuery Mobile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.6 Go ogle Maps ³i LeafLet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.7 Hyp ertext Prepro cessor (PHP) . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.8 OTP ³i mOTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4 Prezen tarea aplicaµiei Smart taxi 33
4.1 Mo dulul p en tru clien t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2 Mo dulul p en tru ³oferi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.3 Mo dulul p en tru disp ecerat . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.4 Baza de date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.4.1 Descrierea tab elelor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.5 PHP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.6 Securitatea aplicaµiei . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5 Concluzii 52
Bibliograe 54

List  de guri
2.1 Easy T axi Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2 Star T axi iOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.1 Fluxul de lucru al aplicaµiei . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 Mo dulul p en tru clien t p e mai m ulte disp ozitiv e . . . . . . . . . . . . . . . . 35
4.3 Mo dulul p en tru clien t – pasul 1 . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.4 Mo dulul p en tru clien t – pasul 2 . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.5 Mo dulul p en tru clien t – pasul 3 . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.6 Mo dulul p en tru clien t – pasul 4 . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.7 Mo dulul p en tru clien t – pasul 5 . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.8 Diagrama pa³ilor necesari p en tru realizarea unei comenzi . . . . . . . . . . . 38
4.9 Mo dulul p en tru ³oferi p e iPhone . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.10 Mo dulul p en tru ³oferi – preluare comand  . . . . . . . . . . . . . . . . . . . 41
4.11 Mo dulul p en tru ³oferi – istoric comenzi . . . . . . . . . . . . . . . . . . . . . 41
4.12 Mo dulul p en tru ³oferi – set ri con t . . . . . . . . . . . . . . . . . . . . . . . . 42
4.13 Mo dulul p en tru disp ecerat – grac cu n um rul de comenzi ale lunii în curs . 43
4.14 Mo dulul p en tru disp ecerat – tab el comenzi . . . . . . . . . . . . . . . . . . . 44
4.15 Mo dulul p en tru disp ecerat p e mai m ulte disp ozitiv e . . . . . . . . . . . . . . 45
4.16 Diagram  ER (en titate-relaµie) a bazei de date . . . . . . . . . . . . . . . . . 46

Lista co durilor surs 
1 Elemen t HTML5 – <article> . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2 Preluarea co ordonatelor un ui utilizator cu ge olo c ation . . . . . . . . . . . . . 22
3 Exemplu HTML jQuery mobile . . . . . . . . . . . . . . . . . . . . . . . . . 28
4 A³area unei h rµi Go o gle Maps în tr-un div cu L e aet . . . . . . . . . . . . 30
5 Exemplu funcµie PHP7 cu tipuri de date sp ecicate . . . . . . . . . . . . . . 31
6 Rescrierea URL-urilor cu Apac he mo d_rewrite . . . . . . . . . . . . . . . . . 34
7 In terogare Ha v ersine p en tru MySQL . . . . . . . . . . . . . . . . . . . . . . 40
8 Crearea un ui grac cu MorisJS si Ajax . . . . . . . . . . . . . . . . . . . . . 43
9 Fi³ier he ader.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Capitolul 1
In tro ducere
1.1 In ternetul – o reµea global 
In ternetul este un instrumen t de informare m ultimedia, care tinde s  devin  univ ersal. În
so cietatea actual , n umit  "de com unicare", rolul informaticii se evidenµiaz  prin dou  pro-
priet µi tehnice ale computerelor: sto carea informaµiei ³i in terconectarea în reµea. In ternetul
este o reµea nonierarhic , f r  un cen tru unic, cu organizare fractal . Nu n umai ca organizare
in tern , ci ³i ca dinamic , In ternetul este un fenomen cultural în p ermanen t  nego ciere ³i
sc him bare. Este un mediu in teractiv, dialogal, diferenµiindu-se prin aceasta de mediile care
l-au precedat (radioul, televiziunea). In ternetul î³i pune utilizatorii în com unicare instan ta-
nee, în "timp real"; in ternauµii constituie noi rap orturi umane, sp ecice cib erculturii, care
înlo cuie³te com unicarea "faµ -n faµ ".
In ternetul este un mediu transparen t ³i accesibil. Op eraµiile care survin în tre transmiterea
un ui mesa j în reµea ³i primirea r spunsului se realizeaz  în tr-o manier  insesizabil  p en tru
utilizator (ca ³i ³oferul care p oate conduce ma³ina f r  s  ³tie prea m ulte despre motor ³i
transmisie).
In ternetul tinde s  devin  un medium univ ersal. P en tru c  se în temeiaz  p e principiul
informaµiei la scar  global , reµeaua ofer  servicii div erse: instrumen t de com unicare, de
informare, de difuzare electronic  a presei, de g sire a un ui lo c de m unc , de în v  µare la
distanµ  etc. Ca instrumen t de informare ³i de cultur , In ternetul b eneciaz  de hip ertex-
tualitate, ceea ce p ermite trecerea de la un text la altul, de la o imagine la alta. În timp ce
textul r mâne formal înc his, hip ertextul este desc his.
În pro cesul de globalizare a com unic rii, In ternetul fa v orizeaz  apropierea din tre p er-
soane ³i p op oare, îns  la niv el micro- aceast  tehnologie blo c heaz  emiµ torii ³i partenerii
com unic rii în solitudine. D. W olton folose³te parado xul "Solitari in teractivi" p en tru a deni
noua condiµie a om ului în cib erspaµiu.1
În tre a v an ta jele In ternetului menµion m:
ˆ extensibilitatea: ritm ul de cre³tere foarte rapid;
1W olton, D., Internet et apr è? Une thé orie critique des nouve aux mé dias, 1999 , P aris, Flammarion.
5

Mic hael F athi Afana In tro ducere
ˆ accesibilitatea ³i u³urinµa de utilizare;
ˆ indep endenµa faµ  de distanµ : p ot  accesate site-uri oriunde, la tarife lo cale;
ˆ p osibilitatea unor aplicaµii în domeniul afacerilor: reµele comerciale, publicitate, trans-
p ort etc.;
ˆ ³anse egale p en tru toµi furnizorii de informaµii;
ˆ siguranµ  ³i ecacitate;
ˆ lib ertate de informare ³i de com unicare, p osibilit µi de cenzur  ³i de con trol limitate.
1.2 Mobilitatea in tegrat . T axiul ca v erig  în lanµul trans-
p ortului public
So cietatea actual  se confrun t  cu noi pro v o c ri: cerinµe crescute faµ  de exibilitatea ³i
mobilitatea oamenilor ³i a companiilor, mo dicarea comp ortamen tului de consum ³i con-
³tien tizarea mai ridicat  a nev oii de protecµie a mediului. Disp onibilitatea de a utiliza
auto v ehicule electrice p en tru transp ortul urban este mare din partea parcurilor auto urbane,
com unale ³i a altor utilizatori comerciali, de exemplu a celor din domeniul logisticii.
În con textul so cial urban, mo dic rile sun t legate de globalizare ³i de impactul IT, de
urbanizarea rapid , de inec hitatea so cio-demograc , de sustenabilitate etc. Datorit  com-
plexit µii p e care o comp ort  mobilitatea ³i transp ortul, este necesar  o înµelegere "holistic 
³i in tegrat ". Urbanizarea este ea îns ³i rezultatul dorinµei de accesibilitate. Cererea p en tru
transp ort este "o cerere deriv at , bazat  p e dorinµa de a participa la div erse activit µi".2
Sc him b rile demograce (în structura de v ârst  ³i de gen) presupun sc him b ri în serviciile
de mobilitate – o cerere mai mare p en tru servicii con v enabile, de calitate. P e termen mediu,
cererea p en tru mobilitate n u v a sc dea semnicativ, nici în zonele urbane, nici în cele rurale.
V olksw agen Auto v ehicule Comerciale a iniµiat la Hano vra, în septem brie 2014, sub titlul
"Ora³ul in teligen t. In terconectarea ³i divizarea sustenabil  a mobilit µii", o zi a viitorului
p e tema conceptelor in teligen te de "trac" ³i "logistic ". Dialogul p en tru mobilitate urban 
a dezb tut strategiile viitorului în v ederea redenirii spaµiului complex de viaµ  din mediul
urban, p en tru a p ermite mobilitatea individual  ecien t , conform  cu nev oile ³i resursele.
Metrop olele au sarcina de a dezv olta un managemen t in tegrat al tracului ³i al mobilit µii ³i
de a concep e dezv oltarea structurilor de trac ³i urbanistice existen te. În acest sens trebuie
pus accen t, prin tre altele, p e dezv oltarea unor concepte p en tru o logistic  urban  funcµional ,
ecien t  ³i sustenabil .
Care este rolul taximetriei în acest sistem in tegrat? T axiurile sun t parte a transp ortului
public în com un, iar recomandarea EU public – private Smart Move High L evel Gr oup este
2Th ynell, Marie, "History and geograph y of urban transp ort; some p ersp ectiv es on h uman b eha viour and
the role of infrastructure"
6

Mic hael F athi Afana In tro ducere
aceea de a recunoa³te ³i de a promo v a taximetrul, înc hirierea de ma³ini cu ³ofer, ca un
elemen t v aloros ³i necesar în p oliticile de mobilitate colectiv  .3
Datorit  exibilit µii lor, care aproap e c  o dep ³e³te p e cea a ma³inii p ersonale, taxiurile
con tribuie la în t rirea celorlalate forme de transp ort public, p e care-l complemen teaz  cu
serviciile p ersonalizate p e care le ofer  24 de ore din 24, p e tot parcursul an ului. Date
statistice arat  c  în unele cazuri (noapte, aerop ort, p ersoane cu dizabilit µi, zone rurale
slab p opulate), taxiul r mâne singurul sau, în orice caz, furnizorul preferat de servicii de
mobilitate public .
1.2.1 T axi(metrul): etimologie, istorie, utilitate
T aximetrele au un rol imp ortan t ca alternativ   de transp ort în m ulte ora³e. În µ rile dezv ol-
tate, ele tind s  e folosite ca substitut p en tru auto v ehiculele p ersonale; alµi pasageri utili-
zeaz  serviciul din motiv e de confort sau p en tru c  n u doresc s  deµin  o ma³in . În µ rile
în curs de dezv oltare, taxiurile sun t adesea folosite p en tru a suplimen ta transp ortul public
inadecv at. Spre deosebire de alte auto v ehicule folosite în transp ortul public, precum autobu-
zele sau metroul, care urmeaz  zilnic rute prestabilite, ³oferii de taxi î³i planic , la cererea
pasagerului, propriile rute.
Cuv ân tul taxic ab a fost in v en tat în 1907 de c tre american ul Harry Nathaniel Allen, prin
con tragerea expresiei taximeter c abriolet . T aximeter vine din cuv ân tului francez taximètr e ,
format din cuv ân tul taxa "tax " (din Latina mediev al ) ³i mètr e "metru, m sur " (din
grecescul metron). T axi este o abreviere de la taximetru, cu sensul "metru automat p en tru
a înregistra distanµa ³i tariful"4. În român , cuv ân tul este un împrum ut din francez , de aici
forma "taxi" cu accen t p e silaba nal ; accen tuarea p e prima silab  este nerecomandat  de
normele lim bii române. Meseria de a conduce un taximetru în in teresul clienµilor se n ume³te
taximetrie, iar ³oferul este n umit taximetrist.
La P aris ³i la Londra a fost legiferat, înc  din secolul al XVI I-lea, transp ortul de p ersoane
prin înc hirierea de v ehicule (birje). T ranp ortul motorizat a ap rut la P aris în 1899, la Londra
în 1903, iar la New Y ork în 1907, taxiurile americane ind imp ortate din F ranµa de Harry
Nathaniel Allen. Staµia radio, in tro dus  în 1940, a fost o in v enµie imp ortan t , al turi de
aparatul de taxat, culoarea galb en  ³i desen ul în ³ah de p e u³i.
Un taxi sau un taximetru este un tip de v ehicul p en tru înc hiriere în in teres p ersonal,
folosit de un singur pasager sau de un grup mic de pasageri, cu o destinaµie la comand ,
p en tru transp ort de p ersoane sau de m rfuri. Serviciile de taxi difer  de alte mo duri de
transp ort public, ale c ror staµii de urcare ³i de cob orâre sun t determinate de furnizorul de
servicii, n u de c tre pasager. Clien tul hot r ³te destinaµia, lo cul de în tâlnire (dac  se face o
comand  telefonic ) ³i c hiar traseul; taximetrul p oate staµiona la cererea clien tului. Preµul
c l toriei este determinat de distanµ  ³i de ev en tualele staµion ri; absenµa sau funcµionarea
3http://www.iru.org/cms- filesystem- action/mix- publications/0320HLGTaxirecommendations_
web.pdf
4http://en.wikipedia.org/wiki/Taxicab
7

Mic hael F athi Afana In tro ducere
incorect  a aparatului de taxat este ilegal  în m ulte µ ri. T ransp ortul la comand  ³i taxiul
parta jat cu alµi pasageri constituie taxiul hibrid.
Exist  patru forme de taxiuri, iden ticate prin termeni u³or diferiµi de la µar  la µar :
– tr  suri / vago ane Hackney , cunoscute ³i sub n umele de "înc hirieri publice", licenµiate
p en tru a  comandate în com unit µi.
– vehicule de închiriat private , cunoscute sub n umele de minicabs sau taxiuri priv ate de
înc hiriat, autorizate n umai p en tru prerezerv are;
– autobuze-taxi (taxibuses) , care op ereaz  p e rute prestabilite, caracterizate prin opriri
m ultiple ³i mai m ulµi pasageri indep endenµi;
– limuzine , v ehicule sp ecializate autorizate p en tru funcµionare prin prerezerv are.
În tr-o alt  clasicare, taximetrele p ot  de urm toarele tipuri:
– taximetr e public e , accesibile oric rei p ersoane;
– taximetr e de tip privat , accesibile doar prin rezerv are;
– taximetr e de tip maxi taxi , folosite de mai m ulte p ersoane în acela³i timp;
– taximetr e de tip limuzin  – v ehicule sp eciale, disp onibile doar prin rezerv are.5
De³i tipurile de auto v ehicule ³i meto dele de reglemen tare, anga jare, disp ecerizare ³i ne-
go ciere a pl µii difer  semnicativ de la o µar  la alta, exist  m ulte caracteristici com une. Cu
toate c  rolul lor în reµeaua de transp ort (urban) este semnicativ, taxiurile r mân lo cale ca
fo cus, ind licenµiate de autorit µile lo cale, care impun condiµii sp ecice.
1.3 R spândirea telefoanelor in teligen te ³i a tabletelor
F olosirea unor aplicaµii p e smartphone ³i In ternetul mobil p ermite utilizatorilor s  b enecieze
rapid de servicii de taxi, s  rezerv e direct un taxi, s  dimin ueze timpul de a³teptare, iar
companiilor – s -³i ecien tizeze m unca.
Un smartphone ("telefon in teligen t") este un telefon mobil m ultimedia m ultifuncµional,
conectat la o reµea GSM sau UMTS. Dispune de o tastatur  de mici dimensiuni ³i are
un ecran sensibil la atingere de tip touchscr e en6. Prim ul smartphone a fost Simon (de
la IBM), prezen tat în 1992. Mo delul Blac kBerry , lansat în 2001, a p ermis p en tru prima
dat  com unicaµii prin e-mail mobile prin reµeaua GSM. Multe telefoane in teligen te in tro duse
dup  2010 utilizeaz  tehnologia 4G. Cele mai noi telefoane sun t c hiar mai rapide, folosind
o v ersiune cunoscut  sub n umele de 4G L TE. În 2007, Apple Inc. a in tro dus iPhone, un
5http://en.wikipedia.org/wiki/Taxicab
6http://ro.wikipedia.org/wiki/Smartphone
8

Mic hael F athi Afana In tro ducere
telefon in teligen t cu in terfaµ  m ulti-touc h, cu ecran tactil mare – un ul din tre cele mai v andute
smartphone -uri la ora actual . T elefoanele in teligen te din ultima generaµie in tegreaz  o mare
v arietate de utiliz ri cotidiene. De exemplu, cardurile de credit ³i pl µile mobile în n umerar.7
T elefon ul in teligen t funcµioneaz  ca un computer mobil miniaturizat ³i mijlo ce³te utili-
zatorului m ultiplele p osibilit µi ale w ebului:
ˆ trimiterea ³i primirea de email-uri, texte, fotograi ³i mesa je m ultimedia;
ˆ înregistrarea de con tacte;
ˆ funcµii de calculator, de pl µi, alarm , camer  foto ³i video;
ˆ na vigare p e In ternet, na vigare GPS;
ˆ media pla y er, jo curi.
1.3.1 Sisteme de op erare p en tru disp ozitiv e mobile (sau mobile OS)
Un sistem de op erare p en tru disp ozitiv e mobile este un sistem de op erare p en tru smartphone –
uri, tablete, PD A-uri sau alte disp ozitiv e mobile. De³i unele calculatoare (cum ar  laptopul)
sun t mobile, sistemele de op erare folosite de obicei p e ele n u sun t considerate mobile, deoarece
au fost concepute iniµial p en tru computere desktop staµionare, care n u au a vut nev oie de
caracteristici mobile sp ecice.8
Smartphone -urile lucreaz  sub un an umit sistem de op erare, adesea com un în tre dis-
p ozitiv e, p en tru a asigura compatibilitatea. Tizen, de exemplu, este un sistem de op erare
bazat p e Lin ux p en tru o serie de disp ozitiv e, inclusiv smartphone -uri, tablete, televizoare
in teligen te, laptop-uri ³i aparate de fotograat in teligen te. P e ma joritatea smartphone -urilor
ruleaz  iOS de la Apple sau Android de la Go ogle, iar altele folosesc Windo ws Phone sau
Blac kBerry OS. P en tru a l rgi p osibilit µile, se p ot programa ³i instala aplicaµii suplimen-
tare, n umite în general app (plural: apps ). Utilizatorii p ot obµine mai m ulte programe care
îi p ot a juta s  completeze sarcini sp eciale, de la Apple App Store ³i Go ogle Pla y . Aplicaµiile
apar p e ecran ul principal al telefon ului ³i se p ot organiza în foldere.
Aplicaµiile mobile p ot s  e:
ˆ nativ e – se p ot instala ³i sun t dezv oltate sp ecial p en tru un sistem de op erare. Utilizato-
rii care folosesc aceste programe trebuie s  le descarce prin in termediul un ui magazin
online (sp ecicat an terior), gratuit sau în sc him bul unei sume de bani. Aplicaµiile
mobile nativ e p ot accesa toate funcµiile disp ozitivului p e care sun t instalate: reµea
(In ternet), accelerometru, camer  foto, GPS, senzor de ampren t , lista de con tacte,
notic ri etc. P en tru an umite funcµii, utilizatorul p ermite aplicaµiei s  le foloseasc .
7http://en.wikipedia.org/wiki/Smartphone
8http://en.wikipedia.org/wiki/Mobile_operating_system
9

Mic hael F athi Afana In tro ducere
ˆ w eb – n u sun t aplicaµii reale, sun t de fapt site-uri care arat  ³i par a  aplicaµii nativ e.
A cestea sun t înc rcate de un br owser ³i de obicei sun t dezv oltate în HTML5 ³i CSS3
cu a jutorul unei platforme de dezv oltare mobil  (jQuery Mobile, Zepto, Senc ha T ouc h,
T rigger.io, AppF ramew ork etc.). O aplicaµie w eb se dezv olt  mai u³or ³i cost  mai
puµin; aceasta de obicei n u depinde de sistem ul de op erare al utilizatorului. Utilizatorul
p oate s  adauge aplicaµia p e ecran ul principal prin in termediul un ui marca j ( b o okmark );
v a  a³at  o imagine prin in termediul un ui tag HTML , la fel ca la o aplicaµie nativ  :
<!–exemplu iconi¸ t ˘a aplica¸ tie mobil ˘a iOS–>
<linkrel="apple-touch-icon" sizes="76×76"
href="cale/ios-76×76.png" /> ,!
P e disp ozitiv ele care ruleaz  p e iOS, dup  ce a fost ad ugat  p e ecran ul principal,
aplicaµia este a³at  p e tot ecran ul (f r  bara p en tru adrese sau na vigaµie), prin in ter-
mediul un ui tag HTML :
<metaname="apple-mobile-web-app-capable" content="yes" />
ˆ hibride – sun t aplicaµii nativ e în care se încarc  aplicaµii w eb prin in termediul unei clase
W ebView . Aplicaµia w eb are acces la toate funcµiile telefon ului (dac  are p ermisiunile
necesare). Cele mai p opulare platforme de dezv oltare p en tru crearea unei aplicaµii de
acest tip sun t: Phonegap9, Ionic10, Mobile Angular UI11, In tel XDK12, App celerator
Titanium13³i Senc ha T ouc h.14
Aplicaµiile nativ e se încarc  rep ede, au mi³c ri uen te ³i p ot s  e folosite f r  o conexiune
la In ternet, dar exist  ³i deza v an ta je: spaµiul o cupat dup  instalare, se p ot decompila u³or,
co dul surs  ind vizibil, se p ot descop eri probleme de securitate ³i sun t greu de în treµin ut.
Din aceste motiv e, m ulµi dezv oltatori trec de la aplic aµii native la aplic aµii hibride . Cele
mai folosite aplicaµii mobile hibride sun t: HomeBank (ING)15, Instagram16, Ev ernote17,
Link edin18etc.
Android (op erating system), bazat p e Lin ux Kernel, a dev enit cea mai bine v ândut 
platform  smartphone . Este o platform  op en-source fondat  în o ctom brie 2003 ³i susµin ut 
de Go ogle împreun  cu marii dezv oltatori de hardw are ³i soft w are (In tel, HTC, ARM, Mo-
torola ³i Samsung). Suita soft w are inclus  în telefon const  în in tegrarea unor aplicaµii de
la Go ogle, cum ar  h rµi, calendare, Gmail ³i un bro wser w eb HTML complet (Chrome).
9http://phonegap.com/
10http://ionicframework.com/
11https://angular- ui.github.io/
12https://software.intel.com/en- us/intel- xdk
13http://www.appcelerator.com/
14http://www.sencha.com/products/touch/
15https://www.ing.ro/ingb/persoane- fizice/e- banking/mobile- banking.html
16https://instagram.com
17https://evernote.com/products/
18https://www.linkedin.com/mobile
10

Mic hael F athi Afana In tro ducere
iOS este un sistem de op erare p en tru disp ozitiv e mobile dezv oltat de Apple Inc. ³i dis-
tribuit exclusiv p en tru Apple hardw are. Prim ul disp ozitiv care a utilizat iOS a fost iPhone
(2007), un ul din tre primele telefoane mobile in teligen te cu o in terfaµ  m ulti-touc h. A fost
remarcat datorit  utiliz rii un ui ecran tactil mare, p en tru accesarea direct  cu degetul, ca
mijlo c principal de in teracµiune, în lo cul un ui st ylus sau a tastaturii, tipice p en tru smar-
tphone -urile an terioare momen tului resp ectiv.19
Windo ws Phone de la Microsoft este, ca r spândire, al treilea tip de sistem de op erare
instalat p e telefoanele in teligen te dup  Android ³i iOS; este o surs  înc his , deosebit de
Android, care este un soft w are gratuit ³i desc his.20
1.3.2 T ableta – un calculator p ortabil
Un "calculator tablet " / "tablet " / "tablet  PC" (din engl. tablet c omputer sau tablet PC )
este un tip de calculator p ortabil, cu un ecran touchscr e en , circuitele ³i bateria grupate în tr-o
singur  unitate, dev enit p osibil prin con tin ua miniaturizare a comp onen telor electronice ³i
p e baza unor in v enµii tehnologice. Mai mari decât smartphone -urile, tabletele sun t dotate cu
senzori, inclusiv camere video, microfon ³i accelerometru, iar ecran ul touchscr e en folose³te
degetul sau un st ylus p en tru substituirea utiliz rii mouse-ului ³i a tastaturii. P ot include
butoane p en tru v olum ul difuzorului ³i p en tru com unicaµiile de reµea.
Prima tablet  mo dern , iP ad, a fost lansat  în 2010. V olum ul v ânz rilor de tablete
Android a fost de 121 de milioane în 2013 ³i, în ciuda scepticism ului iniµial, tabletele au
cunoscut o cre³tere rapid  în p opularitate ³i în ubicuitate; în 2015, piaµa tabletelor este
estimat  s  a jung  la 149 de milioane de unit µi, cu o v aloare de 49 de miliarde de dolari.
Exemple de tablete: Apple iP ad, Microsoft T ablet PC, tablete de la Samsung, Nokia, Son y ,
ASUS etc.
T abletele p ot  clasicate în funcµie de prezenµa zic  a tastaturii. Slates (v arian ta
standard) ³i b o oklets n u au o tastatur  zic  ³i, de obicei, efectueaz  in tro ducerea textului
prin tr-o tastatur  virtual  proiectat  p e un ecran compatibil cu touchscr e en -ul. Cele hibride
³i c onvertibile au tastaturi zice, dar au disp onibile ³i tastaturi virtuale.21
Calculatorul tablet  are urm toarele caracteristici:
ˆ este un calculator relativ mic, mobil (conectabil f r  r la reµeaua de telefonie mobil 
celular  GSM), p ortabil, din clasa de disp ozitiv e In ternet mobile (Mobile In ternet
Devices, MID);
ˆ are ecran relativ mare, tactil, color (rezoluµie bun , asem n toare cu cea a noteb o ok-
urilor);
19http://en.wikipedia.org/wiki/Smartphone
20http://en.wikipedia.org/wiki/Mobile_operating_system
21http://en.wikipedia.org/wiki/Tablet_computer
11

Mic hael F athi Afana In tro ducere
ˆ n u dispune de tastatur  zic , dar p oate a³a p e ecran o tastatur  virtual  sau i se
p oate ata³a o tastatur  separat ;
ˆ n u dispune de disc dur ³i nici de unitate de CD / D VD / Blu-ra y; dispune de obicei
de o memorie in tern  de tip ash;
ˆ conectivitate f r  r la In ternet prin Wi-Fi (WLAN), GSM (telefonie mobil  celular )
sau UMTS. Unele tablete folosesc tehnologia 4G ³i conectivitate prin cablu la un ruter
In ternet. A cces deplin la In ternet;
ˆ unele tablete sun t PC-uri în miniatur , care folosesc Windo ws sau Unix. A cest tip
constructiv de PC se n ume³te "PC tablet ";
ˆ unele tablete ofer  acces standard la sistem ul de op erare ³i la tot soft w are-ul instalat,
la fel ca la un PC obi³n uit;
ˆ p osibilit µi restrânse de conectare prin r la div erse aparate / disp ozitiv e suplimen tare,
prin in termediul p orturilor USB, HDMI, miniUSB;
ˆ unele mo dele dispun de una sau c hiar dou  camere de luat v ederi, cu rezoluµii în tre 0.3
³i 8.0 Mega pixeli;
ˆ ca surs  de energie, tabletele folosesc acum ulatoare de mare capacitate (3200-9000
mAh), cu un timp de înc rcare asem n tor celui de la telefoanele mobile;
ˆ tot hardw are-ul calculatorului este construit ³i in tegrat în spatele ecran ului (asem n –
tor cu calculatoarele p ersonale de tip all-in-one);
ˆ grosime acceptabil  (mai mic  de 10 milimetri) ³i o greutate mic  (în tre 350 si 600 de
grame).22
Dac  iniµial erau axate p e conµin utul online, dezv oltarea ulterioar  a pro cesoarelor ³i
îm bun t µirea tehnologiilor au adus tabletelor comp etenµe ce p ermit o funcµionalitate div er-
sicat :
ˆ vizualizarea ³i editarea do cumen telor de orice tip;
ˆ înregistrarea ³i redarea de conµin ut m ultimedia HD;
ˆ lectura de c rµi electronice în orice format;
ˆ instalarea de aplicaµii noi;
ˆ accesul în reµeaua In ternet prin conexiuni f r  r;
ˆ rularea de jo curi, de la cele mai simple pân  la jo curile 3D;
22http://ro.wikipedia.org/wiki/Calculator_tablet%C4%83
12

Mic hael F athi Afana In tro ducere
ˆ instalarea un ui n um r redus de disp ozitiv e externe;
ˆ com unicarea prin in termediul reµelei in ternet.23
Se estimeaz  c , în viitor, n um rul tabletelor PC v a cre³te ³i c  v or  orien tate c tre
necesit µile cotidiene ale utilizatorului, p trunzând ³i în mediile didactice ³i profesionale.
1.4 Utilitatea aplicaµiei
Proiectul nostru, Dezvoltar e a unei aplic aµii (inteligente) p entru optimizar e a onor  rii c omen-
zilor unei c omp anii de taxi , p e care l-am n umit Smart taxi , este disp onibil p e mobil ³i
desktop, este recomandabil pasagerilor, ³oferilor ³i companiilor de taxi in teresate s -³i mini-
mizeze costurile (consum ul de carburanµi, anga jaµi necesari ³i timp), ca ³i riscul de p oluare.
F olosind aceast  aplicaµie, un taximetrist v a iden tica pasagerii mai rep ede, iar clienµii v or
g si un taxi m ult mai u³or ³i mai rapid.
23http://ro.wikipedia.org/wiki/Calculator_tablet%C4%83
13

Capitolul 2
Aplicaµii mobile in teligen te p en tru a
comanda un taxi
Nev oia unor astfel de aplicaµii, cu m ultitudinea de b enecii p e care le aduc, determin 
asimilarea lor rapid , iar prin îm bun t µiri p erio dice se p streaz  con tactul p ermanen t cu
solicit rile utilizatorilor.
Easy T axi1este cea mai desc rcat  aplicaµie din lume, tradus  în 11 din tre cele mai
folosite lim bi; este o aplicaµie E-hailing p e telefon ul mobil, disp onibil  în 30 de µ ri. Aplicaµia
le p ermite utilizatorilor s  rezerv e un taxi ³i s -l urm reasc  în timp real.
Figura 2.1: Easy T axi Android
1http://www.easytaxi.com
14

Mic hael F athi Afana Aplicaµii mobile in teligen te p en tru a comanda un taxi
Easy T axi a fost îninµat  în 2011 în Brazilia ³i s-a extins la niv el global, acop erind
reµeaua a 30 de µ ri ³i mai m ult de 420 de ora³e. A fost susµin ut  de Ro c k et In ternet ³i de
alµi in v estitori, inclusiv Millicon ³i iMENA. Conceptul original a a vut în v edere prioritizarea
pieµelor cu dicult µi ³i inecienµe în mobilitatea urban ; acest concept st  la baza strategiilor
de expansiune în µ rile cu economie emergen t  din America de Sud, Africa ³i Asia. În
decem brie 2014, compania a rap ortat un n um r de 17 milioane de utilizatori ³i p este 400.000
de ³oferi de taxi aliaµi la o reµea Easy T axi.2
Aplicaµia p oate  folosit  p e Android, iOS, Windo ws Phone ³i Blac kb erry 10, în toate lo-
caµiile în care op ereaz  taxiurile partenere. În ce priv e³te tr s turile ³i funcµionarea, buton ul
"Request T axi" declan³eaz  scanerul, care iden tic  taxiurile partenere p e o an umit  raz  a
lo caµiei. “oferii de taxi din apropiere, dotaµi cu smartphone -uri, p ot accepta cursa ori o p ot
refuza. Prim ul ³ofer din zona µin t  v a  repartizat clien tului, care prime³te o conrmare cu
n umele ³i ma³ina conduc torului auto, cu n um rul de înmatriculare, fotograa ³i n um rul
celularului s u. Aplicaµia p ermite utilizatorului s  urm reasc  conduc torul auto în timp
real, folosind harta inclus . Se p ot salv a adresele preferate ³i se p oate v erica istoricul cursei.
V ersiunea p en tru ³ofer a aplicaµiei este disp onibil  n umai p e disp ozitiv e Android. P e lâng 
acceptarea cursei, ³oferul p oate trimite pasagerului alerte de sosire ³i notic ri de îm barcare.
“oferii p ot suna pasagerii ³i p ot folosi sup ortul de na vigare inclus, e cu Go ogle Na vigation,
e cu W aze. Aplicaµia p ermite caracteristici sp ecice ec rei µ ri, cum ar  "A erop ort taxi"
sau "Exces de baga je" ³i ofer  soluµii de plat  f r  n umerar.3
Compania ofer  soluµii ETPro, concepute p en tru baruri, hoteluri ³i unit µi cu un des-
ktop ec hiv alen t aplicaµiei mobile; prin ETPro p ot rezerv a pân  la 5 pasageri, n umai dup 
înregistrarea con tului. Include ³i o soluµie care p ermite plata prin in termediul aplicaµiei:
facturarea ³i con trolul c heltuielilor de taxi lunare, reducând pân  la 40% costul taxiurilor
p en tru companie.
T axiZapp Dispatc h4este un sistem de onorare a comenzilor de taxi bazat p e In ternet,
p en tru acele companii de taxi ³i de minicab care doresc s  in tro duc  un sistem de exp ediere
³i care v or s  se îndep rteze de sistemele "pix ³i hârtie" sau de trimitere prin radio.5P en tru
cine are p osibilitatea de a p orni un computer ³i de a utiliza un mouse, acest sistem este
preferabil. T oate elemen tele de baz  necesare în tr-un sistem de exp ediere sun t disp onibile
în tr-un singur pac het. Stabilirea preµurilor este simpl  – pl tiµi p er ³ofer, p e lun .
Clev er T axi6, aplicaµie p en tru mobil, lansat  în 4 o ctom brie 2012, prin in termediul c –
reia se p oate comanda cel mai apropiat taxi din doar câtev a clic k-uri. În 9 august 2014,
o dat  cu actualizarea aplicaµiei Clev er T axi, se p oate pl ti con tra v aloarea cursei direct cu
telefon ul mobil, prin SMS (doar p en tru clienµii Orange) sau folosind cardul bancar. Clev er
T axi este prima ³i singura aplicaµie de comand  a un ui taxi din România ce p ermite utiliza-
2http://en.wikipedia.org/wiki/Easy_Taxi
3Ibidem
4http://www.taxizapp.com
5http://www.taxizapp.com
6http://www.clevertaxi.com
15

Mic hael F athi Afana Aplicaµii mobile in teligen te p en tru a comanda un taxi
torilor selectarea companiilor de taxi preferate ³i transmiterea unei comenzi c tre mai m ulte
companii în acela³i timp; începând din luna august 2014 p ermite ³i plata curselor direct
din aplicaµie prin SMS sau prin card bancar. Aplicaµia este complet funcµional  în 10 ora³e
mari din România (Bucure³ti, Cluj, Ia³i, Târgu Mure³, Bra³o v, Ploie³ti, Galaµi, Sibiu, Târgu
Neamµ ³i Roman) ³i în ³ase orase imp ortan te din Ungaria, ind lider de piaµ  în România
cu cele mai m ulte comenzi pro cesate: p este 10.000.000.7
"P erturbare constructiv  " este sin tagma p e care T an GrabT axi8o folose³te p en tru a
descrie activitatea companiei din Kuala Lumpur – exploatarea platformei, a otei, a normelor
existen te. P e de alt  parte, utilizarea Ub er9a autoturismelor p ersonale este o strategie
disruptiv   mai p erturbatoare .
Dezv oltat  de c tre o ec hip  de români, Star T axi este o aplicaµie in teligen t  p e mobil,
care îi aduce utilizatorului taxiul direct de p e smartphone ³i ofer  gratuit In ternet în ma³ini.
Utilizatorul comand  un taxi direct de p e telefon ul mobil in teligen t, v ede cine r spunde la
comand  ³i alege în tre ³oferii de taxi disp onibili. De asemenea, p oate citi comen tariile ³i
opiniile celorlalµi utilizatori despre resp ectivul ³ofer. În plus, clien tul p oate pl ti tot prin
in termediul aplicaµiei direct din con tul bancar ³i, b on us, b eneciaz  de acces gratuit la
In ternet WiFi p e tot parcursul c l toriei cu taxiul.
T raseul unei comenzi este urm torul:
ˆ aplicaµia detecteaz  automat (prin GPS) lo caµia utilizatorului;
ˆ acesta conrm  adresa ³i trimite comanda;
ˆ aplicaµia transmite cererea c tre taxiurile lib ere din zon ;
ˆ taxiul cel mai apropiat prime³te comanda înain tea altora;
ˆ ³oferul care accept  comanda a junge la clien t;
ˆ utilizatorul p oate l sa comen tarii despre cursa efectuat  ³i despre ³ofer; el prime³te
un con t de conectare la In ternetul din taxi ³i p oate folosi gratuit In ternetul mobil în
timpul cursei.10
Aplicaµia este disp onibil  p e smartphone -urile Android ³i iOS din 2012; se adresa, în
prima faz , unei baze de date de 200 de taximetri³ti, la care se estima c  se v or ad uga
lunar p este 150 de noi ³oferi de taxi. P en tru ³oferii de taxi, aplicaµia este preinstalat  p e un
smartphone p e care ³oferul îl are la disp oziµie gratuit p e toat  p erioada con tractual . Piaµa
a impus un ritm de dezv oltare alert, a³a încât în n umai 4 luni, în 2013, aplicaµia a a juns s 
e implemen tat  în Bucure³ti, Bra³o v, Timi³oara ³i Ia³i.
7https://www.clevertaxi.com/ro/
8http://grabtaxi.com
9https://www.uber.com
10http://www.startaxiapp.com/
16

Mic hael F athi Afana Aplicaµii mobile in teligen te p en tru a comanda un taxi
Exist  câtev a a v an ta je concrete, care s-ar putea rezuma la: acces rapid la un sistem
in teligen t direct de p e smartphone , comand  rapid , excluderea timpului mort de a³teptare
la telefon a r spunsului un ui disp ecer clasic, vizualizarea prolului ³oferului înain te de a
accepta cursa ³i p osibilitatea de a comen ta ³i de a acorda un rating ³oferului, astfel încât ³i
alµi clienµi s  e informaµi, accesul gratuit la In ternet WiFi p e toata durata cursei.11
Figura 2.2: Star T axi iOS
T axi Managemen t System este o aplicaµie adresat  rmelor de taxi, care funcµioneaz 
ca un disp ecerat taxi online, oferind p osibilitatea de a primi comenzi telefonice sau online
direct de p e telefoanele mobile (Android, iOS, Windo ws Mobile).12Benecii:
ˆ cre³terea n um rului de comenzi prin oferirea unei mo dalit µi simple de comand ;
ˆ reducerea p ersonalului din disp ecerat prin pro cesarea automat  a comenzilor;
ˆ pro cesarea un ui n um r mare de comenzi în in terv alele aglomerate;
ˆ con trol deplin al activit µii disp eceratului;
ˆ rap oarte detaliate legate de activitatea disp ecerilor / taximetri³tilor / clienµilor.
11http://economie.hotnews.ro/stiri- it- 14210132- aplicatia- mobile- star- taxi- patru- luni- patru- orase.
htm
12https://www.telekom.ro/business/taxi- management- system/
17

Capitolul 3
T ehnologii utilizate
3.1 GIS
GIS este acronim ul de la Ge o gr aphic Information System (Sistem Informatic Geograc –
uneori tradus în forma SIG în lim ba român ). A cest sistem este utilizat p en tru a crea,
sto ca, analiza ³i prelucra informaµii distribuite spaµial prin tr-un pro ces computerizat.1
T ehnologia GIS p oate  utilizat  în div erse domenii ³tiinµice cum ar : managemen tul
resurselor, studii de impact asupra mediului, cartograe, planicarea rutelor.
Sp ecic un ui GIS este mo dul de organizare a informaµiei gestionate. Exist  dou  tipuri
de informaµie: una grac , ce indic  repartiµia spaµial  a elemen telor studiate ³i alta sub
form  de baz  de date, p en tru a sto ca atributele aso ciate acestor elemen te (de exemplu,
p en tru o ³osea – lungimea ei, l µimea, n um rul b enzilor, materialul de construcµie etc.).
Informaµia grac  este de dou  feluri: r aster sau ve ctorial  . Graca raster este o mo dali-
tate de reprezen tare a imaginilor în aplicaµii soft w are sub form  de matrice de pixeli, în timp
ce graca v ectorial  este o meto d  de reprezen tare a imaginilor cu a jutorul unor primitiv e
geometrice (puncte, segmen te, p oligoane), caracterizate de ecuaµii matematice. Sp ecic 
sistemelor GIS este aso cierea un ui sistem de co ordonate geograce matricii de pixeli (la
imaginile raster) sau v ectorilor. Pro cedeul p oart  n umele de ge or efer enµier e . Astfel, un ui
obiect (reprezen tat e prin tr-o imagine, e prin tr-un v ector) îi este aso ciat  o p oziµie unic 
în sistem ul informatic corespunz tor p oziµiei geograce din lumea real . Datorit  informa-
µiilor aso ciate gracii, Sistemele Informatice Geograce b eneciaz  de toate op ortunit µile
de in terogare p e care le ofer  sistemele mo derne de baze de date, ³i în plus, p ot oferi u³or
analize orien tate p e an umite zone geograce – a³a n umitele h rµi tematice.
Un exemplu com un de Sistem Informatic Geograc îl reprezen t  sistemele de na vigaµie.
Harta rutier  în form  v ectorial  este georeferenµiat  astfel încât sistem ul de p oziµionare
global  ( Glob al Positioning System – GPS) s  p oat  indica p oziµia exact  a auto v ehiculului.
Planicarea rutei este în fapt o hart  tematic  obµin ut  în urma unei in terog ri spaµiale
(c utarea distanµei celei mai scurte în tre dou  puncte) com binat  cu o in terogare a bazei de
1http://www.esri.com/what- is- gis
18

Mic hael F athi Afana T ehnologii utilizate
date aso ciate drum urilor din hart , astfel încât s  e resp ectate o serie de condiµii (limit ri
de vitez , gabarit, sensuri de circulaµie, in terdicµii etc.).
Datorit  impactului p ozitiv, sistemele soft w are GIS s-au dezv oltat foarte m ult. Exist 
p e piaµ  un n um r foarte mare de pro duse, atât ale dezv oltatorilor consacraµi (ESRI2, In ter-
graph3, Auto desk4, MapInfo5etc.), dar ³i de tip op en sour c e (Grass GIS6, Quan tum GIS7,
GVSIG8, Op enJump9etc.).
Una din meto dele utilizate p en tru a crea o hart  se n ume³te digitizare. Digitizarea
este pro cesul prin care, p e baza unei h rµi, sun t create obiecte geograce sp ecice zonei
reprezen tate, obµinându-se astfel h rµi digitale simplicate. Digitizarea p oate  realizat  cu
a jutorul tabletelor digitizoare sau direct p e ecran.
Aplicaµiile de tip GIS se împart în trei mari categorii: aplicaµii GIS de sine st t toare
(op ensource sau n u), aplicaµii GIS dezv oltate p en tru disp ozitiv ele mobile ³i, cele mai des
r spândite, aplicaµiile GIS W eb. Datorit  ev oluµiei exp onenµiale a In ternetului, a mo dului
simplu ³i util în care se p ot vizualiza an umite date spaµiale, utilizatori p ot crea h rµi tematice,
p ot face in terog ri ³i analize spaµiale, indiferen t de lo cul unde s-ar aa; W eb GIS a dev enit
un instrumen t foarte r spândit, care ne a jut  în viaµa cotidian .
În tr-un sistem W eb GIS, utilizatorul are la disp oziµie tehnologii ce p ermit a³area h rµilor
în bro wser: animation, zo om in, zo om out, p an etc.
3.2 HTML5 ³i geolo calizarea
Lim ba jul univ ersal folosit de W orld Wide W eb este HTML (engl. Hyp ertext Markup Lan-
guage); este un mo d de înregistrare a do cumen telor de tip hip ertext sub form  de ³iere de
tip text.
HTML prezin t  sin taxa do cumen tului ³i dene³te complexul a³a-ziselor "elemen te de
parcare", care n u sun t prezen te p e monitorul utilizatorului, dar denesc mo dul de prezen tare
a informaµiilor.
Standardul HTML a fost propus în 1990, de c tre Tim Berners-Lee10de la Cen trul
Europ ean de Cercet ri A tomice (CERN) din Elv eµia, iar prim ul serv er WWW a fost pus în
funcµiune în cen trul CERN în mai 1991. În primii ani de construire a sistem ului WWW,
do cumen tele de tip hip ertext erau destul de simple. În parte, acest lucru se datora folosirii
bro wserelor de tip text (Lynx).
2http://www.esri.com
3http://www.intergraph.com
4http://www.autodesk.com/
5http://www.mapinfo.com
6http://grass.osgeo.org
7http://www.qgis.org/en/site/
8http://www.gvsig.com
9http://www.openjump.org
10http://www.w3.org/People/Berners- Lee/
19

Mic hael F athi Afana T ehnologii utilizate
Do cumen tele HTML erau prezen tate sub form  de text scris în mo d cursiv, iar cuvin tele
care reprezen tau un hip erlink erau evidenµiate cu caractere b oldate.
Rolul de co ordonator al dezv olt rii lim ba jului HTML îl îndepline³te W ord Wide W eb
Consortium, prescurtat W3C (h ttp://www.w3c.org). Din consorµiu fac parte organizaµii
pro duc toare de programe legate de WWW, Microsoft, Macromedia, A dob e.
Un ul din tre scopurile consorµiului W3C este uniformizarea mo durilor de formatare a
do cumen telor de c tre bro wserele diferiµilor pro duc tori ( cr oss br owser c omp atiblity ). Un ul
din rezultatele eforturilor depuse a fost adoptarea standardului a³a-ziselor pagini de stil în
cascad  (CSS).
A cest lim ba j este în tr-o p ermanen t  dezv oltare, ceea ce putem observ a prin in tro ducerea
unei noi v ersiuni, HTML5 , care aduce noi standarde, noi elemen te ³i desc hide o nou  er 
p en tru dezv oltatorii de site-uri, oferindu-le mai m ult  exibilitate. Se p ot crea site-uri ³i
aplicaµii m ult mai in teractiv e ³i mai in teresan te.
Prin tre elemen te noi aduse de HTML5 se reg sesc elemen te structurale precum: <he a-
der> , <fo oter> , <c anvas> , <vide o> , <audio> , cu rolul de a înlo cui folosirea tehnologiei
A dob e Flash p en tru animaµii sau p en tru ad ugarea de sunete.
Cele mai imp ortan te elemen tele structurale noi sun t:
ˆ <header> – conµine informaµii in tro ductiv e p en tru o pagin . P oate include sigla site-
ului si alte elemen te de început (<h1>,<h2>…<h6>) sau p oate  inclus în elemen tul
<article> ;
ˆ <na v> – conµine una sau mai m ulte leg turi de na vigaµie care redirecµioneaz  utili-
zatorul spre o alt  pagin . De exemplu, meniul principal sau un form ular de c utare;
ˆ <article> – conµine un elemen t cu conµin ut distinct ³i indep enden t, care se p oate
extrage din pagin  ³i se p oate folosi ca un elemen t de RSS. De exemplu, o p ostare p e
un blog, un video, o ³tire sau orice alt fel de conµin ut indep enden t;
ˆ <section> – separ  zone de conµin ut distincte ale paginii sau ale un ui elemen t (de
exemplu, un articol);
ˆ <fo oter> – conµine informaµii despre autor, drepturi de autor sau leg turi spre pagini
aso ciate.
Alte elemen te ap rute în HTML5 sun t: aside , audio , b di , c ommand , data , datalist , details ,
gc aption , gur e , keygen , mark , meter , output , sour c e , summary , time , tr ack , vide o ³i wbr .
La elemen tul input din tr-un form ular au ap rut v alori noi p en tru atributul typ e : date , time ,
email , url , se ar ch , numb er , r ange , tel ³i c olor ; câmpurile sun t v alidate automat de bro wser.11
11http://ro.wikipedia.org/wiki/HTML5#Markup
20

Mic hael F athi Afana T ehnologii utilizate
Co d sursa 1 Elemen t HTML5 – <article>
<article>
<header>
<h2>Postare blog </h2>
</header>
<p>Aenean elementum dui et quam ultricies, eget tristique justo
tincidunt. Pellentesque ultrices quam nec ligula vulputate, a
blandit dui vulputate. Quisque tristique rhoncus tortor,
vehicula feugiat tellus vestibulum sed. </p>,!
,!
,!
<section>
<h3>Comentarii </h3>
<article>
<p>Ut eleifend mi vel leo euismod, porttitor dapibus justo
ultricies. </p> ,!
<footer>
<p>Ad˘augat de Popescu Ion </p>
</footer>
</article>
</section>
<footer>
<p>
Ad˘augat la <timedatetime="2015-06-15 12:00" >15 Iunie </time> de
Administrator. ,!
</p>
</footer>
</article>
În aplicaµia Smart taxi este folosit elemen tul <nav> p en tru meniul principal, aat în
partea de sus a aplicaµiei p en tru clien t. De asemenea, este folosit în partea de disp ecerat
împreun  cu JavaScript p en tru a desena gracul in teractiv de p e prima pagin  p e un elemen t
<svg> .
Geolo calizare
HTML5 p ermite preluarea lo caµiei utilizatorului (latitudinea ³i longitudinea) de c tre o
pagin  w eb cu a jutorulul funcµiei Ja v aScript ge olo c ation12, doar dup  ce utilizatorul ³i-a
dat acordul p en tru preluarea acesteia. Dup  preluarea lo caµiei, aceasta p oate  folosit 
p en tru a c uta în baza de date obiecte apropiate de utilizator sau s  i se a³eze lo caµia p e
o hart .
O dat  c hemat  funcµia ge olo c ation p en tru a prelua lo caµia, este a³at un mesa j de c tre
bro wser prin care utilizatorul este în trebat dac  p ermite preluarea lo caµiei; acesta p oate
s  aleag  dac  dore³te sau n u ³i, dac  vrea, s  salv eze aceast  decizie. Nu exist  nicio
p osibilitate ca lo caµia utilizatorului s  e preluat  f r  acordul acestuia.
12https://developer.mozilla.org/en- US/docs/Web/API/Geolocation
21

Mic hael F athi Afana T ehnologii utilizate
Co d sursa 2 Preluarea co ordonatelor un ui utilizator cu ge olo c ation
//codul va fi apelat dup ˘a încarcarea paginii
$(function (){
//se verfic ˘a dac˘a func¸ tia de localizare exist ˘a
if(navigator.geolocation) {
//va fi chemat ˘a func¸ tia afisare_locatie
//dup˘a ce au fost preluate datele de pozi¸ tionare
navigator.geolocation.getCurrentPosition(afisare_locatie);
}else{
alert("Func¸ tia de geolocalizare nu este disponibil ˘a");
}
});
//afi¸ sare loca¸ tie
function afisare_locatie(pos){
alert("Latitudine: " + pos.coords.latitude + " / "
"Longitudine: " + pos.coords.longitude);
}
P arametrul funcµiei getCurr entPosition este funcµia care v a  ap elat  cu un parametru ce
conµine datele de lo calizare, data ³i ora obµinerii acestora. P arametrul conµine urm toarele
date:
ˆ c o or ds.latitude – latitudinea;
ˆ c o or ds.longitude – longitudinea;
ˆ c o or ds.ac cur acy – acurateµea în metri a lo caliz rii;
ˆ c o or ds.sp e e d – viteza de deplasare în metri/secund , opµional;
ˆ c o or ds.altitude – altitudinea în metri, opµional.
P en tru sistemele desktop, unde n u este disp onibil un semnal GPS , lo caµia p oate  preluat 
în funcµie de ip-ul utilizatorului; aceasta se limiteaz  doar la preluarea ora³ului utilizatorului
³i p oate s  returneze o lo caµie gre³it .
În cazul în care utilizatorul este conectat prin WiFI , lo caµia este preluat  în funcµie de
reµelele WiFI disp onibile în jurul utilizatorului. La ora actual  exist  o baz  de date v ast ,
cu o m ultitudine de reµele wi ³i lo calizarea lor apro ximativ  . A ceste date sun t colecµionate
e de p e telefoanele mobile, care transmit reµelele wi din jurul utilizatorului sau cu a jutorul
ma³inii Go ogle Street View. A curateµea acestor meto de este mai mare decât cea care folose³te
IP , a v ând o acurateµe pân  la 1000M.
P en tru sistemele mobile (telefoane mobile ³i tablete), lo caµia este preluat  prin GPS ,
dac  este disp onibil. Glob al Positioning System sau Sistemul glob al de p oziµionar e este un
sistem de radio-na vigaµie ³i folose³te sateliµi ca punct de referinµ  p en tru a calcula p oziµia
utilizatorului, cu o acurateµe de domeniul metrilor. P e baza principiului TO A ( Time of
22

Mic hael F athi Afana T ehnologii utilizate
A rrival ), dup  recepµionarea semnalului de la telefon de c tre minim 4 sateliµi se calculeaz 
longitudinea, latitudinea ³i altitudinea în funcµie de timpul de transmisie al mesa jelor13.
Sistem ul se n ume³te NA VST AR GPS ( Navigation Satel lite Timing and R anging Glob al Po-
sitioning System ) ³i a fost dezv oltat de Ministerul Ap r rii al SUA, ind oferit gratuit p en tru
uz civil.
3.3 CSS3 ³i Design resp onsiv e
A dministrarea conµin utului un ui site complex este o pro v o care ma jor . În grija w ebmaster-
ului in tr  atât conµin utul diferitelor pagini, forma atr g toare a prezen t rii, cât ³i co eziunea
stilurilor tuturor do cumen telor care compun resp ectivul site. În cazul în care la el lucreaz 
o ec hip  de programatori W eb, precizarea clar  ³i resp ectarea cu stricteµe a regulilor de
formatare a do cumen telor este o condiµie esenµial  a reu³itei.
Creatorii lim ba jului HTML au propus o soluµie de separare a conµin utului ³i a structurii
do cumen tului de mo dul lui de formatare. A cµiunile în treprinse în acest sens de c tre W orld
Wide W eb Consortium au condus la apariµia un ui nou standard – foile de stil în cascad 
(CSS)14, care p ermit autorilor paginilor w eb s  anexeze descrierea stilului de prezen tare la
structura do cumen telor (de exemplu, cele scrise în lim ba jul HTML).
O caracteristic  imp ortan t  a standardului CSS este caracterul s u univ ersal, luându-se
în considerare diferite platforme de lucru. A cest standard p ermite, în tre altele, descrierea
formatului p en tru do cumen tele prezen tate în mo d con tin uu (de exemplu, cele a³ate p e ecra-
n ul monitorului), a do cumen telor paginate (de exemplu, impriman tele), precum ³i descrierea
in terfeµei destinate p ersoanelor nev  z toare (formatul p en tru terminalul Braille) ³i formatul
de sunet destinat aparatelor de sin tetizare a lim ba jului, care p ermit citirea do cumen telor.
F oile de stil în cascad , den umite ³i stiluri, constituie pilonii HTML-ului dinamic (Dy-
namic HTML). T ermen ul desemneaz  tehnicile de reacµie dinamic  p en tru programele de
na vigare, în strâns  leg tur  cu ev enimen tele care au lo c p e pagina clien tului ³i mo dicarea
conµin utului ³i/sau a formatului do cumen tului a³at.
Dezv oltarea meto delor de marcare a hip ertextului a condus la faptul c , în prezen t, pa-
ginile W eb p ot concura în tre ele atât prin conµin utul de informaµii ³i u³urinµa na vig rii, cât
³i prin mo dicarea dinamic  a stilului de prezen tare, precum ³i a p osibilit µilor de adaptare
a conµin utului ³i a formatului paginilor la gusturile ³i nev oile utilizatorului – adic  la "p er-
sonalizare". În practic , stilurile p ermit formatarea extins  a unor fragmen te de do cumen t
marcate de tag-uri HTML, iar prin denirea claselor de stiluri aso ciate ec rui tag, se p ot
realiza grupuri de pagini care î³i sc him b  formatarea în mo d concomiten t.
Prin tre a v an ta jele folositii stilurilor CSS putem menµiona:
ˆ p osibilitatea in tro ducerii unei foi de stil în tr-un ³ier indep enden t ³i utilizarea ulte-
rioar  a deniµiilor în mai m ulte do cumen te HTML, ceea ce conduce la o formatare
13http://www.mio.com/technology- gps- work.htm
14http://www.w3.org/Style/CSS/
23

Mic hael F athi Afana T ehnologii utilizate
similar  a paginilor resp ectiv e;
ˆ l rgirea (faµ  de elemen tele indicatoare ale lim ba jului HTML) p osibilit µilor de forma-
tare ³i de p oziµionare a textului, a gracii etc.;
ˆ accelerarea lucrului în ceea ce priv e³te formatarea do cumen telor ³i a site-urilor W eb,
precum ³i construcµia u³oar  ³i mo dicarea foilor de stiluri p en tru do cumen te;
ˆ p osibilitatea utiliz rii com une a foilor de stiluri în cascad  cu lim ba jul Ja v aScript, în
scopul obµinerii de efecte dinamice p e paginile de W eb;
ˆ adaptarea formelor de prezen tare la p osibilit µile diferitelor platforme: ecran ul com-
puterului, palm top-ului, impriman ta, sistem ul de redare p en tru nev  z tori etc.
Ca deza v an ta j, trebuie menµionat faptul c  ele n u sun t in terpretate în totalitate de c tre
toate bro wserele.
CSS3 este ultima v ersiune de CSS; este o extensie a CSS 2.1, care aduce noi funcµiona-
lit µi p en tru selectarea elemen telor, manipularea grac  a elemen telor, animaµii, fon turi ³i
Me dia Query (reguli CSS în funcµie de rezoluµia utilizatorului).15
ˆ Selectarea elemen telor – iniµial, CSS p ermitea selectarea un ui elemen t cu a jutorul
tipului, clasei sau id-ului. CSS3 aduce meto de noi de a selecta elemen te. Prin tre
acestea g sim:
 Pseudo clase – ne p ermit s  select m elemen te în funcµie de p oziµia lor în co d.
* X Y:nth-child(Z) – v a selecta toate elemen tele Y care sun t al Z-lea elemen t al
p rin telui X;
* X:rst-child – v a selecta prim ul elemen t descenden t direct al lui X;
* X:last-child – v a selecta ultim ul elemen t descenden t direct al lui X;
* X:not(Y) – v a selecta elemen tele lui X cu excepµia elemen telor care se p ot
selecta cu Y.
 Pseudo elemen te – ne p ermit s  ad ug m conµin ut dinamic dup  sau înain te de
elemen te, cu a jutorul pseudo elemen telor ::b efor e ³i ::after . Exemplu:
p:after {
content:"Acest con¸ tinut va fi ad ˘augat dupa orice
paragraf"; ,!
display:block;
}
ˆ R GBA – funcµioneaz  la fel ca R GB, a v ând un parametru în plus, Alpha (opacitate).
P arametrul Alpha p oate a v ea v aloarea 0 (complet transparen t), 0.5 (opac), 1 (opac
complet) sau orice v aloare din in terv alul (0,1). Exemplu:
15http://www.w3.org/Style/CSS/Test/
24

Mic hael F athi Afana T ehnologii utilizate
p{
background-color :rgba(0,0,0,0.5);
display:block;
}
ˆ Colµuri rotunde ³i um bre – putem ad uga colµuri rotunde sau um bre f r  s  folo-
sim imagini sau alte elemen te h tml. P en tru colµuri rotunde se folose³te proprietatea
b or der-r adius cu v aloarea în pixeli a rotunjirii (se sp ecic  la fel ca la p adding sau
mar gin ). P en tru um bre se folose³te proprietatea b ox-shadow , la care se sp ecic : de-
calarea orizon tal , decalarea v ertical , estomparea, distanµa de r spândire ³i culoarea.
Exemplu:
div{
border-radius: 10px;
box-shadow: 5px 5px 2px 0 rgba(0,0,0,0.5);
}
Design resp onsiv e
În trecut site-urile erau construite a v ând o l µime x , p en tru ca toµi utilizatorii s  aib  o
exp erienµ  similar . A ceast  meto d  n u era optim , ma joritatea utilizatorilor cu rezoluµii
mari sau cu ecrane de tip wide-scr e en r mâneau cu m ult spaµiu p e lateralele site-ului. P e
disp ozitiv ele mobile, de obicei, informaµiile n u erau a³ate corect, erau greu de vizualizat,
ind necesar zo om sau scr ol l . Nev oia de a crea o in terfaµ  u³or de utilizat a dev enit o
problem  ma jor  p en tru dezv oltatorii w eb.
T ermen ul R esp onsive Design a fost in tro dus de c tre Ethan Marcotte în 201016; acesta
presupune ca site-ul w eb s  se adapteze p en tru disp ozitivul utilizatorului (desktop, laptop,
telefon mobil, tableta etc.), f r  a  nev oie s  se creeze mai m ulte v ersiuni ale site-ului, îm-
bun t µind accesiblitatea, utilitatea ³i calitatea site-ului. F olosind acest concept, utilizatorul
v a g si site-ul simplu, pl cut ³i u³or de utilizat. Principalele calit µi ale un ui site resp onsiv e
sun t:
ˆ “abloane uide – presupun folosirea unit µilor relativ e ³i a pro cen telor, eliminând di-
mensiunile xe. Elemen tele HTML ale site-ului se mo dic  în funcµie de rezoluµia
disp ozitivului utilizatorului;
ˆ Imagini exibile – l µimea ³i în lµimea imaginilor se mo dic  în funcµie de dimensiu-
nile elemen tului HTML p rin te. Redimensionarea se p oate face prin CSS sau prin
in termediul mai m ultor p oze cu dimensiuni diferite.
ˆ Me dia Queries – se p ot atribui propriet µi CSS în funcµie de rezoluµie.
16Prim ul articol despre design resp onsiv e http://alistapart.com/article/responsive- web- design
25

Mic hael F athi Afana T ehnologii utilizate
P en tru a u³ura m unca un ui dezv oltator w eb se folosesc platforme de dezv oltare (framew ork-
uri) CSS ca Bo otstrap17, Zurb18, Sk eleton19etc. A cestea vin cu elemen te predenite în func-
µie de rezoluµia utilizatorului. Aplicaµia Smart taxi foloseste Bo otstrap 3 p en tru partea de
clien t ³i p en tru partea de disp ecerat.
Bo otstrap 3 este o platform  de dezv oltare CSS ³i Ja v aScript gratuit  p en tru a crea
site-uri resp onsiv e, a v ând o v ast  colecµie de clase CSS ³i comp onen te predenite, care p ot
 folosite u³or, aplicând clasa un ui elemen t HTML. Platforma de dezv oltare are ³i o stilizare
predenit  p en tru tab ele, imagini, mesa je de alert , butoane, form ulare, na vigaµie, panouri,
etc. Exemplul de mai jos v a a³a trei coloane în linie, dac  acesta este accesat p e un
disp ozitiv de tip desktop (rezoluµie mare); ³i p en tru accesarea de p e mobil (rezoluµie mic )
v a a³a trei coloane una sub alta.
<divclass="row" >
<divclass="col-xs-12 col-md-4" >Coloana 1 </div>
<divclass="col-xs-12 col-md-4" >Coloana 2 </div>
<divclass="col-xs-12 col-md-4" >Coloana 3 </div>
</div>
3.4 Ja v aScript ³i jQuery
Ja v aScript este un lim ba j de programare ce p ermite s  ad ug m animaµii, in teractivitate ³i
efecte vizuale dinamice la o pagin  w eb.
Ja v aScript face paginile w eb s  e m ult mai in teractiv e, utilizatorul primind un r spuns
instan t la div ersele acµiuni p e care le p oate efectua p e o pagin  w eb. De exemplu, când
comanda utilizatorului a fost preluat , acestuia i se v a a³a instan t indicativul taxiului ³i
timpul în care v a a junge. Ja v aScript p oate pro duce mesa j de eroare imediat dup  trimiterea
un ui form ular în care câmpurile obligatorii n u sun t completate.
Ja v aScript p ermite crearea unor in terfeµe distractiv e, dinamice, in teractiv e. De exemplu,
cu Ja v aScript putem transforma o pagin  static  de imagini în miniatur  în tr-un slidesho w
animat sau se p ot ad uga elemen te utile, cum ar  p op-up , care ofer  informaµii suplimen-
tare sau s  organiz m conµin utul în tab-uri . T oate aceste funcµii ( p op over , mo dal , tab etc.)
sun t disp onibile în platforma de dezv oltare Bo otstrap, neind necesar  scrierea unei funcµii
separate p en tru a le creea.
Firma Netscap e Comm unication Corp oration a luat parte activ   la dinamica W eb-ului;
dup  construirea bro wserului Netsc ap e navigator , distribuit în mo d gratuit p en tru uz p erso-
nal, a construit lim ba jul den umit LiveScript , care trebuia s  p ermit  transformarea do cu-
men telor statice în do cumen te in teractiv e. În acela³i timp, inginerii rmei Sun Microsystems
17http://getbootstrap.com/
18http://zurb.com/
19http://getskeleton.com/
26

Mic hael F athi Afana T ehnologii utilizate
au elab orat lim ba jul Java . În urma înµelegerii din tre cele dou  rme, a ap rut în 1995 v ersiu-
nea 1.0 a lim ba jului Ja v aScript – un lim ba j de programare orien tat p e obiect, indep enden t
de sistem ul op eraµional folsit în calculatorul dat. A ceasta înseamn  c  execuµia ³ierului ar
trebui s  e p osibil  indiferen t de mediul sub care ruleaz  bro wserul, sub Windo ws, Lin ux,
UNIX sau Mac OS, iar rezultatul acµiunii este iden tic în toate cazurile en umerate. Punctul
forte al lim ba jului Ja v aScript este faptul c  este un lim ba j in terpretat, deoarece in terpretorul
se a  în in teriorul bro wserului, acµiunea scripturilor depinzând n umai de tipul ³i v ersiunea
bro wserului.
F olosirea lim ba jului de programare JavaScript este dicil  ³i se comp ort  diferit în funcµie
de bro wser-ul folosit de utilizator. A ceste probleme sun t rezolv ate de jQuery , o platform  de
dezv oltare Ja v aScript gratuit , care simplic  selectarea elemen telor, tra v ersarea arb orelui
DOM în HTML, animaµiile ³i in teracµiunile de tip Ajax. Cele mai imp ortan te a v an ta je
p en tru jQuery sun t:
ˆ F uncµionalit µi de baz  puternice – ne p ermite selectarea un uia sau mai m ultor elemen te
HTML (dup  id, clas , tip, etc.), s  sc him b m asp ectul acestui elemen t (dimensiuni,
culoare de fundal ³i alte propriet µi CSS), s  sc him b m conµin utul elemen tului ³i s 
ad ug m animaµii;
ˆ Extinderea funcµionalit µii prin plugin -uri. P en tru ca jQuery s  aib  dimensiuni mici
³i s  se încarce mai rep ede, acesta vine doar cu funcµii de baz , p ermiµând ad ugarea
de funcµii noi (extensii) în tr-un mo d simplu ³i bine do cumen tat;
ˆ Preluarea datelor far  a reînc rca pagina (refresh) – pro cedeu cunoscut ca AJAX –
Async hronous Ja v aScript and XML p ermite preluarea datelor de la serv er sub
format HTML , XML sau JSON prin tr-o cerere POST sau GET .
3.5 jQuery Mobile
jQuery Mobile este o platform  conceput  p en tru a simplica ³i a scurta timpul necesar
dezv olt rii unei aplicaµii mobile prin in tegrarea tehnologiilor HTML5, CSS3, jQuery ³i jQuery
UI în tr-o singur  platform  u³or de organizat ³i de în treµin ut. Platforma este compatibil  cu
ma joritatea sistemelor mobile (iOS, Android, Blac kb erry , Sym bian, Windo ws Mobile, Nokia
Belle P alm W ebOS, Op era Mini, FireF o x mobile etc.) ³i cu sistemele desktop. Cele mai
imp ortan te caracteristici ale acestei platforme sun t:
ˆ Na vigaµie Ajax ³i animaµie la sc him barea paginii;
ˆ Comp onen te predenite: iconiµe, liste, pagini, ferestre de dialog, form ulare etc.;
ˆ Structura HTML simpl , u³or de dezv oltat;
ˆ Compatibilitate extins  ³i dimensiuni reduse p en tru un timp mai bun de înc rcare.
27

Mic hael F athi Afana T ehnologii utilizate
jQuery Mobile se folose³te de atributul data al elemen telor HTML p en tru a iniµializa
automat div erse comp onen te predenite. Instalarea acestuia p e o pagin  w eb este foarte
simpl . Dup  ce au fost înc rcate în <he ader> ³ierele CSS ³i Ja v aScript jQuery Mobile,
putem crea cu u³urinµ  o aplicaµie demo care p ermite utilizatorului s  na vigheze în tre dou 
pagini.
Co d sursa 3 Exemplu HTML jQuery mobile
<divdata-role="page" id="unu" >
<divdata-role="header" >
<h1>Logo </h1>
</div>
<divdata-role="content" >
<p>Titlu prima pagin ˘a</p>
<p>Con¸ tinut pagin ˘a… <ahref="#doi" >vezi pagina 2 </a></p>
</div>
<divdata-role="footer" >
<h4>Footer </h4>
</div>
</div>
<divdata-role="page" id="doi" >
<divdata-role="header" >
<h1>Logo </h1>
</div>
<divdata-role="content" >
<p>Titlu a doua pagin ˘a</p>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. </p>
<p><ahref="#unu" >Inapoi la prima pagin ˘a</a></p>
</div>
<divdata-role="footer" >
<h4>Footer </h4>
</div>
</div>
3.6 Go ogle Maps ³i LeafLet
Go ogle Maps a fost in tro dus de c tre Go ogle în februarie 200520, rev oluµionând mo dul în
care h rµile de p e paginile w eb funcµioneaz , l sând utilizatorul s  trag  de hart  p en tru a
na viga – o funcµionalitate nou  la acea vreme. Soluµiile p en tru a³area h rµii erau scump e ³i
necesitau serv ere sp eciale. Go ogle Maps a fost iniµial dezv oltat de c tre doi fraµi danezi, Lars
³i Jens Rasm ussen; ace³tia au fondat compania Where 2 T ec hnologies, o companie dedicat 
furniz rii de soluµii de cartograere. Compania a fost ac hiziµionat  de Go ogle în o ctom brie
2004, iar cei doi fraµi au creat ap oi Go ogle Maps.
Înain te de a exista un API public, unii dezv oltatori w eb ³i-au dat seama cum s  utilizeze
Go ogle Maps f r  autorizaµie p en tru a include h rµile p e propriile site-uri w eb. A cest lucru
20http://googleblog.blogspot.ro/2005/02/mapping- your- way.html
28

Mic hael F athi Afana T ehnologii utilizate
a condus Go ogle la concluzia c  un API public este necesar ³i a fost lansat în iunie 2005.
În timpul conferinµei Go ogle I/O din mai 2009 a fost an unµat  v ersiunea 3 a Go ogle
Maps API.21În mai 2010, în timpul conferinµei Go ogle I/O aceasta a fost lansat  ca v ersiune
stabil , ren unµându-se la v ersiunea Go ogle Maps V2.
Dinamicitatea h rµilor de la Go ogle Maps presupune conlucrarea tehnologiilor HTML,
CSS ³i Ja v aScript. Harta este alc tuit  din mai m ulte imagini de 256x256p x, care sun t
înc rcate p e fundal cu a jutorul tehnologiei Ajax ³i ap oi in tro duse în tr-un <div> în pagina
HTML. P e m sur  ce na vig m p e hart , API-ul trimite informaµii prin Ajax cu privire la
noile co ordonate ³i la niv elul de zo om ³i încarc  imagini noi.
API-ul const  în tr-un ³ier Ja v aScript ce conµine clase cu meto de ³i propriet µi ce p ot 
manipulate de c tre dezv oltatorul w eb.
Go ogle Maps folose³te sistem ul de co ordonate Ge o detic System 84 (W GS84) , care este
folosit de asemenea de Glob al Positioning System (GPS) . În România sistem ul ocial de co or-
donate este Ster e o gr ac   1970 (Ster e o 70) ³i se p oate transforma în W GS84 prin in termediul
unei transform ri Helmert cu 7 parametri.22
În aplicaµie sun t folosite urm toarele funcµii de la Go o gle Maps API W eb Servic es :
ˆ Go ogle Maps Geo co der – transform  o adres  p o³tal  (de exemplu, "Strada Calea
Bucure³ti, Blo c M9A") în co ordonate (latitudine 44.318990, longitudine 23.803773).
De asemenea, exist  ³i pro cedeul de geo co dare in v ers , transformând co ordonatele
geograce primite de la utilizator prin GPS în tr-o adres  p o³tal ;
ˆ Go ogle Maps Directions – calculeaz  ruta în tre dou  lo caµii, adrese p o³tale sau
co ordonate, putând sp ecica meto da de deplasare (ma³in , p e jos sau cu bicicleta).
Leaet23este o platform  de dezv oltare Ja v aScript p en tru h rµi in teractiv e, care ofer  o
in teracµiune foarte bun  cu orice disp ozitiv mobil. Fiind conceput s  e simplu, p erforman t ³i
u³or de utilizat, ofer  sup ort p en tru disp ozitiv e desktop ³i mobile, folosind HTML5 ³i CSS3.
A ceasta este folosit  de foarte m ulte site-uri p opulare: Flic kr24, F oursquare25, Pin terest26,
Craiglist27etc.
Dezv oltarea unei aplicaµii cu h rµi (W ebGIS) este simpl , folosind LeafLet, care vine doar
cu funcµiile de baz  (înc rcare de h rµi, mark ere, desenare, ev enimen te etc.), dezv oltatorii
a v ând p osibilitatea s  descarce extensii LeafLet p en tru adaptarea platformei la site-ul w eb.
LeafLet ne p ermite s  înc rc m h rµi de la Go ogle Maps, Op enStreetMap, Here etc. cu
a jutorul funcµiei tileL ayer sau prin tr-o extensie. De asemenea, putem înc rca ³i alte tipuri
21http://googlegeodevelopers.blogspot.ro/2009/05/announcing- google- maps- api- v3.html
22http://www.ancpi.ro/pages/wiki.php?lang=ro&pnu=transformariCoordonate
23http://leafletjs.com/
24http://www.flickr.com
25http://foursquare.com
26http://pinterest.com
27http://craigslist.org
29

Mic hael F athi Afana T ehnologii utilizate
de straturi GIS: GeoJSON28, KML29, CSV30, WKT31, WMS32³i V ector33.
A³area h rµii funcµioneaz  similar cu cea de la Go ogle Maps, înc rcând imaginile în
fundal ³i a³ându-le în elemen te HTML <div> . Diferenµa din tre cele dou  const  în dimen-
siunile co dului surs , LeafLet ind m ult mai compact ³i ofer  un sup ort mai bun p en tru
disp ozitiv ele mobile.
În aplicaµia Smart taxi – partea clien t – harta a³at  p e fundal este creat  cu LeafLet,
a³ând o hart  Go ogle Maps în elemen tul HTML cu id-ul map , la care sun t sp ecicate
co ordonatele de cen tru (Craio v a) ³i limitele ora³ului, denite de un p oligon cu co ordonatele
Sud-V est ³i Nord-Est.
Co d sursa 4 A³area unei h rµi Go o gle Maps în tr-un div cu L e aet
//bounds
varsw_bounds = newL.LatLng(44.275486, 23.703480);
varne_bounds = newL.LatLng(44.372749, 23.898316);
//define map
map = newL.Map(’map’, {
center: newL.LatLng(44.316667,23.8),
maxBounds: L.latLngBounds(sw_bounds,ne_bounds),
zoom: 14,
maxZoom: 18,
minZoom: 14
});
//google layer
vargoogleLayer = newL.Google(’ROADMAP’);
map.addLayer(googleLayer);
3.7 Hyp ertext Prepro cessor (PHP)
PHP (Hyp ertext Prepro cessor) este un lim ba j de programare serv er side dezv oltat de Rasm us
Lerdor ³i ap rut în 1995.34
Simplitatea, ecienµa ³i gratuitatea fac ca PHP s  e cel mai r spândit lim ba j de pro-
gramare serv er-side. P opularitatea lui se datoreaz  ³i faptului c  ruleaz  p e ma joritatea
sistemelor de op erare (Windo ws, Unix, Lin ux, Mac etc.). Conectarea u³oar  la baze de date
relaµionale precum MySQL, Oracle, P ostgresSQL etc. este una din tre cele mai imp ortan te
facilit µi ale PHP-ului.
Programarea orien tat  c tre obiecte (POO) a fost in tro dus  în PHP ³i îm bun t µit  în
v ersiunile ulterioare. Odat  cu PHP5 a fost rescris  o mare parte din funcµionalitatea POO:
28http://leafletjs.com/examples/geojson.html
29http://harrywood.co.uk/maps/examples/leaflet/kml.view.html
30https://github.com/perrygeo/leaflet- simple- csv
31https://github.com/arthur- e/Wicket
32https://github.com/heigeo/leaflet.wms
33http://geojason.info/2012/leaflet- vector- layers/
34https://php.net/manual/ro/history.php.php
30

Mic hael F athi Afana T ehnologii utilizate
de exemplu, s-au in tro dus atribute de sp ecicare a gradului de acces la v ariabile ( private ³i
pr ote cte d ) ³i meto de noi ( tr ay , constructori, destructori, in terfeµe etc.).
Spre deosebire de co durile C, C++ sau Ja v a, C#, PHP n u compileaz  co dul surs , acesta
ind in terpretat la ecare cerere f cut  spre script-ul resp ectiv. În cazul în care administra-
torul site-ului dore³te aceast  compilare, exist  programe care fac acest lucru: compilatoare
PHP ce creeaz  un executabil al script-ului PHP . A v an ta jele acestor compilatoare rezid  în
timpi mai buni de execuµie. Un exemplu de compilator este cel realizat de c tre F aceb o ok.
Numele iniµial a fost HipHop , ap oi a fost înlo cuit cu HHVM (HipHop Virtual Mac hine),
bazat p e o compilare de tip JIT (just-in-time). PHP7 – urmeaz  a  lansat în Noiem brie
2015, cele mai imp ortan te îm bun t µiri aprobate pân  acum v or :
ˆ Îm bun t µirea p erformanµei prin in to ducerea PHPNG35(PHP Next Generation), care
folose³te Zend Engine. De asemenea, v a  redus consum ul de memorie;
ˆ P osibilitatea de a sp ecica tipul de date primite ³i returnate în funcµii.
Co d sursa 5 Exemplu funcµie PHP7 cu tipuri de date sp ecicate
<?php
function adauga(int $a,int $b):int{
return$a+$b;
}
?>
Smart y T emplate Engine
Smart y36este un template engine op en source (sub licenµ  LGPL p en tru uz comercial) p en tru
PHP . Smart y se implemen teaz  din urm toarele motiv e:
ˆ separarea template-ului (design-ului) de co dul PHP;
ˆ o meto d  rapid  de dezv oltare ³i de implemen tare a template-ului;
ˆ template-urile au o sin tax  simpl , n u necesit  cuno³tinµe de PHP p en tru editare;
ˆ îm bun t µirea timpului de înc rcare cu a jutorul cac he-ului;
ˆ este exibil, p ermite ad ugarea de funcµii ³i opµiuni.
Cel mai imp ortan t motiv este separarea template-ului de co dul PHP , deoarece o dat  ce este
amestecat PHP-ul cu co dul HTML, devine greu de editat. Smart y are o sin tax  m ult mai
simpl  ³i u³or de înµeles, de exemplu ca s  a³ m o v ariabil : din co dul PHP sun t atribuite
v alorile v ariabilei, se creeaz  template-ul în care este a³at  v ariabila, se include secµiunea
header, se a³eaz  v ariabila, se include secµiunea fo oter, ap oi se a³eaz  template-ul.
Exemplu: Co d PHP index.php:
35PHPNG (PHP Next Generation) https://wiki.php.net/rfc/phpng
36http://smarty.net
31

Mic hael F athi Afana T ehnologii utilizate
<?php
$foo = "Salut ˘ari lume"
$smarty->assign("foo",$foo);
$smarty->display("index.tpl");
?>
T emplate index.tpl:
{include file="header"}
{$foo}
{include file="footer"}
3.8 OTP ³i mOTP
OTP sau one-time p asswor d este o parol  care este v alabil  p en tru o singur  sesiune de
conectare sau tranzacµie, p e un sistem informatic sau disp ozitiv digital.37Prin aceast 
meto d  putem evita deza v an ta jele unei parole clasice (statice), aceasta putând  ghicit ,
uitat , furat  sau transmis  la alte p ersoane.
Auten ticarea cu doi factori este un sistem ce presupune v ericarea iden tit µii unei p er-
soane sau a unei en tit µi care dore³te s  acceseze un serviciu online (pro ces bancar, e-mail,
reµea de so cializare etc.) prin minim dou  din tre urm toarele meto de de auten ticare:
ˆ Cev a ce ³tie – un utilizator, o parol , un co d pin etc.;
ˆ Cev a ce are – un generator de c hei de auten ticare, o legitimaµie de acces etc.;
ˆ Cev a ce este – caracteristici biometrice – ampren t , imaginea retinei, ampren t  v o cal 
etc.
P arolele OTP fac parte din categoria c eva c e ar e ; acest tip de parol  de obicei este un ³ir
de n umere, caractere sau cuvin te aleatorii, obµin ut de utilizatori prin e-mail, SMS primit p e
telefon ul mobil sau prin in termediul un ui disp ozitiv sp ecial, care genereaz  c hei de auten ti-
care. P arolele sun t generate de un serv er ³i expir  dup  un timp, necesitând regenerarea
acestora.
Soluµia folosit  în aplicaµie p en tru conrmarea comenzii este creat  de T elc o Develop ers
³i se n ume³te mOTP38( mobile one time p asswor d ); acesta este un API gratuit, care aduce o
soluµie ino v atoare p en tru v ericarea iden tit µii un ui clien t prin in termediul telefon ului mobil,
înlo cuind v ericarea bazat  p e SMS cu un ap el pierdut. P arola este n um rul de telefon de
p e care utilizatorul prime³te ap elul, reducând astfel costurile ³i problemele de trimitere a
mesa jelor.39
37http://en.wikipedia.org/wiki/One- time_password
38http://en.wikipedia.org/wiki/One- time_password#Mobile_phones
39http://dial2verify.com/mOTP_Missed_Call_OTP_Authentication/Home.html
32

Capitolul 4
Prezen tarea aplicaµiei Smart taxi
Aplicaµia Smart taxi este o soluµie web complet , creat  p en tru a optimiza pro cesul de
trimitere, gestionare ³i v ericare a comenzilor de taxi. Aplicaµia const  în trei mo dule,
a v ând o arhitectur  clien t-serv er:
1. Mo dulul p en tru clien t;
2. Mo dulul p en tru ³ofer;
3. Mo dulul p en tru disp ecerat.
Fiecare mo dul este o aplicaµie web ³i se p oate accesa de oriunde prin tr-un URL , ne-
ind necesar  desc rcarea unei aplicaµii sau a un ui soft w are sp ecial, care ar putea s  creeze
dicult µi de utilizare clien tului, ³oferului sau disp eceratului.
Figura 4.1: Fluxul de lucru al aplicaµiei
33

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
Aplicaµiile sun t compatibile cu ma joritatea bro wser-urilor cunoscute: Go ogle Chrome,
Mozila Firefo x, In ternet Explorer ³i Safari.
URL -urile sun t rescrise cu Ap ache mo d_r ewrite (.h taccess) ³i acceseaz  un script PHP .
De exemplu, domeniu/app v a accesa scriptul app.php .
Co d sursa 6 Rescrierea URL-urilor cu Apac he mo d_rewrite
RewriteEngine on
#web pages
RewriteRule ^([a-z-]+)\.html$ index.php?page=$1 [L]
#ajax request
RewriteRule ^(ajax)/([a-z-]+)(/(. *))?$ $1.php?module=$2&params=$4
[L,QSA] ,!
#driver app and dispatcher rewrite
RewriteRule ^(app|dispatch)$ http://inkweb.ro/smart-taxi/$1/ [R=301,L]
#fix trailing slash ,!
RewriteRule ^(app|dispatch)/([a-z-]+)?$ $1.php?page=$2 [L,QSA]
#captcha
RewriteRule ^(captcha)\.jpg$ libs/$1/$1.php [L]
#protect tpl files
<Files~ "\.tpl$" >
Order allow,deny
Deny from all
</Files>
În script-ul an terior (co d surs  6) este preluat  pagina curen t  prin GET (dac  exist ); în
caz con trar, se folose³te pagina iniµial  prestabilit . Dup  pro cesarea datelor p en tru pagin 
se v a a³a template-ul Smart y al mo dulului, în care este inclus  pagina curen t . T emplate-ul
se folose³te p en tru a evita rescrierea p rµilor care se rep et  în ecare pagin  (header, fo oter
etc.).
4.1 Mo dulul p en tru clien t
Mo dulul ce este destinat folosirii de c tre clienµi p ermite atât trimitirea unei comenzi direct
c tre ³oferi, cât ³i spre disp ecerat; p e fundal se a  harta de la Go ogle Maps, unde sun t a³ate
taxiurile activ e care caut  comenzi, informaµii legate de tarif, rm  ³i con tact. Mo dulul
conµine ³i o pagin  Obie cte pier dute , unde utilizatorul p oate s  fac  o cerere p en tru c utarea
un ui obiect pierdut în taxi.
P en tru a trimite o comand , utilizatorul trebuie s  parcurg  o serie de pa³i. P asul curen t
³i datele aferen te lui (campuri form ular sau c heie unic  generat ) sun t salv ate în sesiunea
or der care este pastrat  p e server pân  la înc hiderea br owser -ului. Fiecare sc him bare de pas
presupune actualizarea sesiuni.
34

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
Figura 4.2: Mo dulul p en tru clien t p e mai m ulte disp ozitiv e
P a³ii necesari p en tru realizarea unei comenzi sun t:
ˆ pasul 1 ( principal ) – completarea un ui form ular cu n ume, adres  ³i n um r de telefon
mobil. Alegerea str zii se face cu a jutorul extensiei Ja v aScript Sele ct2 , care transform 
din tr-un Select simplu în HTML, în tr-o list  care preia elemen tele acesteia paginate, în
funcµie de scroll-ul din baza de date. Înain te de trimiterea form ularului de comand ,
în cazul în care utilizatorul a completat strada ³i n um rul sau blo cul, prin in termediul
Go o gle Ge o c o ding adresa este transformat  în tr-un set de co ordonate ³i este atribuit 
un ui câmp al form ularului ascuns, p en tru a  folosite în estimarea distanµei din tre
clien t ³i taxi;
Figura 4.3: Mo dulul p en tru clien t – pasul 1
35

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
ˆ pasul 2 ( v ericare ) – se v eric  cu a jutorul tehnologiei mobile One Time Passwor d
(mOTP) dac  cel care a comandat taxiul este proprietarul n um rului din pasul 1.
V ericarea se face prin tr-un ap el de la un n um r de forma +1 (234) *** – *** c tre
n um rul de telefon al utilizatorului. A cesta trebuie s  in tro duc  n um rul de telefon de
la care a primit acest ap el;
Figura 4.4: Mo dulul p en tru clien t – pasul 2
ˆ pasul 3 ( a³teptare ) – utilizatorul a³teapt  pân  când comanda este preluat  de un
taxi din apropiere. P e fundal ruleaz  o funcµie JavaScript cu un r efr esh de 5 secunde,
care v eric  în baza de date, prin in termediul unei cereri Ajax c tre un script PHP ,
dac  starea comenzii este preluat ; dac  este preluat , este redirectionat  la pasul 5.
În cazul în care comanda n u este preluat  în 5 min ute, utilizatorul este redirecµionat
la pasul 4;
Figura 4.5: Mo dulul p en tru clien t – pasul 3
36

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
ˆ pasul 4 ( comanda nepreluat  ) – în cazul în care comanda utilizatorului n u a fost
preluat  în 5 min ute, acesta are dou  opµiuni: s  ³tearg  comanda ³i s  revin  p e
prima pagin  sau s  reîncerce s  caute un taxi în apropiere;
Figura 4.6: Mo dulul p en tru clien t – pasul 4
ˆ pasul 5 ( comanda preluat  ) – comanda a fost preluat  ³i utilizatorului îi sun t a³ate
indicativul taxiului care a preluat comanda ³i min utele pân  la adresa estimat  de
acesta.
Figura 4.7: Mo dulul p en tru clien t – pasul 5
Dup  trecerea utilizatorul de p asul 1 , la reîncarcarea pagini, pasul curen t v a r mâne
acela³i; singura meto d  p en tru a rev enii la p asul 1 sun t butoanele "Ren unµ  la comand "
sau "Înap oi la form ularul de comand ".
37

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
Figura 4.8: Diagrama pa³ilor necesari p en tru realizarea unei comenzi
Harta de p e fundal este preluat  de la Go ogle Maps ³i este a³at  cu L e afL et ; la în-
c rcarea paginii, acesteia îi sun t setate co ordonatele de cen tru, niv elul minim ³i maxim de
zo om ³i limitele h µii ( b ounds ) – un set de co ordonate ([SW], [NE]). Dup  setarea limitelor,
utilizatorului n u i se v a a³a harta în afara acestora.
A³area taxiurilor sub form  de mark er cu iconiµ  se face dinamic; se actualizeaz  o dat 
la 10 secunde. O funcµie JavaScript face o cerere de tip GET la un script PHP care v eric 
în baza de date dac  exist  taxiuri care au fost v  zute cel m ult cu 5 min ute în urm . Odat 
preluate datele taxiurilor (co ordonate ³i indicativ), sub form  de JSON de c tre JavaScript ,
acestea sun t a³ate p e hart  sub form  de mark ere. În cazul în care sun t mai puµin de 25
de taxiuri activ e, se folose³te serviciul Go ogle Directions p en tru a corecta acurateµea GPS –
ului ( snap to r o ad ). A cestuia îi sun t trimise co ordonatele taxiului ³i returneaz  cel mai
apropiat punct al celei mai apropiate str zi, ap oi se actualizeaz  p oziµia mark erului de p e
hart  aso ciat taxiului.
F orm ularul Obie cte pier dute este un mo d prin care utilizatorul p oate trimite o cerere
p en tru c utarea un ui obiect pierdut. Odat  îndeplinite condiµiile de v alidare a form ularului,
se insereaz  în baza de date informaµiile acestuia, ind vizibile instan t la disp ecerat p en tru
in v estigare.
In terfaµa este realizat  cu platforma Bo otstrap ³i este compatibil  ³i optimizat  p en tru
38

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
orice tip de telefon mobil cu touchscr e en . P en tru v ersiunea mobil , harta de p e fundal a
fost eliminat  p en tru o înc rcare mai rapid , p en tru minimizarea resurselor folosite (memo-
rie/pro ces), sc derea tracului de date în tre serv er ³i clien t ³i p en tru dimin uarea consum ului
bateriei. P anoul de informaµii a fost extins p e tot ecran ul, meniul a fost ascuns ³i se activ eaz 
prin ap sarea un ui buton.
4.2 Mo dulul p en tru ³oferi
Mo dulul ce v a  utilizat de c tre ³oferii de taxi este o aplicaµie w eb p en tru mobil, construit 
cu jQuery Mobile , compatibil  cu orice telefon cu GPS ³i touchscr e en . Aplicaµia p oate 
salv at  p e ecran ul principal al telefon ului cu iconiµa ³i ap oi p oate s  ruleze ful l scr e en (la fel
ca la o aplicaµie mobil  nativ  ); la accesarea acesteia se lanseaz  bro wser-ul implicit ³i este
accesat  adresa URL aso ciat . A dresa URL a aplicaµei este domeniul +"app/".
Figura 4.9: Mo dulul p en tru ³oferi p e iPhone
In terfaµa este compus  din trei secµiuni:
1. He ader – p oziµionat x sus (r mâne în partea de sus a ecran ului dup  derularea paginii).
Aici este a³at logo-ul rmei;
2. Content – este a³at conµin utul paginii;
3. F o oter – p oziµionat x jos (r mâne în partea de jos a ecran ului dup  derularea paginii).
Este a³at un text, dac  utilizatorul n u este logat. Dac  este logat, se a³eaz  meniul
(na vbar), unde sun t a³ate butoanele p en tru na vigaµie; buton ul curen t este evidenµiat
cu alt  culoare.
39

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
La in trarea în aplicaµie este a³at un form ular cu dou  câmpuri ³i un buton prin care
utilizatorul se auten tic  cu indicativul ³i parola. P en tru a simplica in tro ducerea datelor,
la indicativ, utilizatorului îi este a³at  o tastatur  doar cu n umere.
În cazul în care utilizatorul este auten ticat prin in termediul meniului (na vbar) a³at în
partea de jos (fo oter), acesta î³i p oate alege din paginile:
ˆ Comenzi – pagina iniµial ; utilizatorul este în trebat dac  p ermite ca aplicaµia s -i
foloseasc  funcµia GPS a telefon ului. Dac  n u este de acord, îi este a³at mesa jul de
eroare "A ctiv aµi serviciile de lo calizare". În caz con trar, co ordonatele utilizatorului
sun t preluate cu funcµia "na vigator.geo cation" ³i este creat un ev enimen t p en tru a mo-
nitoriza lo caµia; dac  aceasta se sc him b , ev enimen tul actualizeaz  v ariabilele p en tru
co ordonatele utilizatorului.
Dac  exist  co ordonate, se a³eaz  o imagine animat  care indic  faptul c  pagina se
încarc  ³i se efectueaz  o cerere, la ecare 10 secunde, spre un script PHP la care sun t
trimise co ordonatele utilizatorului. Script-ul v eric  dac  sun t comenzi în apropierea
co ordonatelor primite prin in termediul form ulei Haversine .1
Cu a jutorul form ulei Haversine se p oate calcula cea mai scurt  distanµ  în tre dou 
puncte p e suprafaµa unei sfere cu a jutorul longitudinii ³i latitudinii lor. A ceasta este
una din tre cele mai imp ortan te form ule folosite în na vigaµie.2În aplicaµie, form ula este
folosit  p en tru a c uta în baza de date cele mai apropiate n comenzi nepreluate (n=30)
faµ  de p oziµia utilizatorului.
Co d sursa 7 In terogare Ha v ersine p en tru MySQL
SET@lat := 44.3198403; #latitudinea utilizatorului
SET@lon := 23.8073998; #longitudinea utilizatorului
SET@earth_radius := 6371; #raza pamântului
SELECT‘id_order‘,(@earth_radius *acos(cos(radians(@lat)) *
cos(radians(start_lat)) *cos(radians(start_lng) – radians(@lng)) +
sin(radians(@lat)) *sin(radians(start_lat)))) ASdistance FROM
‘orders‘ WHERE‘status‘ = ’0’ ORDER BY distance LIMIT0,30;,!
,!
,!
Script-ul returneaz  elemen tele HTML ale unei liste conµinând n um rul comenzii,
adresa ³i distanµa. A ceste elemen te sun t ata³ate unei liste cu jQuery , iar imaginea
de înc rcare se ascunde.
Dac  utilizatorul apas  p e un elemen t al listei, este a³at  o fereastr  (dialog), unde
trebuie s  in tro duc  min utele estimate de el pân  la destinaµie, a v ând ca opµiune s 
preia comanda sau s  ren unµe la ea. Dac  preia comanda, în baza de date se v a
actualiza starea ei ca preluat , id-ul taxiului ³i min utele estimate (in tro duse an terior).
Utilizatorul v a  m utat p e pagina de comand , unde are a³ate adresa, timpul scurs
1http://rosettacode.org/wiki/Haversine_formula
2http://en.wikipedia.org/wiki/Haversine_formula
40

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
³i dou  butoane, un ul de an ulare a comenzii, dac  clien tul n u apare, ³i un buton de
nalizare a comenzii. Prin ap sarea butoanelor, se actualizeaz  în baza de date starea
comenzii ³i data/ora curen t .
Figura 4.10: Mo dulul p en tru ³oferi – preluare comand 
ˆ Istoric comenzi – sun t a³ate comenzile nalizate sau an ulate. La ecare comand 
este a³at n um rul in tern (id), data/ora, adresa ³i starea. Lista este paginat , se
încarc  cinci comenzi, ap oi este a³at un buton p en tru a înc rca mai m ulte (dac 
exist );
Figura 4.11: Mo dulul p en tru ³oferi – istoric comenzi
41

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
ˆ Set ri con t – este a³at un form ular cu a jutorul c ruia utilizatorul p oate s -³i sc him b e
parola. Câmpurile form ularului sun t: parola curen t , parola nou  ³i rep et  parola
nou . Dup  v alidarea form ularului se actualizeaz  în baza de date noua parol  criptat 
MD5 ;
Figura 4.12: Mo dulul p en tru ³oferi – set ri con t
ˆ Deconectare – este a³at  o fereastr  (dialog) de conrmare, împreun  cu dou  bu-
toane. Buton ul "Nu" v a înc hide fereastra. Buton ul "Da" v a redirecµiona spre o pagin 
unde este pro cesat  cererea. În aceast  pagin  se distruge sesiunea de auten ticare ³i
se redirecµioneaz  spre pagina de auten ticare.
Aplicaµia p oate  u³or încorp orat  în tr-un w eb view Android sau iOS p en tru a dev eni o
aplicaµie hibrid .
4.3 Mo dulul p en tru disp ecerat
A cest mo dul p ermite vizualizarea statisticilor lunare, a comenzilor, a taxiurilor ³i a cererilor
p en tru obiecte pierdute, precum ³i ad ugarea ³i editarea taxiurilor.
A ccesarea se face doar dac  utilizatorul este auten ticat. În caz con trar, acesta este
redirecµionat spre pagina de auten ticare, unde trebuie s  completeze un form ular cu n umele
de utilizator, parol  ³i un co d de securitate ( CAPTCHA ). Co dul de securitate presupune
in tro ducerea un ui co d format din cifre a³at în tr-o imagine; acesta este folosit p en tru a
prev eni accesul în aplicaµie prin brute for c e , ce presupune încercarea mai m ultor com binaµii
de utilizator ³i parol , e aleatoriu, e prin folosirea a un ui dicµionar. P aginile aplicaµiei
p en tru disp ecerat sun t:
42

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
ˆ P agin  principal  – aici sun t prezen tate statistici ale aplicaµiei. P e prim ul rând,
sub titlu, sun t patru coloane unde este a³at n um rul de comenzi nepreluate, comenzi
nalizate, taxiuri înregistrate ³i obiecte pierdute. P e al doilea rând, în dreapta, sun t
a³ate Ultimele taxiuri online sub forma unei liste.
De asemenea, este a³at un grac cu n um rul de comenzi ale lunii în curs, grupate
p e stare (nepreluate, preluate, nenalizate ³i nalizate), ecare stare a v ând o culoare
reprezen tativ  . A cest grac este creat cu a jutorul extensiei MorisJS , iar comenzile
sun t preluate din baza de date în format JSON prin tr-o cerere AJAX getJSON .
Co d sursa 8 Crearea un ui grac cu MorisJS si Ajax
$(function () {
//preluare date ajax
$.getJSON(’chart?ajax’, function (results){
//creare grafic
Morris.Area({
element: ’chart’, //tip grafic
data: results, //atribuire date
xkey: ’day’, //axa x
ykeys: [’new’,’taken’, ’noshow’,’finish’], //axa y
labels: [’Nepreluate’, ’Preluate’, ’Nefinalizate’,
’Finalizate’], //stari ,!
lineColors: [’#C3D9FF’, ’#FFFF88’, ’#F4543E’,
’#CDEB8B’], //culori stari ,!
pointSize: 2, //marime punct
hideHover: ’auto’,
resize: true,
fillOpacity: 1
});
});
});
Figura 4.13: Mo dulul p en tru disp ecerat – grac cu n um rul de comenzi ale lunii în curs
43

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
ˆ Comenzi – sun t a³ate comenzile sub form  de tab el cu coloanele: id , nume , telefon ,
str ad  , num r , blo c , sc ar   , star e , indic ativ taxi ³i ad ugat la . Utilizatorul p oate s 
ltreze comenzile dup  una sau mai m ulte st ri. Coloana Star e are culoarea fundalului
în funcµie de v aloarea sa. Dac  ap s m iconiµa "+", sun t a³ate informaµii suplimen-
tare despre comand  (IP-ul de p e care a fost trimis , timpul estimat p en tru preluare,
început la ³i terminat la) ³i o hart  Go ogle Maps cu lo caµia apro ximativ   a comenzii;
ˆ T axiuri – sun t a³ate taxiurile sub form  de tab el cu coloanele: id , indic ativ taxi ,
numer ³ofer ³i dac   este susp endat . Ap sând iconiµa "+", este a³at: un form ular prin
in termediul c ruia taxiul p oate  susp endat în tre o or  ³i o lun . În cazul în care este
deja susp endat, se p oate ³terge susp endarea; un buton Edite az  care redirecµioneaz 
spre un form ular unde se p ot edita câmpurile: indic ativ , nume , telefon sau p ar ola
taxiului; o hart  cu ultima lo caµie a utilizatorului, dac  este disp onibil . De asemenea,
se p ot adaug  ³i taxiuri noi cu acelea³i câmpuri ca la editare;
ˆ Obiecte pierdute – sun t a³ate cererile p en tru obiectele pierdute sub form  de tab el
cu coloanele: id , adr es  , pier dut la , num r de telefon , obie ct pier dut . Ap sând iconiµa
"+", este a³at  A dresa IP a p ersoanei care a trimis cererea ³i un form ular prin care
se p oate actualiza, dac  obiectul a fost g sit.
ˆ Deconectare – se ap eleaz  funcµia r emove_session a clasei p en tru utilizatori, aceasta
³terge sesiunea din auten ticare din baza de date ³i din $_COOKIE .
În paginile unde exist  un tab el paginat sun t a³ate 50 de înregistr ri p er pagin  din baza
de date ³i p ermite utilizatorului s  sc him b e pagina prin in termediul meniului de sub tab el
(dac  exist  mai m ulte pagini). Fiecare rând al tab elului are la început o iconiµ  cu semn ul
"+", care are ata³at un ev enimen t de tip click p en tru vizualizarea informaµiilor detaliate
sau a³area diferitelor acµiuni p en tru aceast  înregistrare, acestea ind preluate prin AJAX
³i înc rcate sub rândul curen t.
Figura 4.14: Mo dulul p en tru disp ecerat – tab el comenzi
Utilizatorul p oate s  na vigheze în tre pagini prin in termediul meniului lateral; are ³i op-
µiunea de a c uta o comand  dup  id-ul din baza de date prin in termediul form ularului aat
deasupra meniului. C utarea redirecµioneaz  utlizatorul spre comanda cu id-ul in tro dus de
acesta.
44

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
Figura 4.15: Mo dulul p en tru disp ecerat p e mai m ulte disp ozitiv e
In terfaµa este creat , de asemeanea, cu platforma Bo otstrap ³i se redimesioneaz  în func-
µie de rezoluµia disp ozitivului de p e care este accesat . P en tru v ersiunea mobil , meniul
lateral este ascuns ³i se p oate vizualiza prin apas rea buton ului A r at  meniu . În tab elele
unde este a³at un n um r mare de coloane apare scroll orizon tal. Informaµiile de p e pagina
principal  sun t a³ate una sub alta.
4.4 Baza de date
P en tru salv area comenzilor, str zilor, taxiurilor, obiectelor pierdute, utilizatorilor ³i a sesiu-
nilor de logare f cute de un utilizator p en tru disp ecerat s-a creat o baz  de date în tr-un
serv er MySQL .
O diagram  ER (En tit y-Relationship mo del) este o reprezen tare abstract  ³i conceptual 
a datelor. În urm toarea diagram  ER sun t prezen tate câmpurile bazei de date ³i tipul de
date sto cate în acel câmp.
45

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
Figura 4.16: Diagram  ER (en titate-relaµie) a bazei de date
4.4.1 Descrierea tab elelor
ˆ or ders – comenzile trimise de utilizatori, câmpuri:
 id_order – c heie primar , autoincremen tare, unic;
 token – c heie unic  generat , a v ând lungimea de 32 de caractere; dup  v alidarea
comenzii, v aloarea acesteia se încarc  în tr-o sesiune p en tru a iden tica comanda;
este folosit  p en tru a îm bun t µi securitatea aplicaµiei. În cazul în care în sesiune
era salv at  c heia primar , aceasta putea s  e predictibil ;
 name – n umele clien tului;
 id_str e et – c heie extern  , face leg tura cu o strad ;
 numb er , building , sub division – câmpuri p en tru adres  (n um r, blo c, scar );
 phone – n um rul de telefon mobil al utilizatorului;
 status – starea comenzii sub forma un ui n um r: are v aloarea zero dac  aceasta
este nou , un u dac  este preluat , doi dac  a expirat, trei dac  este nenalizat 
³i patru dac  este nalizat ;
46

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
 id_taxi – c heie extern  , face leg tura cu un taxi;
 minutes_to – min utele estimate de taximetrist în aplicaµie p en tru a a junge la
clien t;
 start_lat , start_lon – latitudinea ³i longitudinea apro ximativ e rezultate dup  ge-
o co dare, p ot s  e gre³ite;
 start_time , start_lan – data ³i ora la care a fost preluat , resp ectiv nalizat 
comanda;
 ip – adresa IP de p e care a fost trimis  comanda;
 inserte d_at – data ³i ora in tro ducerii comenzii în baza de date.
ˆ taxis – taxiurile in tro duse de disp ecerat, câmpuri:
 id_taxi – c heie primar , autoincremen tare, unic;
 numb er – n um r, indicativul taxiului folosit p en tru auten ticare;
 pin – un n um r folosit drept parol , acesta este criptat cu MD5 ;
 driver – n umele ³oferului;
 phone – n um rul de telefon al ³oferului;
 lat , lng – ultima latitudine ³i longitudine a taxiului;
 last_up date – data ³i ora ultimei acces ri a paginii de comenzi;
 token – c heie unic  generat , a v ând lumgimea de 32 de caractere; dup  auten ti-
care v aloarea acesteia se încarc  în tr-o sesiune p en tru a iden tica dac  utilizatorul
este auten ticat;
 blo ck – data ³i ora pân  când utilizatorul n u are acces la sistem.
ˆ str e et – lista str zilor din ora³ul Craio v a, câmpuri:
 id_street – c heie primar , autoincremen tare, unic;
 name – n umele str zii.
ˆ lost_obje cts – lista obiectelor pierdute, câmpuri:
 id_lost – c heie primar , autoincremen tare, unic;
 addr ess – adresa la care a fost f cut  comanda;
 date – data la care a fost pierdut obiectul;
 phone – n um rul de telefon al solicitan tului;
 obje ct – obiectul pierdut;
 ip – adresa IP de p e care a fost trimis  cererea;
47

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
 found – are v aloarea zero dac  obiectul n u a fost g sit sau v aloarea un u dac  a
fost g sit.
ˆ users – utilizatorii mo dulului p en tru disp ecerat, câmpuri:
 id_user – c heie primar , autoincremen tare, unic;
 user – utilizatorul folosit p en tru auten ticare;
 p asswor d – parola folosit  p en tru auten ticare în format MD5 ;
 admin – are v aloarea "0" dac  este utilizator sau "1" dac  este administrator;
v aloarea prestabilit  este "0";
 action_key – c heia generat  p en tru activ area con tului sau recup erarea parolei.
ˆ users_sessions – conµine sesiunile de auten ticare ale utilizatorilor, câmpuri:
 id_session – c heie primar , autoincremen tare, unic;
 id_user – c heie extern  , face leg tura cu un utilizator;
 token – c heie unic  generat , a v ând lungimea de 40 de caractere, care este sto cat 
în c o okie -ul de auten ticare prin in termediul c reia se coreleaz  con tul cu sesiunea
de auten ticare;
 expir es_at – data ³i ora la care expir  sesiunea de auten ticare în format Unix
Timestamp (n um rul de secunde trecute de la 01.01.1970 00:00:00).
Cheile externe leag  tab elul p en tru comenzi de o strad  ³i de un taxi, iar tab elul de
sesiuni de auten ticare este legat de utilizatori.
4.5 PHP
T oate mo dulele încarc  la începutul co dului PHP un ³ier com un ( he ader ). În acesta se
încarc  ³ierul de conguraµie, clasa p en tru baza de date, Smarty , ³ierul p en tru funcµii ³i
³ierul de lim b  p en tru mesa je.
În ³ierul de conguraµie se denesc mai m ulte constan te: URL-ul site-ului w eb, timpul
maxim de a³teptare pân  când o comand  nepreluat  expir , n umele ³i durata c o okie -ului
de auten ticare p en tru disp ecerat, datele de conectare la baza de date ³i informaµiile p en tru
trimiterea un ui e-mail.
Fi³ierul de lim b  r o.ini este analizat de PHP ³i transformat în tr-un v ector m ultidimen-
sional cu a jutorul funcµiei p arse_ini_le ; în acest ³ier sun t sp ecicate mesa jele returnate
de form ulare. F olosirea acestui ³ier simplic  crearea site-ului w eb în mai m ulte lim bi
( Internationalization sau i18n ).
48

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
Co d sursa 9 Fi³ier he ader.php
<?php
ob_start();
session_start();
//config
include("inc/config.php");
//database
include("libs/mysql.php");
$db = newmysql;
$db->connect();
//template
include("libs/smarty/Smarty.class.php");
$tpl = newSmarty;
//asign url
$tpl->assign("URL",URL);
//functions
include("inc/functions.php");
//lang
$lang = parse_ini_file("lang/ro.ini", true);
$tpl->assign("lang",$lang);
<?php
Mo dulele folosesc div erse clase înc rcate din folderul libs . F uncµionalit µile acestor clase
sun t urm toarele:
a) clasa p en tru baza de date de tip MySQL folosind mysqli (toate mo dulele)
ˆ conectarea la o baz  de date cu parametri din ³ierul de congurare;
ˆ deconectarea de la o baz  de date ap elat  automat la sfâr³itul execuµiei co dului;
ˆ in terogarea unei baze de date p en tru a prelua rezulatele, cât ³i p osibilitatea de a
a³a aceste rezultate cu paginaµie;
ˆ construirea unei in terog ri cu a jutorul un ui v ector de conguraµie;
ˆ inserarea unei noi in tr ri în tr-un tab el;
ˆ actualizarea unei in tr ri în tr-un tab el;
ˆ securizarea unei v ariabile p en tru a  folosit  în in terog ri, inser ri, actualiz ri;
ˆ v ericare dac  exist  un câmp.
b) clasa p en tru comenzi (mo dulul clien t)
ˆ p ermite crearea un ui sistem bazat p e pa³i prin in termediul unor sesiuni;
ˆ v alidarea form ularului de comand ;
ˆ ³tergerea comenzii;
ˆ in tro ducerea comenzii în baza de date;
49

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
ˆ v ericarea n um rului de telefon prin in termediul un ui API mOTP ;3³i extensiei PHP
cURL4.
c) clasa p en tru sistem ul de utilizatori (mo dulul disp ecerat)
ˆ v ericarea dac  un utilizator este logat;
ˆ v ericarea dac  datele p ostate coincid cu utilizatorul ³i parola con tului;
ˆ crearea un ui tok en unic de 40 de caractere;
ˆ crearea sesiunii, adic  ap elarea la funcµia de tok en unic ³i inserarea acestuia îm-
preun  cu id-ul utilizatorului ³i data expir rii acestei sesiuni în baza de date, ap oi
setarea c o okie -ului de auten ticare cu acest tok en. În cazul în care n u se p oate seta,
sesiunea se ³terge din baza de date;
ˆ ³tergerea sesiunii, adic  ³tergerea din baza de date ³i ³tergerea c o okie -urilor:
ˆ reamin tirea parolei prin trimiterea un ui link de resetare p e adresa de e-mail a con-
tului;
ˆ resetarea parolei prin in termediul c heii din link-ul creat de reamin tire a parolei;
ˆ sc him barea parolei con tului.
d) clase preluate de p e In ternet
ˆ SimpleCaptc ha – p en tru generarea co dului de securitate la mo dulul clien t ³i disp e-
cerat ( http://simplecaptcha.sourceforge.net/ );
ˆ Smart y T emplate Engine – este folosit în toate mo dulele p en tru separarea co dului
PHP de HTML ( http://www.smarty.net/ ).
e) funcµii div erse
ˆ trimiterea un ui e-mail;
ˆ v alidarea un ui form ular;
ˆ setarea ³i preluarea un ui mesa j în tr-o sesiune p en tru evitarea p ost rii duble;
ˆ redirecµionarea utilizatorului c tre o alt  pagin ;
ˆ v ericarea dac  o v ariabil  corespunde un ui tip: in teger, url;
ˆ preluarea IP-ului real al utilizatorului.
ˆ crearea unei in terog ri MySQL Haversine .
3API mOTP http://dial2verify.com/mOTP_Missed_Call_OTP_Authentication/
4http://php.net/manual/en/book.curl.php
50

Mic hael F athi Afana Prezen tarea aplicaµiei Smart taxi
4.6 Securitatea aplicaµiei
Aplicaµia este protejat  împ otriv a atacurilor de tipul SQL Inje ct . A cest atac presupune o
in terv enµie neautorizat  asupra in terog rii bazei de date prin mo dicarea unei in terog ri cu
parametri primiµi prin GET , POST , c o okie -uri sau sesiuni. T oµi parametrii sun t trecuµi prin
funcµia mysqli_r e al_esc ap e_string , care elimin  caracterele sp eciale.5
<?php
function escape($str){
//eliminare spa¸ tii de la începutul ¸ si ¸ sfâr¸ situl unui ¸ sir de
caractere ,!
$str = trim($str);
//elimin ˘a caracterul backslash
$str = stripslashes($str);
//transform ˘a entit˘a¸ tile HTML în caractere speciale HTML
$str = htmlentities($str);
//elimin ˘a caracterele speciale
$str = mysqli_real_escape_string($str);
return$str;
}
?>
Dac  un parametru trebuie s  e egal cu c heia primar  din tr-un tab el, acesta este v ericat
dac  este un n um r.
F orm ularele de auten ticare în târzie r spunsul cu dou  secunde prin in termediul funcµiei
PHP sle ep p en tru a cre³te timpul necesar un ui atac de tip brute for c e .
5h ttp://php.net/man ual/en/m ysqli.real-escap e-string.php
51

Capitolul 5
Concluzii
În pro cesul de adaptare ³i dezv oltare, companiile asigur  atât o viziune actualizat  a in tegr –
rii tehnologiei mobile în viaµa de zi cu zi, cât ³i dinamica relaµiei cu b eneciarii. Con tribuµia
noastr  a urmat principiul in tegr rii tehnologiei informatice în viaµa cotidian . Smart taxi
este o aplicaµie complet  ce p ermite utilizatorilor s  plaseze comenzi online, de p e mobil sau
desktop, în tr-un mo d ecien t ³i simplu. Am actualizat ³i am adaptat tehnologiile existen te
la prolul aplicaµiei, în tr-un mo del original, in teractiv, care ofer  un sistem complex ³i com-
plet de onorare a comenzilor de taxi. Urm toarele trei mo dule sun t implicate în punerea în
aplicare a sistem ului:
1. mo dulul p en tru clien t;
2. mo dulul p en tru ³ofer;
3. mo dulul p en tru disp ecerat.
Am prezen tat, în capitolul 1, motiv area alegerii domeniului-µin t  al aplicaµiei: rolul ³i
imp ortanµa taxiului ca alternativ   de transp ort in tegrat, îndeosebi în ora³e. În tendinµa
spre confort ³i rapiditate, pasagerii a³teapt  o funcµionare ecien t  a companiilor de taxi;
din p ersp ectiv a ³oferilor ³i a companiilor, iden ticarea pasagerilor în tâmpin  dicult µi care
p ot duce la consum de energie in util, timpi morµi, uzura auto v ehiculelor. Dat ind niv elul
tot mai in tens ³i haotic al tracului, nev oia unor sisteme fezabile de comand  ³i de onorare
prompt  este real .
În capitolul 2 am trecut în revist  câtev a aplicaµii mobile in teligen te existen te în lumea
globalizat  de ast zi: Easy T axi, T axiZapp Disp atch, Clever T axi, Star T axi, T an Gr abT axi,
T axi Management System .
Capitolul 3 descrie succin t tehnologiile folosite: HTML5, CSS3, JavaScript, Go o gle API,
GPS, PHP etc.
Capitolul 4 a a vut ca obiectiv elab orarea unei aplicaµii originale de onorare a comenzilor
de taxi, p e care am n umit-o Smart taxi . În aplicaµia noastr , pasagerii iden tic  lo caµia cea
mai apropiat  accesând o baz  de date în care g sesc detalii despre taxiurile disp onibile din
52

Mic hael F athi Afana Concluzii
aria resp ectiv  , ca ³i despre timpul de sosire. Comenzile sun t preluate ³i conrmate în timp
real de c tre ³oferii de taxi care folosesc mo dulul Smart taxi . P e o hart  p ot urm ri traseul
taxiului ³i p ot in teracµiona cu ³oferul. Am inclus ³i rubrica "Obiecte pierdute". Strategiile
de utilizare a bazei de date sun t descrise sub forma de "pa³i". Un spaµiu imp ortan t a
fost rezerv at funcµionalit µii claselor folosite în mo dule: a) clasa p en tru baza de date de
tip MySQL folosind m ysqli; b) clasa p en tru comenzi (clien t); c) clasa p en tru sistem ul de
utilizatori (disp ecerat) ³i d) funcµii div erse.
Nev oia unor astfel de aplicaµii, cu m ultitudinea de b enecii p e care le aduc, determin 
asimilarea lor rapid , iar prin îm bun t µiri p erio dice se p streaz  con tactul p ermanen t cu
solicit rile utilizatorilor. Ne propunem implemen tarea aplicaµiei noastre în lumea real ,
p en tru a o v alida ³i p en tru a optimiza ecienµa serviciilor de taximetrie.
53

Bibliograe
[1] Pilgrim, Mark, HTML5: Up and R unning , O'Reilly Media, 2010.
[2] McF arland Da vid Sa wy er, CSS3: The Missing Manual , 3rd Edition, O'Reilly Media,
2012.
[3] Pushpa, C., Arpit S.B., Thriv eni, J., V en ugopal K.R., P atnaik, L.M., T axi-Passenger
R e c ommender System: A n Applic ation , în International Journal of Computer Applic a-
tion , Issue 5, V olume 1 (Jan.- F eb. 2015).
h ttp://www.rspublication.com/ijca/ijca_index.h tm ISSN: 2250-1797 (consultat
15.11.2014).
[4] Cunningham , Susan, Malaysia's A nthony T an L e ads Gr abT axi In R e gional App R ac e.
h ttp://www.forb es.com/sites/susancunningham/2015/02/25/
mala ysias- an thon y- tan- leads- grabtaxi- in- regional- app- race/ (consultat 27.04.2015).
[5] Th ynell, Marie, History and ge o gr aphy of urb an tr ansp ort; some p ersp e ctives on human
b ehaviour and the r ole of infr astructur e.
h ttp://www.vref.se/do wnload/18.46d8812211a06b927e7800020198/1377188293250/
Summary_FUT.p df (consultat 27.01.2015).
[6] W olton, D., Internet et apr è? Une thé orie critique des nouve aux mé dias , P aris, Flam-
marion, 1999.
[7] h ttp://www.iru.org/cms- lesystem- action/mix- publications/
0320HLGT axirecommendations_w eb.p df (consultat 12.05.2015).
[8] h ttp://en.wikip edia.org/wiki/T axicab (consultat 06.03.2015).
[9] h ttp://ro.wikip edia.org/wiki/Smartphone (consultat 12.11.2014).
[10] h ttp://en.wikip edia.org/wiki/Smartphon (consultat 12.11.2014).
[11] h ttp://simple.wikip edia.org/wiki/Smartphone (consultat 12.11.2014).
[12] h ttp://en.wikip edia.org/wiki/Mobile_op erating_system (consultat 12.11.2014).
[13] h ttp://en.wikip edia.org/wiki/T ablet_computer (consultat 19.03.2015).
54

Mic hael F athi Afana BIBLIOGRAFIE
[14] h ttp://ro.wikip edia.org/wiki/Calculator_tabletÄ ƒ (consultat 19.03.2015).
[15] h ttp://en.wikip edia.org/wiki/Easy_T axi (consultat 25.05.2015).
[16] h ttps://pla y .go ogle.com/store/apps/details?id=ro.startaxi.android.clien t&hl=ro (con-
sultat 25.05.2015).
[17] h ttp://www.taxizapp.com/ (consultat 09.02.2015).
[18] h ttps://www.clev ertaxi.com/ro/ (consultat 14.01.2015).
[19] h ttps://itunes.apple.com/ro/app/star- taxi/id564195177?m t=8
(consultat 14.01.2015).
[20] h ttp://www.hotnews.ro/prin t?articleId=14210132 (consultat 12.01.2015).
[21] h ttps://www.telek om.ro/business/taxi- managemen t- system/
(consultat 12.01.2015).
[22] h ttp://www.esri.com/what- is- gis (consultat 22.03.2015)
[23] h ttp://www.w3.org/P eople/Berners- Lee/ (consultat 22.09.2014)
[24] h ttp://ro.wikip edia.org/wiki/HTML5#Markup (consultat 24.09.2014)
[25] h ttp://www.mio.com/tec hnology- gps- w ork.h tm (consultat 03.04.2015)
[26] h ttp://www.w3.org/St yle/CSS/ (consultat 07.10.2014)
[27] h ttp://alistapart.com/article/resp onsiv e- w eb- design (consultat 29.09.2014)
[28] h ttp://go ogleblog.blogsp ot.ro/2005/02/mapping- y our- w a y .h tml
(consultat 19.02.2015)
[29] h ttp://go oglegeo dev elop ers.blogsp ot.ro/2009/05/announcing- go ogle- maps- api- v3.h tml
(consultat 23.01.2015)
[30] h ttps://php.net/man ual/ro/history .php.php (consultat 03.05.2015)
[31] h ttp://en.wikip edia.org/wiki/One- time_passw ord (consultat 18.04.2015)
55

Similar Posts