Proiect de Licență Aplicație de Monitorizare A Locației
Proiect de Licență Aplicație de Monitorizare A Locației
PROIECT DE LICENȚĂ
Coordonator științific
Absolvent
Eparu Andreea-Mihaela
2016
CUPRINS
[Link] 3
1.1 MOTIVAȚIE 3
1.2 OBIECTIVE 3
1.3 DESCRIEREA DOMENIULUI DIN CARE FACE PARTE 4
1.4 PREZENTAREA CAPITOLELOR 4
[Link] 44
2
1. Introducere
1.1 Motivație
E greu să-ți amintești ce călătorie a fost înainte ca Google Maps să apară. Din feririce,
după o luptă grea, hărți din hârtie prost pliate și instrucțiuni de ghidare trase de mână, au rămas
de domeniul trecutului. În schimb, un telefon mobil sau orice dispozitiv performant, poate
confirma locația exactă a utilizatorului, o locație dorită, și traseul dintre cele două.
Ai idee unde se află familia ta? Acum știi! Scopul acestei aplicații vine din nevoia
oamenilor de a-și putea transmite locația în timp real. Mi-am dat seama de această nevoie a lor
observând eventualele anxietăți apărute în permanență, atât în familie, la serviciu, cât și atunci
când vine vorba de o întâlnire cu prietenii sau chiar în așteptarea unei comenzi.
1.2 Obiective
Obiectivul general al aplicației constă în localizarea în timp real a unui dispozitiv.
Poate fi folosită chiar și în familie pentru a identifica prin intermediul tehnologiei GPS
implementată în dispozitiv, un membru mai în vârstă sau un copil.
Aplicația are ca utilitate și urmărirea unor comenzi făcute online, pentru evitarea
problemelor apărute în general, precum plecarea de acasă și trimiterea coletului înapoi. Așa vei
ști exact unde se află și la ce oră trebuie sa fii acasă pentru a-l ridica.
3
1.3 Descrierea domeniului din care face parte
Domeniul din care face parte aplicația include următoarele activități de furnizare
de expertiză în domeniul tehnologiilor informaționale: scrierea, modificarea, testarea și
susținerea programelor software; planificarea și proiectarea sistemelor informatice, care
integrează tehnologii hardware, software și de comunicații; mentenanța sistemelor software și
sistemelor informatice ale clienților și/sau a facilităților de preluare a datelor.
4
2. Analiză tip business
2.1 Analiză de piață
Privind din perspectiva utilizatorilor de telefoane mobile și al tabletelor, în România,
acest segment a depășit procentul de 50%, procent de penetrare din punct de vedere al
dispozitivelor inteligente. Acest fapt este anunțat ca fiind marcarea unui prag important, având
în vedere faptul că numărul de conexiuni al telefoanelor mobile a ajuns de 4 ori mai mare decât
conexiunile la Internet fix, așa cum este prezentat și în pictograma de mai jos. Astfel, România
pare a fi un teren propice pentru dezvoltarea aplicațiior de genul ShareLock. Având în vedere
și caracterul netradițional al acestei aplicații, putem spune că preconizăm un succes în ceea ce
privește popularitatea viitoare a acestei platforme.
5
Figure 2 Studiu demografic care vizează vârsta
Nici la scară mondială cifrele nu stau prost, unde în 2014 au fost vândute un număr de
1,95 miliarde de telefoane. Nu mai prezintă nicio surpriză faptul că trendul acestor vânzări este
unul ascendent, din moment ce în 2016 s-a ajuns la un număr mai mare de telefoane active
smartphone decât populația globului.
6
Având în vedere disponibilitatea acestei aplicații prin intermediul platformelor Web,
aceasta poate fi accesată de pe orice dispozitiv ce este legat la Internet și are integrată tehnologia
GPS. Astfel, nu suntem restricționați de sistemele de operare a celor de la iOS și Android.
Sumele de implementare fiind de asemenea mult mai mici.
Strennghts Weaknesses
•Produs inovativ •Lipsa experienței în
•Succes demonstrat de acest tip de afacere
către competitorii din •Echipa de
piețele internationale management tânără
•Echipa de
implementare
experimentata
Opportunities Threats
•Aplicație compatibilă •Competitorii și sectorul
cu orice sistem de dezvoltare ce se
•Piața internă ce se află află într-o cresșere
în creștere permanentă
•Cheltuieli imprevizibile
7
3. Aplicații similare și funcționalități ale aplicației implementate
3.1 Aplicații similare
Există mai multe aplicații care pot ține pasiv un ochi pe prieteni și pe membrii familiei,
iar asta este o mare ușurare. Nu mai apar griji atunci când cineva uită să sune sau este reținut
într-un anumit loc. O privire rapidă în aplicația de urmărire și aceasta va spune tot ce trebuie să
ști – iar apoi te poți relaxa.
Au fost dezvoltate în acest scop atât aplicații web, cât și aplicații mobile cu sisteme de
operare Android și iOS.
Această aplicație utilizează tehnologia GPS Tracker pentru o localizare în timp real,
rapidă și cu precizie, a persoanelor dragi. Aplicația dispune de o hartă GPS în care apar locațiile
exacte ale acestora sub formă de icon-uri. Este în mare parte dedicată părinților deoarece pot
avea informații cu privire la locația copiilor lor. De asemenea, este utilă și pentru localizarea
persoanelor în vârstă. Cu alte cuvinte are o utilitate în a menține persoanele dragi în condiții de
siguranță.
Aplicația folosește 28 de sateliți pentru a găsi locația exactă a fiecaruia. Este un tracker
de încredere și extrem de precis. Funcționează pe o varietate de dispozitive Android. Poate
trimite o invitație celui dorit în aplicație, iar dacă invitația este acceptată, icon-ul lor va apărea
pe hartă și îi veți putea urmări locația 24/7.
8
Figure 4 Aplicație Urmărire GPS
9
vizată trebuie să răspundă cu “Da”, iar după locația acesteia poate fi vizibilă pe hartă printr-un
icon reprezentativ.
Este o aplicație gratuită utilizată pentru a vedea locația exactă a persoanelor introduse.
Utilă pentru părinți în caz că sunt îngrijorați cu privire la siguranța copiilor, într-un cuplu pentru
a afla locația iubitului/iubitei sau chiar pentru aflarea propriei locații.
Prin această aplicație se poate verifica locația în timp real, indiferent că nu există
conexiune la internet pe dispozitivul persoanei vizate. Acest tracker de încredere folosește
sistem de navigare GPS, Wi-Fi și semnale turn. Indiferent de semnal, această aplicație este
precisă. O persoană poate fi introdusă în aplicație prin acceptarea unei invitații. Aceasta
generează codul de invitație în momentul descărcării ei.
10
- Urmărire one-way: se poate urmări locația persoanelor introduse în aplicație dar aceștia
nu pot vizualiza locația dumneavoastră;
- Se poate utiliza site-ul [Link] împreună cu funcția de urmărire a
telefonului, în cazul în care nu îl mai găsiți;
- Se poate găsi locația chiar dacă nu există conexiune la internet;
- Dispune de o caracteristică premium pentru a obține locația doar prin trimiterea unui
SMS cu textul “locate” , cu condiția ca aplicația să fie instalată pe telefonul respectiv;
- Mod de vizualizare prin satelit;
- Dispune de o interfață ușor de utilizat;
- Poate fi folosită chiar și atunci când bateria este scăzută.
11
Figure 7 Hartă aplicație Urmăriți orice telefon mobil
12
4. Family and Friend Locator (Phone Tracker Productions)
Este de asemenea, o aplicație Android prin care se poate urmări un alt telefon mobil
care are instalată aplicația respectivă. Folosește un GPS Tracker pentru a identifica locația
persoanei dorite. Se pot forma în aplicație chiar și grupuri. Locația poate fi dezactivată ușor, fie
pentru un contact fie pentru toate odată. Se poate vedea în aplicație și ultima utilizare a acesteia
de către persoanele cu care sunteți conectat și de asemenea, ultima locație cu precizie a lor.
Aplicația poate fi folosită atât prin GPS cât și prin alte metode bazate pe non-GPS.
Persoanele cu care se dorește contactul în aplicație sunt ușor de invitat: prin SMS, e-mail etc.
Aplicația poate trimite notificări în momentul în care o persoană a intrat în raza zonei alese de
utilizator și de asemenea trimite automat locația persoanei respective.
Are de asemenea, o funcție de chat prin care se poate discuta atât cu o singură persoană
cât și cu un grup de persoane format, pentru a stabili locurile de întâlnire sau alte lucruri dorite.
13
5. Family Locator & Messaging (FAMILO)
FAMILO reprezintă o aplicație pentru familie, prieteni și alte grupuri mici care permite
păstrarea legăturii cu ușurință. Un avantaj al aplicației îl reprezintă faptul că aceasta
funcționează și în momentul în care bateria este scăzută.
Se pot salva anumite locații în aplicație, iar în momentul în care persoanele dragi cu
care se păstrează contactul vor intra în zonele respective se vor trimite automat notificări pentru
a ști că persoana a ajuns în siguranță. Spre deosebire de alte aplicații, zonele de interes pot fi
salvate pentru regăsirea și utilizarea ulterioară a lor.
Are un buton de panică integrat care permite trimiterea imediată a locației la accesarea
lui în caz de urgență.
14
O altă funcționalitate a aplicației o reprezintă chat-ul prin care se pot trimite atât mesaje
cât și imagini. Toate imaginile se pot salva într-un album foto pentru a păstra momentele fericite
împărtășite cu grupul.
15
Funcționalități ale aplicației descrise cu imagini:
16
3.1.2 Aplicații iOS
1. Find my Friends
Această aplicație este dezvoltată în scopul localizării prietenilor în cazul în care aceștia
nu ajung la timp și te fac mereu să aștepți. Utilizează funcționalitățile de localizare a sistemului
de operare iOS7.
- Pentru a putea vizualiza locația, acea persoană trebuie să permită înainte acest lucru;
- Locația este trimisă de pe telefonul mobil doar atunci când un prieten o cere și i se
permite vizualizarea acesteia – nu este transmisă sau înregistrată în orice moment;
- Locația se poate ascunde în orice moment doar printr-un singur click;
- Ultima locație cunoscută este stocată timp de două ore pe server-ele Apple, iar apoi
ștearsă definitiv;
- Aplicația deconectează utilizatorul dacă acesta este inactiv timp de 15 minute;
- Logarea se face cu contul Apple al utilizatorului;
- Transmiterea locației se face prin e-mail-uri;
- Există posibilitatea de a transmite locații doar temporar, pentru câteva ore, zile sau
săptămâni, prin tab-ul Temporary.
- Se poate trimite prin aplicație o notificare în momentul în care tu sau prietenul tău plecați
spre locul de întâlnire. Acest lucru asigură faptul că la destinație nimeni nu v-a mai
aștepta;
17
2. Life360 Family Locator
Această aplicație gratuită permite membrilor unei familii să își poată urmări locația în timp real.
O caracteristică importantă a aplicației permite membrilor familiei să afle momentul în care
cineva a intrat într-o locație prestabilită, cum ar fi acasă sau la școală. În acel moment se va
trimite o alertă pentru a anunța celălalt utilizator.
iHi este o aplicație Web implementată cu copul de a transmite locația între două
dispozitive. Aplicația permite o distribuire ușoară a locației atât privat, prin e-mail, cât și public,
pe Twitter. Este o aplicație care poate avea succes în cazul în care celelalte aplicații mobile
eșuează.
18
Este o aplicație simplistă dar în același timp dezvoltată să funcționeze în orice condiții.
Poate fi considerată de asemenea un experiment pentru a arăta cât de simplă poate fi o aplicație
web, și în același timp utilă. Este o aplicație practică, utilizată în situațiile care pot apărea zilnic:
întâlniri, conferințe, orice tip de eveniment.
19
3.2 Funcționalități ale aplicației
- Monitorizarea locației;
- E-mail-ul trimis conține un link direct către locație; odată accesat link-ul, se face localizarea
între cele două puncte, cu indicarea celui mai scurt drum, direcțiile, și timpul în care se poate
ajunge până acolo;
- Nu necesită un cont pentru utilizare, acesta fiind un avantaj deoarece nu mai este nevoie de
introducerea datelor personale, un aspect neplăcut pentru multi utilizatori de aplicații;
20
4. Analiza metodelor de rezolvare a problemelor și selectarea soluției tehnice
4.1 Motivarea alegerii tehnologiilor
Motivul pentru care am ales să dezvolt o aplicație web îl reprezintă faptul că în ziua de
azi aplicațiile web sunt extraordinar de complexe iar HTML5 oferă posibilități nelimitate.
Totodată, HTML5 este compatibil cu toate device-urile existente. Nu este necesar să dezvoltăm
separat câte o aplicație pentru Android și una pentru iOS atâta vreme cât ambele sisteme de
operare au browsere performante, browsere compatibile cu HTML5, și prin care putem să
construim tot ceea ce vrem noi.
Aplicațiile web trebuie întotdeauna privite din două perspective: din perspectiva de
server și din perspectiva de browser sau client.
În ceea ce privește partea de front-end a aplicației, este alcătuită din părți de HTML,
CSS3, JavaScritp, în special pentru JavaScript am folosit framework-ul jQuery, și API-urile de
JavaScript: Google Maps API și Google Directions API. Folosind Google Maps API se
localizează broswer-ul user-ului, iar apoi la fiecare 5 secunde această acțiune se repetă. Folosind
un Request AJAX, se transmite locația către Laravel, care la rândul lui salvează în baza de date
locația actualizată.
Atunci când cineva dă click pe link-ul din e-mail, aplicația localizeaza user-ul și citește
ultima locație înregistrată în partea cealaltă, adică la user-ul localizat. Între locația curentă a
user-ului și a celui localizat, Google Directions API reușește să găsească cea mai rapidă rută și
totodată ne ajută să construim folosind JavaScript direcțiile.
21
4.2 Tehnologii folosite
Dezvoltarea PHP a început în anul 1995, când Rasmus Lerdof a scris programe CGI
(Common Gateway Interface) în C, pentru a-și menține pagina sa personală.
PHP la început nu a fost destinat să fie un nou limbaj de programare, după cum spunea
Lerdof, citez: “Nu știu cum să-l opresc, nu a existat niciodată nicio intenție de a scrie un limbaj
de programare […] Nu am absolut nicio idee despre cum se scrie un limbaj de programare, doar
am continuat să adaug următorul pas logic pe drum.” O echipă de dezvoltare a început să se
formeze și, după luni de muncă și de testare beta, s-a lansat oficial PHP/FI pe 2 Noiembrie,
1997.
PHP (Hypertext Preprocessor) este unul dintre cele mai utilizate limbaje de scripting.
Este un limbaj open source, cu sintaxa provenită din Perl, C și Java, proiectat pentru dezvoltarea
web dar, de asemenea, utilizat și ca un limbaj de programare de uz general. Codul PHP poate fi
integrat în HTML, sau poate fi utilizat în combinație cu sisteme de management de conținut
web și framework-uri. Este un instrument puternic utilizat în special pentru dezvoltarea rapidă
a aplicațiilor web, oferind dinamicitate și interactivitate acestora. Este utilizat pe scară largă și
dispune de gratuitate.
22
Codul PHP este de obicei procesat de un interpret implementat ca un modul în server-
ul web sau ca un CGI executabil. Server-ul web combină rezultatele interpretării și execuției
codului PHP, care pot fi orice tip de date, inclusiv imagini, cu pagina web generată. Codul PHP
poate fi, de asemenea, efectuat cu interfață de linie de comandă (CLI).
Limbajul PHP a evoluat fără o specificație formală scrisă sau standard până în anul
2014. În anul 2010 au crescut eforturile în vederea standardizării și a schimbului de cod în
aplicațiile PHP prin proiecte, cum ar fi PHP-FIG.
Fișierele PHP pot conține text, HTML, CSS, JavaScript și cod PHP. Codul PHP este
executat pe server și rezultatul este returnat browser-ului ca și HTML simplu.
Limbajul PHP poate fi utilizat pe orice sistem de operare, el susținând în prezent aproape
toate server-ele web existente (Apache, IIS etc). Limbajul permite afișarea imaginilor, a
fișierelor PDF și chiar filme Flash generate. Se poate afișa de asemenea text XHTML sau fișiere
XML.
23
Scripturile PHP sunt utilizate în trei domenii principale:
Un script PHP poate fi plasat oriunde în document. Scriptul începe cu “ <?php “ și se termină
cu „ ?> “. Exemplu de script PHP care utilizează funcția “echo” pentru a scrie textul “Hello
World!” pe o pagină web:
24
În PHP, cuvintele cheie (de exemplu: if, else, while, echo etc), clasele, funcțiile,
respectiv și cele definite de utilizator, nu sunt case-sensitive, în schimb variabilele sunt.
Matricele pot conține elemente de orice tip de care PHP se poate ocupa, inclusiv resurse,
obiecte și chiar alte tablouri.
PHP definește o gamă largă de funcții în limbajul de bază, și multe sunt, de asemenea,
disponibile în diferite extensii. Aceste funcții sunt bine documentate în documentația online a
PHP. Cu toate acestea, biblioteca încorporată are o mare varietate de convenții de denumire și
neconcordanțe asociate.
Inițial conceput pentru a crea pagini web dinamice, PHP se concentrează acum în
principal pe scripting, și este similar cu alte limbaje care furnizează conținut dinamic de pe un
server web la un client, cum ar fi [Link] Microsoft.
25
Laravel a fost creat de Taylor Otwell ca o încercare de a oferi o alternativă avansată
framework-ului CodeIgniter, care nu a furnizat anumite caracteristici, precum suportul integrat
pentru autentificarea utilizatorului și autorizația acestuia. Prima versiune beta a fost pusă la
dispoziție pe 9 Iunie, 2011, urmată de lansarea Laravel 1 în aceeași lună. Laravel 1 include
suport încorporat pentru autentificare, localizare, modele, vederi, sesiuni, rutare și alte
mecanisme, dar nu are suport pentru controlori, acest lucru împiedicându-l să fie un adevărat
framework MVC. Pe lângă aceasta, au fost lansate mai multe versiuni de Laravel (Laravel 2,
Laravel 3, Laravel 4, Laravel 5, Laravel 5.1), utlima apărând în 2015.
Laravel își propune să facă procesul de dezvoltare unul plăcut pentru dezvoltator, fără a
sacrifica funcționalitatea aplicației. În acest scop, Laravel este creat printr-o combinație a
celorlalte framework-uri, inclusiv cele implementate în alte limbi, cum ar fi: Ruby on Rails,
[Link] MVC și Sinatra.
Laravel este accesibil dar totuși puternic, oferind instrumente puternice necesare pentru
aplicații mari, robuste.
26
- Logica de aplicare – reprezintă o parte integrată a aplicațiilor dezvoltate; Sintaxa
utilizată pentru a defini logica aplicației este similară cu cea folosită de framework-ul
Sinatra;
- Rutarea inversă – definește o relație între link-uri și rute, făcând posibil ca modificările
ulterioare ale rutelor să fie propagate automat în link-urile relevante; În cazul în care
link-urile sunt create prin utilizarea nuemlor rutelor existente, identificatorii
corespunzători de resurse uniforme (URI) sunt automat creați de Laravel;
- Încărcarea automată a clasei – oferă o încărcare automata a claselor PHP fără a fi nevoie
de mentenanță manual a căilor de incluziune; Ajută la includerea componentelor care
sunt necesare, nu a tuturor componentelor de care nu este nevoie;
- Migrațiile – oferă un sistem de control al versiunii pentru schemele de baze de date,
ceea ce face posibil să se asocieze modificări în codul de bază al aplicației și în structura
bazei de date;
- Testarea Unit – este oferită ca o parte integrate a Laravel, care conține teste Unit pentru
detectarea și pentru prevenirea regresiilor în framework;
- Paginare automată – simplifică sarcinile de implementare a paginării, înlocuind
implementarea manuală cu metode integrate în Laravel.
27
Fondat în anul 2009, SendGrid a dezvotat un serviciu de e-mail bazat pe cloud, care
ajută la rezolvarea provocărilor legate de furnizarea de e-mail-uri. La fel ca multe soluții mari,
SendGrid a venit ca o rezolvare a problemei a trei ingineri, ale căror e-mail-uri de aplicare nu
se livrau, așa că au implementat o aplicație pentru livrarea e-mail-urilor. În prezent, SendGrid
este responsabil pentru trimiterea de miliarde de e-mail-uri pentru unele dintre cele mai bune
companii din lume.
E-mail-ul este cel mai eficient mod de a construi și întreține relațiile cu clienții în
prezent. Platforma de încredere Sendgrid, instrumentele și serviciile, prezintă un minus de efort
pentru dezvoltatori, ajută la livrarea cu succes a tuturor e-mail-urilor, indiferent de cazul de
utilizare: confirmări de cumpărare, instrucțiuni de resetare a parolei, o vânzare viitoare sau
pentru a menține o campanie.
28
MySQL a fost creat de o companie suedeză (MySQL AB), fondată de David Axmark,
Allan Larsson și Michael “Monty” Widenius. Prima versiune de MySQL a apărut în anul 1995,
la data de 23 Mai. Inițial a fost creat pentru uz personal bazat pe ISAM, un limbaj de nivel
scăzut, dar era considerat inflexibil și lent. Au creat altă interfațp SQL dar au păstrat același
API. Astfel, mulți dezvoltatori au fost capabili de a utiliza MySQL în locul versiunii precedente.
MySQL este scris în C și C++. Interpretorul SQL este scris în yacc, dar folosește un
analizator lexical home-brewed. MySQL rulează pe mai multe platforme, inclusiv AIX, BSDI,
FreeBSD, HP-UX, i5/OS, IRIX, Linux, Microsoft Windows, NetBSD, OpenSolaris, QNX și
multe altele.
De asemenea, în caz că apar probleme, se poate oferi suport gratuit din manualul oficial.
Este disponibil și în diferite canale IRC și forumuri.
29
Prima descrisere publică a HTML a fost un document intitulat “HTML Tags”, menționat
pentru prima oară pe Internet de către Tim Bernes-Lee la sfârșitul anului 1991.
30
HTML5 este a cincea revizuirea a standardului HTML. Ca și obiective principale sunt
prezentate: îmbunătățirea limbajului având un suport pentru aplicațiile multimedia recente dar
păstrându-l ușor de înțeles de către oameni și device-uri. Este un limbaj folosit la structurarea
și prezentarea conținutului pentru World Wide Web, o tehnologie nucleu pentru Internet.
A fost publicat în Octombrie 2014 de către World Wide Web Consortium (W3C) pentru
a îmbunătăți limbajul cu suport pentru cele mai recente multimedia. HTML5 este destinat să
însumeze atât HTML4, cât și XHTML1 și DOM Level 2 HTML.
Spre deosebire de celelalte, HTML5 cuprinde noi caracteristici sintactice. Toate acestea
ajută la includerea și manipularea conținutului, fără a recurge la API-uri și proprietăți de plugin.
HTML5 cuprinde elemente ca <audio>, <video>, <canvas>, a înlocuit tag-ul <object> prin
integrarea conținutului SVG. Pentru a îmbogăți conținutul semantic al documentelor, noi
elemente de structură pagină au fost introduse, precum <main>, <aside>, <article>, <section>,
<header>, <figure>, <footer>. Noi atribute sunt introduse, unele elemente și atribute au fost
eliminate, iar altele au fost modificate, redefinite sau standardizate, cum ar fi <a>, <cite> și
<menu>.
31
CSS a fost propus pentru prima oară pe 10 Octombrie, 1994, de Hakon Wium Lie.
CSS (Cascading Style Sheets) este un limbaj folosit pentru descrierea prezentării unui
document scris într-un limbaj de markup. Deși este cel mai des folosit pentru a seta stilul vizual
al paginilor și interfețelor scrise în HTML și XHTML, poate fi aplicat și pe documente XML,
cum ar fi SVG și XUL, și este aplicabil și pentru randarea în vorbire sau pe alte suporturi media.
Împreună cu HTML și JavaScript, CSS este o tehnologie folosită de cele mai multe site-
uri pentru a crea tot ce ține de vizual a paginilor, interfețe de utilizator pentru aplicații Web, și
interfețe ale aplicațiilor mobile.
CSS este destinat în primul rând pentru a permite separarea conținutului documentului
de prezentarea acestuia, cum ar fi aspectul, culorile și fonturile. Această separare poate
îmbunătăți accesibilitatea conținutului, oferă mai multă flexibilitate și control în specificarea
caracteristicilor prezentării, permite mai multor pagini HTML să distribuie formatarea prin
specificarea CSS în fișiere .css separate, și reduce complexitatea și repetiția în conținutul
structural.
32
JavaScript a fost inițial dezvoltat pe 10 Mai 1995, de către Brendan Eich. Deși a fost
dezvoltat inițial sub numele de Mocha, limbajul a fost oficial denumit LiveScript atunci când a
fost lansat în versiune beta în Septembrie 1995, dar a fost redenumit JavaScript, atunci când a
fost implementat în browser-ul Netscape, versiunea 2.0 B3.
JavaScript este utilizat pentru a îngloba în paginile HTML script-uri pentru diverse
activități (de exemplu: creare meniu, verificare date etc). Cu ajutorul script-urilor JavaScript se
pot citi/manipula obiectele din arborele din paginile web.
- Comentarii;
- Tipuri de date (nedefinit, null, string, Boolean, array, date calendaristice);
- Variabile;
- Mesaje de eroare;
- Obiectul Math;
- Funcții;
- Operatori;
- Structuri de control;
- Obiecte;
- Metode;
- Excepții.
33
jQuery este o bibliotecă JavaScript, o platformă de dezvoltare creată pentru a
îmbunătăți procesele (de exemplu: parcurgerea arborelui DOM în HTML, cereri de tip AJAX
etc). Biblioteca jQuery este rapidă, mică și are o bogată caracteristică. Este disponibilă în toate
versiunile de browsere existente.
34
Serviciile Web ale Google Maps reprezintă o colecție de interfețe HTTP către serviciile
Google, care furnizează date geografice pentru aplicațiile care cuprind hărți.
Google a lansat în Iunie 2005 Google Maps API pentru a permite dezvoltatorilor să
integreze hărțile Google în site-urile implementate. Este un serviciu gratuit, și în prezent nu
conține anunțuri, dar Google afirmă în termenii lor de utilizare că își rezervă dreptul a afișa
anunțuri în viitor.
Prin utilizarea a Google Maps API, este posibilă încorporarea hărților Google în
aplicații. Deși inițial a fost doar un API JavaScript, API-ul pentru hărți a fost extins pentru a
include un API în aplicațiile Adobe Flash, un serviciu pentru preluarea de imagini statice a
hărților, și servicii Web pentru efectuarea de geocodare, generare de direcții și obținerea de
profile mari. Peste 1.000.000 de site-uri Web utilizează Google Maps API, ceea ce îl face cel
mai des folosit API pentru dezvoltare.
Google Maps API este gratuit pentru uz comercial, cu condiția ca site-ul pe care este
utilizat să fie accesibil în mod public, să nu perceapă taxe pentru acces, și nu poate genera într-
o zi mai mult de 25.000 de accesări a hărți.
Succesul Google Maps API a generat o serie de alternative concurente, precum HERE
Maps API, platforma Bing Maps, Leaflet și altele.
Google Maps Directions API reprezintă un serviciu care calculează direcțiile dintre
două locații. Se pot căuta direcții prin diferite metode, de la transportare, inclusiv pentru
tranzit, conducere, mers pe jos sau chiar bicicletă.
Se poate accesa Google Directions API printr-o interfață HTTP, cu solicitări construite
ca un șir de caractere URL, folosind șiruri de caractere de text sau coordonatele de
latitudine/longitudine pentru a identifica locațiile, împreună cu cheia API.
Google Maps Directions API este disponibil ca parte a Java Client, Python Client și
Go Client, pentru serviciile Google Maps.
35
SSL
Mai precis, SSL este un protocol de securitate. Protocoalele descriu modul în care ar
trebui să fie utilizați algoritmii, în acest caz SSL determină variabilele de criptare atât pentru
link cât și pentru datele trimise.
Cum funcționează? Atunci când un browser încearcă să acceseze un site Web care este
securizat prin SSL, între browser și server trebuie să se stabilească o conexiune SSL printr-un
process numit “ SSL HANDSHAKE “. SSL Handshake este invizibil pentru utilizator și se
întâmplă instantaneu.
În esență, trei chei sunt folosite pentru a configura conexiunea SSL: publică, privată și
pe sesiune. Orice este criptat cu o cheie publică poate fi decriptat doar cu o cheie privata și
invers.
36
1. Browser-ul se conectează la un server Web, securizat cu SSL (https) și va cere ca server-
ul să se identifice.
2. Server-ul trimite o copie a certificatului SSL, inclusiv cheia publică a server-ului.
3. Browser-ul verifică rădăcina certificatului împotriva unei liste de încredere CA și dacă
certificatul nu este expirat, este nerevocat, și că denumirea comună este valabilă pentru
site-ul cu care se conectează. În cazul în care certificatul este în regulă, creează,
criptează și trimite înapoi o cheie de sesiune simetrică, folosind cheia publică a server-
ului.
4. Server-ul decriptează cheia de sesiune simetrică cu ajutorul cheii sale private și trimite
înapoi o confirmare criptată cu cheia de sesiune, pentru a începe sesiunea de criptat.
5. În final toate datele transmise cu cheia de sesiune sunt criptate.
Una dintre cele mai importante componente ale afacerii online este crearea unui mediu de
încredere unde potențialii clienți se simt încrezători în a face achiziții. Browser-ele oferă indicii
vizuale, precum pictograme de blocare sau o bară verde, pentru a ajuta vizitatorii să știe când
conexiunea lor este securizată.
37
5. Considerente legate de dezvoltarea aplicației
În momentul accesări adresei URL către aplicația Web, se va deschide o pagină în care
se pot completa detaliile necesare pentru transmiterea locației prin e-mail. Câmpurile
specificate pentru detalii sunt: Nume (câmp ce trebuie să conțină numele celui care vrea să
transmită informația cu locația) și Email Adress (câmp ce trebuie să conțină adresa de e-mail a
celui ce dorește să transmită locația).
38
În secțiunea Send my location to the following emails este cerută adresa de e-mail a celui
ce se vrea a fi transmisă locația. Trebuie specificat faptul că aceste câmpuri au caracter
obligatoriu pentru ca acest e-mail să fie transmis.
Aplicația este compatibilă cu transmiterea simultană către mai multe persoane, ce doresc
a fi notificate cu locația respectivă. Odată completate aceste câmpuri, nu mai rămâne decât să
fie apăsat butonul Submit, iar e-mail-urile vor fi trimise.
39
În momentul apăsării butonului Submit, se localizează browser-ul la fiecare 5
secunde.
40
După ce se localizează poziția user-ului notificat (cel care primește e-mail-ul), se
afișează traseul de la utilizator până la persoana localizată, atât cu harta în care este evidențiat
traseul, cât și cu direcții stânga-dreapta.
41
Aplicația ShareLock prezintă și o secțiune About, unde sunt prezentate viziunea și
motivația implementării acestui proiect, și metodele de funcționare ale platformei.
42
6. Concluzii, contribuții și direcții ulterioare de dezvoltare
În urma documentației, s-a ajuns la unele concluzii, printre care buna utilizare a acesteia
în diverse domenii dar și pentru uz personal. De asemenea, poate fi folosită și ca semnal S.O.S
în cazuri de urgență, pentru ca salvatorul să poată ajunge în locația exactă.
Acest gen de proiect poate fi sustenabil atât pe plan intern cât și extern, având în vedere
faptul că piața și tehnologiile se află într-o continuă dezvoltare.
Pe baza informațiilor găsite cu privire la aplicațiile similare, mi-am dat seama că pot
implementa o aplicație care prezintă avantaje spre deosebire de restul, și anume faptul că este
o aplicație Web și funcționează din browser, pe orice sistem de operare, astfel poate fi folosit
de pe orice dispozitiv mobile, tabletă, cât și de pe laptop. Un alt avantaj ar putea fi și faptul că
nu este necesar un cont pentru logare în aplicație, astfel utilizatorii sunt scutiți de introducerea
datelor personale.
43
7. Bibliografie
44