Str. Științei Nr. 2, cod poștal 800146, Galați, România, tel/fax: +0236 4 70 905, e-mail: aciee@ugal.ro, web: www.aciee.ugal.ro PROIECT DE DIPLOMĂ… [611152]
UNIVERSITATEA „DUNĂREA DE JOS” DIN GALAȚI
FACULTATEA DE AUTOMATICĂ, CALCULATOARE, INGINERIE
ELECTRICĂ ȘI ELECTRONICĂ
Str. Științei Nr. 2, cod poștal 800146, Galați, România, tel/fax: +0236 4 70 905, e-mail: [anonimizat], web: www.aciee.ugal.ro
PROIECT DE DIPLOMĂ
Îndrumător proiect/Coordonator științific,
Ș.l. Dr. mat. Veronica JÂȘCANU
Absolvent: [anonimizat]
2019
1 SPECIALIZAREA: Calculatoare și Tehnologia Informației
PLATFORMA DE E-LEARNING
Coordonator științific,
Ș.l. Dr. mat. Veronica JÂȘCANU
Absolvent: [anonimizat]
2019
2
REZUMAT
În zilele noastre, internetul a devenit cel mai eficient mod de a căuta și accesa
nenumărate informații, de a comunica în timp real cu alte persoane și de fi la curent cu
toate noutățile. Cu alte cuvinte, internetul a devenit aproape indispensabil pentru o
mare parte dintre noi.
Acesta este produsul final a muncii a sute de specialiști din toate domeniile
(ingineri, programatori, cercetători, etc).
Deschiderea către învățământul asistat pe c alculator a început să ia amploare în
urma cu două decenii deoarece deschideau noi orizonturi în pedagogie.
Folosirea unor tehnici interactive de învățat poate avea ca efect pe termen
îndelungat îmbunătațirea și dezvoltarea unor abilități și integrarea in dividului în
socitatea actuală.
În vederea susținerii licenț ei am elaborat o lucrare cu titlul “ Platforma de E –
Learning, webTuts” .
În această lucrare am intenționat să aprofundez cercetarea asupra aspectelor
teoretice despre internet în general ș i despre E -Learning în spec ial, aspecte care au fost
puse în aplicare î n cadrul platormei webTuts.
Am ales să abordez această temă deoarece consider că sistemul de învățămâ nt
din ziua de azi evoluează în concordanț a cu dezvoltarea rapidă a tehnologiei.
Un alt argument în alegerea temei, complementar celui menț ionat, a fost
dorinț a de a crea o platformă care să ușureze interacț iunea celui care dorește să învețe
cu aspectele actuale învătămâ ntului modern cu accent pe implementarea unui for um ce
permite comunicarea facilă î ntre utilizatori.
Cunoscând modul de funcționare a înavătămâ ntului actual, am ales să
aprofundez acest domeniu.
Lucrarea de licență are o succesiune logică a capitolelo r, un mod de abordare
original ș i complex, fiind îmbin ată teoria cu aspectele practice și este structurată î n
3 capitole.
În primul capitol am insistat asupra aspectelor teoretice despre E -Learning
prezentâ nd diverse forme de educație împreună cu avantajele ș i dezavantajele acestora,
precu m și asupra aspectelor educaționale în Româ nia.
În al doilea capitol am prezentat uneltele ș i limbajel e de programare folosite
în dezvoltarea aplicaț iei.
În capitolul trei am prezentat aplicația webTuts și modul ei de funcț ionare.
3 CUPRINS
REZUMAT…… ………………………………………………………………………………………. …… 2
CAPITOLUL 1 Informații generale despre E -learning ………………………………………… .. 5
1.1 Introducere …………………………………………………………………………………………………………… …. 5
1.2 Definiții ……………………………………………………………………………………………….. …………………. … 5
1.3 E -learning -ul, o formă de învățământ ………………………………………………………………. .. 6
1.4 Instrumente de E -learning ………………………………………………………………… ………………… . 7
1.5 Avantajele și dezavantajele E -learning -ului…………………………………………………….. .. 7
1.6 Organizarea unei platforme de E -learning ……………………………………………………….. .. 8
1.7 Softurile educa ționale………………………………………………………………………………………….. …. 9
1.8 E -learning în România…………………………………………………………………………… ……………… .. 10
1.8.1 Scurt istoric și prtezentare generală…………………………………………………………. .. 10
1.8.2 Platforme educaționale românești……………………………………………………………… . 10
1.8.3 Programe educaționale…………………………………………………………………………………. .. 10
1.9 Aplicatii similare ………………………………………………………………………………………………….. ….. 11
1.9.1 Udemy …………………………………………………………………………………………………………….. …. 11
1.9.2 Team Treehouse ……………………………………………………………………….. …………………… .. 12
1.10 Opinii finale despre E -learning…………………………………………………………………………. . 13
CAPITOLUL 2 Internetul si limbaje folosite in dezvoltarea aplicatiei …………. 14
2.1 Internetul ………………………………………………………………………………………… ………………………… 14
2.2 Web Hosting -ul și publicarea unui site ……………………………………… ……………………….. 15
2.3 Securitatea web…………………………………………………………………………………… ………………….. . 16
2.4 Responsive design ……………………………………………………………………………….. ………………….. 17
2.5 Unelte folosite în dezvoltarea aplica ției………………………………………………………. …….. 19
2.6 Limbaje de programare folosite …………………………………………………. ……………. …………. . 22
CAPITOLUL 3 Aplicatia Webtuts …………………………………………………………………………… …… 26
3.1 Pagina de landing………………………………………………………………………………. …………………… .. 26
3.2 Inregistrarea …………………………………………………………………………………… ………………………. … 27
3.3 Resetarea parolei …………………………………………………………………………………… ……………….. . 28
3.4 Notificări …………………………………………………………………………………………. ……………… ………… . 32
3.5 Comentarii ……………………………………………………………………………………………….. ……………… .. 34
3.6 Funcția de search ……………………………………………………………. …………………….. ………………. .. 36
3.7 Sistemul user profile …………………………………………………………………………………… ………… .. 37
3.8 Testarea aplicației ……………………………………. …………………………………………….. …………….. .. 40
3.9 Creșterea eficienței …………………………………………………………………………………… ………. ……. 40
CONCLUZII ………………………… ………………………………………………………………….. ………………………. . 42
BIBLIOGRAFIE ……………………………………………………………………………………………
LISTA FIGURILOR
Figura 1 Portabilitatea E -Learning…………………………………………………………… . 5
Figura 2 Platforma Udemy……………………………………………………………………….. . 12
Figura 3 Platforma Team Treehouse……………………………………………………….. . 13
Figura 4 Modul de transmitere a datelor pe internet………………………………… 15
Figura 5 Protocolul SSL……………………………………………………………………………. 17
Figura 6 Responsive design media query………………………………………………… … 18
Figura 7 Interfața Microsoft Visual Studio………………………………………………… 19
Figura 8 MongoDB Compass Community………………………………………………….. 20
Figura 9 Postman……………………………………………………………………………………… 21
4 Figura 10 Gitba sh…………… ……………………………………………………………….. 21
Figura 1 1 Funcționarea tag -urilor în HTML……………………………………… . 22
Figura 1 2 Fișierul Package.json………………………………………………………… 25
Figura 1 3 Cod CSS al paginii de landing…………………………………………… .. 26
Figura 1 4 Formular de înregist rare………………………………………………… .. 27
Figura 1 5 Schema User din baza de date…………………………………………… 28
Figura 1 6 Pagina de resetare a parolei……………………………………………… 29
Figura 1 7 Mesaj de confirmare………………………………………………………… . 29
Figura 1 8 E-mail cu link -ul de resetare a parolei……………………………… .. 30
Figura 1 9 Mesaj de eroare………………………………………………………………… 30
Figura 20 E-mail de confirmare a schimbării parolei………………………… . 30
Figura 21 Rută pentru forgot password…………………………………………… . 31
Figura 22 Funcția de trimitere a e -mail -ului……… ……………………………… . 32
Figura 23 Notificare………………………………………………………………………… .. 32
Figura 24 Schema notificării în baza de date……………………………………… 33
Figura 25 Fișierul ejs pentru notificări……………………………………………… . 33
Figura 26 Lista cu notificările primate………………………………………… …….. 34
Figura 27 Butoane meniu cod…………………………………………………………… 34
Figura 28 Crearea de comentarii……………………………………………………… . 35
Figura 29 Ruta pentru editarea comentariilor…………………………………… 35
Figura 30 Verificarea user -ului ce deține un comentariu…………………… 36
Figura 31 Bara de search………………………………………………………………… . 36
Figura 32 Câmpurile folosite de user profile……………………………………… 37
Figura 33 Profilul utilizatorului………………………………………………………… .. 37
Figura 34 Ruta pentru profil și funcția de follow………………………………… 38
Figura 35 Pagina ejs pentru profil……………………………………………………… . 39
Figura 36 Confirmare a funcționării butonului de follow…………………… .. 39
Figura 37 HTML Validator………………………………………………………………… . 40
Figura 3 8 TinyPGN…………………………………………………………………………… .. 41
5 CAPITOLUL 1 INFORMAȚII GENERALE DESPRE E -LERANING
1.1 Introducere
E-learning sau învățământul electronic reprezintă o modalitate actuală de
dezvoltare a educației, în concordanță cu descoperirile tehnologice, devenind un
concept extrem de popular care câștigă treptat teren, pe măsură ce practica și
cercetarea în acest domeniu furninează experiențe de succes.
S-a demonstrat faptul că performanța în învățare este determinată în principal
de strategiile de instruire, nu de mediul utilizat pentru imple mentarea programului de
formare. E -learning reprezintă un tip de educație la distanță, o modalitate de predare –
învățare organizată de o instituție ce furnizează materiale într -o ordine prestabilită,
logică pentru a putea fi asimilate de studenți în manieră proprie. Toate aceste acțiuni se
realizează prin intermediul Internetului, acesta fiind atât mediul de distribuție a
materialelor necesare platformei de E -learning, cât și canalul de comunicare între
persoanele implicate.
E-learning -ul este o metodă ce pe rmite accesul la informațiile cele mai noi,
dobândirea de noi cunoștințe, de modalități noi și eficiente de învățare și colaborare.
Fig. 1 Portabilitate E -Learning
1.2 Definiții
Prin E -learning se înțelege totalitatea situațiilor în care se utilizează mijloacele
tehnologiei informației și comunicațiilor în scop educațional. Pe măsură ce tehnologia a
evoluat, termenul a fost extins de la înțelesul său primar, de învățare prin mijlo ace
electronice, acoperind în prezent domeniul de intersecție al acțiunilor educative cu
mijloacele informatice moderne. Astfel, litera E din termenul E -learning denotă întocmai
mediul prin care se realizează instruirea, conținuturile fiind digitalizate pe ntru a putea
fi păstrate și distribuite în format electronic, iar interacțiunile dintre instructor și cei pe
care îi instruiește se realizează prin intermediul tehnologiilor moderne.
Înțelesurile conceptului de E -learning se întind pe o arie semantică ce
interferează și se suprapune pe o multitudine de termeni ce surprind varietatea
experiențelor didactice ce pot beneficia de suport tehnologic: instruire asistată de
calculator, instruire prin multimedia, online learning, etc.
6 Învățământul electronic utilizeaza tehnologiile Internetului pentru a furniza un
vast șir de soluții care îmbunătățesc performanța și cunoștințele celor care apelează la
acest tip de platformă. Astfel, studenții sunt stimulați să șți construiască propria
cunoaștere prin utilizare a instrumentelor tehnologice din ce în ce mai performante.
Procesul de învățământ bazat pe resurse utilizează atât modele clasice cum ar fi
suporturile cunoscute (modele fizice), cât și modele virtuale aparținând tehnologiei
multimedia.
E-learning -ul repr ezintă o componentă a modelului bazat pe tehnologie. Acesta
nu este un sistem educațional distinct, așa cum este învățământul la distanță, ci un
mijloc prin intermediul căruia aceste metode de învățare deschisă, asistată pot fi
implementate.
Combinând efi cient abordările față în fată cu educația la distanță, platforma de E –
learning schimbă fundamental rolul educatorului, în mod particular al celui implicat în
situațiile de instruire on -line, fiind rezultatul evoluției, nu o revoluție în plan
educațional aș a cum este considerată de mulți. E -lerning evoluează, de fapt, prin
implementarea și valorificarea inovațiilor pedagogice, dar și prin înțelegerea dinamicii
proceselor de predare și învățare, constatându -se că cei care se implică în activități de
tip E -learning sunt profesori deschiși schimbării, proces care presupune o serie de
riscuri și de dificultăți.
1.3 E-Learning -ul, o formă de învățământ
E-Learning -ul se aseamănă cu învățământul la distanță întrucât atât studenții, cât
și instructorul se pot afla în locații diferite, iar interacțiunea dintre aceștia, de cele mai
multe ori, nu trebuie să se realizeze în același timp. O diferență pregnantă între e –
learning și învățământul la distanță este aceea că o platformă de e -lerning este puternic
interacti vă, interacțiunile realizându -se între mai mulți participanți, între participanți și
materiale sau între participanți și instructor.
Participarea la cursurile online constituie o adevărată experiență prin care
participanților li se oferă șansa de a colabor a cu unii dintre cei mai profesioniști și bine
pregătiți instructori care pun la dispoziția cursanților materiale interactive cu ajutorul
cărora aceștia pot asimila cu ușurință informațiile. Drept urmare, s -a constatat că 75%
dintre marile firme europene u tilizează eLearning în instruirea și pregătirea angajaților,
acestea asigurându -le accesul la informații, training, schimburi de experiență.
Metodele de implementare a platformelor de eLearning se pot clasifica în:
eLearning pe bază de CD: cursurile neces are se află pe CD, iar studenții le vor
instala pe calculatorul propriu pentru a le accesa și pot începe ulterior
pregătirea
eLearning pe bază de rețea: cursurile pot fi accesate prin intermediul rețelei de
Internet, acestea aflându -se postate pe o pagină web sau într -o aplicație
În cele două cazuri, cursurile se află în format electronic, diferența fiind doar
modul de observare al progresului studiului. În primul caz, participantul este cel care își
apreciază evoluția, pe când în cel de -al doilea caz speci alistul care coordonează
cursurile poate accesa informațiile în legătură cu modul în care cursantul parcurge
materialele, dacă acesta are sau nu întrebări și dacă reușește să asimileze materia de pe
server -ul care furnizează serviciile de curs.
Platforma d e eLearning înglobează trei elemente componente majore:
1. Infrastructura: cuprinde toate elementele de software și hardware care permit
accesul la infomațiile pe care cursantul dorește sa și le însușească
7 2. Conținutul: reprezintă materialele sub formă electronică (text, audio, video)
care acoperă tematica cursului
3. Serviciile: întocmirea planului de învățământ, colaborarea cu profesorii,
evidențierea și testarea cunoștințelor dobândite, managementul capacităț ii
cursanților de a asimila informațiile puse la dispoziție
Principalii participanți în procesul de dezvoltare a unei platforme de E -learning
sunt administratorul de sistem specializat în elaborarea aplicațiilor, care are un rol
esențial în dezvoltarea și intreținerea întregii platforme, instructorii, care elaborează
conținutul materialelor ce urmează a fi livrat și, nu în ultimul rând, cursanții. Aceștia,
prin acțiunea lor colaborativă, asigură evoluția și succesul sistemului eLearning.
1.4 Instrumente de E-learning
Instrumentele de E -learning sunt folosite în scopul stimulării studenților în a
explora teme și domenii de interes prin implicare proprie și prin conștientizarea
necesităților personale de cunoaștere. E -learning -ul utilizează diferite mijloace cum ar fi
forumurile, e -mail -ul, conferința video, chat -ul, fișiere multimedia. Acestea au rolul de a
susține activități precum comunicarea cu alți cursanți sau cu profesorii. Deasemenea se
apelează frecvent la numeroase elemente de text, imagini, fișiere audio și video, animații
pentru a face conținitul mult mai accesibil și pentru a diversifica metodele de predare.
1.5 Avantajele și dezavantajele E -learning -ului
Psihologul William Glasser susține faptul că oamenii sunt capabili sa rețină: 10%
din ce c itesc, 20% din ce aud, 30% din ce văd, 50% din de văd și aud, 70% din ce discută
cu ceilalți, 80% din ce experimentează și 95% din ce îi învață pe ceilalți. Conform acestui
concept, se pot evidenția cu ușurință avantajele E -learningu -ului. Marile avantaje
oferite de tehnologia E -learning sunt reprezentate de: diversitatea strategiilor didactice,
individualizarea lecțiilor prin adaptarea la nevoile cursanților, flexibilitatea ofertei
educaționale, cursurile pot fi oprite, recitite sau derulate, accesibilă o ricând și oriunde.
Principalul avantaj și cel care diferențiază învățarea prin intermediul
platformelor de E -leraning de metodele tradiționale de învățare este acela că oferă
mobilitate și flexibilitate maximă prin posibilitatea accesării cursurilor și t estelor din
orice loc cu ajutorul Internetului, dar și faptul că oferă cursanților șansa de a -și organiza
modul de învățare (când învață, cum și unde). Totuși, ea nu exclude metodele de
educație clasică în care se folosesc materiale reale ca sursă de infor mare, ci doar îi
adaugă resurse virtuale. De asemenea, prin folosirea unui sistem de E -learning se
elimină costurile și inconvenientele produse de necesitatea ca profesorii și cursanții să
se afle în același loc.
Concis, avantajele E -learning -ului sunt:
− Concentrarea pe participant
− Acces în timp real la materiale, de oriunde
− Nu necesită deplasare sau întreruperea unei activități
− Participanții pot colabora atât între ei, cât și cu profesorii
− Folosirea unor materiale interactive care facilitează și ușurează procesul de
învățare
− Prezintă servicii de monitorizare a progresului și de testare
Deși E -learning -ul reprezintă un sistem extrem de eficient și avantajos, acesta
poate avea și unele dezajantaje. Pentru pregătirea unui curs online sunt necesare
8 resurse ma i costisitoare decât în cazul cursurilor tradiționale, din echipa de dezvoltare a
unei astfel de platforme făcând parte, pe lângă profesor, și personalul specializat în
design web și programare.
Programele de E -learning dau randament atunci când dotarea cu calculatoare
este corespunzătoare și există o conexiune rapidă la Internet. În caz contrar, poate
deveni dificilă utilizarea platformei și accesarea cursurilor, devenind un impediment în
procesul de învățare al cursanților. De asemenea, luând în considera re faptul că oamenii
care folosesc platformele de E -learning pot face parte din toate categoriile de vârstă,
inclusiv persoane neexperimentate, pot apărea dificultăți în utilizarea tehnologiei.
Există unele persoane care susțin că un mare dezavantaj al pla tformelor de tip E –
learning este faptul că promovează așa -zisa ,,dezumanizare’’, utilizarea tehnologiei fiind
o modaliatate de limitare a comunicării interpersonale și a socializării, toate
inetracțiunile realizându -se exclusiv prin intermediul calculator ului. Contactul direct cu
alte persoane reprezintă o necesitate a tuturor oamenilor, iar lipsa interacțiunii directe
cu colegi sau reprezentanți ai instituției de formare duce la restrângerea cercurilor
sociale.
În mod concret, se pot enumera următoarele d ezavantaje ale E -learning -ului:
− Costuri de întreținere ridicate
− Timpul îndelungat necesar adaptării unor cursanți la tehnologia platformei
− Timpul necesar pregătirii tutorilor pentru a cunoaște modul de funcționare
al platformei
− Lipsa contactului direct cu alți studenți și profesori
− Inconsecvența studenților în a parcurge materialele puse la dispoziție
Cu toate acestea, limitările prezentate anterior pot fi depășite cu ușurință prin
proiectarea programului și a softului educațional cu atenție, prin implement area unei
baze teoretice pedagogice și psihologice care să sporească atenția participanților. Se
poate observa că numărul avantajelor îl depășește pe cel al dezavantajelor,
concluzionând că utilizarea platformelor de E -learning, deși nu este potrivită pen tru
toată lumea, poate oferi mari oportunități celor care își doresc cu adevărat o formare
continuă pentru a obține performanțe în ceea ce privește dezvoltarea unor competențe.
1.6 Organizarea unei platforme de E -learning
Un proiect E -learning necesită planificarea unui proiect bine pus la punct,
reprezentând mai mult decât un tip de învățământ la distanță. Pentru instituțiile care
oferă aceste cursuri de formare este o soluție de business.
Implementarea unui sistem funcționa l de E -learning se bazează pe următorii indicatori:
Scala – reprezintă numărul de participanți implicați în activitatea de învățare pe
o durată determinată
Simetria – gradul în care se poate focaliza atenția pe fiecare participant
Interactivitatea – durat a minima de timp în care se poate obține un răspuns la o
interacțiune
Instrumentele de lucru puse la dispoziția participanților pentru învățare și
comunicare
Calitatea tehnică a materialului primit de cursant
Costurile – cheltuielile unui singur cursant
Timpul – nivelul de control al timpului necesar unui participant pentru a
parcurge întreg materialul
9 Flexibilitatea – ușurința cu care se pot ameliora anumite problem apărute pe
parcursul implemetării programului
Pentru a eficientiza cât mai mult o platfor mă E -learning se recomandă
combinarea tehnicilor de instruire tradițională cu cele caracteristice învățământului
electronic pentru a asigura oferirea unor context variate și, implicit, un beneficiu
substantial al training -ului pe termen lung.
1.7 Softuril e educa ționale
Având în vedere faptul că domeniul educațional reprezintă o arie foarte largă și
variată, softurile concepute în acest scop pot fi și ele diferite, în funcție de serviciile care
se doresc a fi oferite de către cei ce implementează un astfel de sistem de E -learning
(instruire, exersare simulare/reprezentarea digitală a unor fenomene reale, testare,
prezentare interactivă).
Cel mai cunoscut tip de software educațional este acela proiectat în scopul
instruirii, însă noile tehnologii au permis o multitudine de abordări, fapt ce se datorează
combinării activităților specifice educației (predare, învățare, instruire, evaluare) cu
tehnologia modernă. Acest soft vine în ajutorul cadrelor didactice prin preluarea
anumitor sarcini legate de controlul și de planificar ea programului de instruire cum ar
fi: prezentarea structurii cursului și a progresului făcut de studenți pe parcursul
parcurgerii materialelor, generarea unui set de statistici care arată performanțele
cursanților și oferirea unui feedback atât studentulu i, cât și profesorului. El este
proiectat pentru a fi folosit în mod direct în procesul de predare -învățare.
Softurile pentru exersare (numite și Drill and Practice) reprezintă o modalitate
suplimentară de exersare individuală a cursanților pentru o mai bu nă însușire a unor
informații teoretice sau pentru deprinderea unor tehnici specifice. Acesta ajută cadrele
didactice să realizeze cât mai eficient exercițiile și activitățile de exersare.
Softurile de simulare au rolul de a permite generarea controlată a unui fenomen
real (fizic, chimic, biologic, meteorologic, etc) bazat pe un model de comportament
teoretic. Acest tip de soft oferă posibilitatea modificării anumitor parametri care să
determine schimbarea comportamentului fenomenului respectiv și astfel fa cilitează
procesul de învățare prin punerea în practică a unor date teoretice.
Softurile de evaluare a cunoștințelor prezintă o gamă foarte extinsă deoarece
acestea depind de o serie de factori precum momentul testării, scopul testării, etc și pot
fi indep endente sau integrate intr -un mediu de instruire. Un test poate fi adăugat fie la
sfărsitul unui capitol dintr -un curs, fie la sfarșitul întregului curs, precum și un test
general care să conțină întrebări din toate cursurile prezente în programul de instr uire
respectiv. Softurile de testare oferă anumite funcții cum ar fi generarea numărului de
răspunsuri corecte și greșite și, odată cu acesta, a unui mesaj care să informeze
cursantul cu privire la progresul său (exemplu: „ Ați picat!”, „Ați trecut testul!” ).
Există și anumine softuri structurate sub forma unor jocuri interactive care
dezvoltă capacitatea studenților de rezolvare a unor probleme complexe. Acestea sunt
asemănătoare cu softurile de simulare, diferența majoră fiind aceea că în cadrul
softurilor i nteractive se urmărește atingerea unui scop și rezolvarea unei sarcini, pe
când cele de simulare sunt folosite strict în cadrul observării. În aceste modele de
softuri un element deosebit de important este calitatea interacțiunii cu utilizatorul
întrucât d e ea depinde eficiența cu care acesta reușește să asimileze și să înțeleagă ceea
ce îi este prezentat.
10 În ceea ce privește interacțiunea softurilor cu utilizatorii, se poate afirma că
unele sunt centrate pe întreg procesul de învățare al cursantului (inclu d toate etapele
necesare unei instruiri cât mai eficiente: asimilare, exersare/repetare, testare), iar altele
se concentrează strict pe livrarea conținutului.
1.8 E-learning în România
1.8.1 Scurt istoric și prtezentare generală
După demararea procesului de reformă a sistemului de învățământ românesc în
anul 1990, ceea ce a dus la modificarea planurilor de învățământ și, implicit, la creșterea
numărului de studenți și elevi, s -a observat și o crește a interesului pentru metodele
educaționale inovatoare, în special cele care se bazează pe tehnologie. După anii 1990,
marile companii mondiale au introdus pe piața românească noi soluții informatice în
domeniul E -learning, deschizând astfel noi orizonturi atât pentru învățământ, cât și
pentru alte firme și organ izații. Astfel, în anul 2001 Ministerul Educației și Cercetării a
lansat programul SEI (Sistemul Educațional Informatizat) cu scopul de a sprijini
procesul de predare -învățare cu ajutorul tehnologiilor moderne.
În prezent, în țara noastră puține companii f olosesc platforme de E -learning
pentru instruirea angajaților fie pentru că nu dețin tehnologia necesară, fie deoarece
preferă metodele tradiționale, însă potențialul de dezvoltare este semnificativ, acest tip
de învățământ electronic devenind din ce în ce mai cunoscut. Acesta este folosit în
special în domeniul financiar și farmaceutic.
În România predomină variantele tradiționale de învățare și instruire în
detrimentul metodelor electronice deoarece există o lipsă de resurse și de pregătire cu
privire la utilizările tehnologiei informaționale.
1.8.2 Platforme educaționale românești
Deși în învățământul românesc se fac eforturi pentru dezvolarea educației prin
mijloace elctronice, există un număr de portaluri educaționale, care, totuși, s -au dovedit
a fi extrem de utile pentru elevi și studenți. Cel mai cunoscut și utilizat portal
educațional românesc este cel dezvoltat de Ministerul Educației Naționale împreună cu
specialiștii de la SIVECO România și anume ,,www.edu.ro ”, fiind punctul central de
prezentare a informațiilor și documentelor oficiale. Acest site este unul dintre cele mai
vizitate din România întrucât este o sursă de informare pentru elevi, studenți, cadre
didactice, părinți, dar și pentru jurnaliști. Cel mai intens trafic de accesare a portalului
se înregistrează anual în perioada de susținere a Evaluării Naționale și a Examenului de
Bacalaureat având în vedere faptul că platforma Edu pune la dispoziție site -urile
,,http://admitere.edu.ro ” , ,,http://bacalaureat.edu.ro ” și ,, http://forum.portal.edu.ro ”
care ofer ă toate informațiile și documentele necesare.
1.8.3 Programe educaționale
E-learning a devenit treptat o parte foarte importantă din învățământul actual și
se află într -un proces permanent de evoluție și îmbunătățire, condiționat de implicarea
echipei de profesori, administratori de sistem și specialiști din domeniul tehnologiei și
programării, fiind orientat spre creșterea performanțelor individuale. Cea mai
11 cunoscută și folosită formă de învățământ electronic este, în special, învățământul la
distanță, dar și intstruirea asistată pe calculator.
De-a lungul dezvoltării platform elor electronice de instruire s -au introdus
diferite instrumente și resurse sau software -uri educaționale care să faciliteze
experiența E -learning și care includ o varietate de materiale electronice folosite ca
suport în predare, învățare, testare și comun icare, astfel contribuind în procesul de
educație. Aceste materiale sunt reprezentate de: cărți electronice (cunoscute și sub
denumirea de e -books), dicționare, hărți, tutoriale, filme și prezentări, jocuri didactice,
platforme de simulare și testare, dive rse forumuri.
Un soft educațional reprezintă un program proiectat pentru a fi utilizat în toate
domeniile, dar cel mai frecvent în cel pedagogic pentru coordonarea conținutului
specific și pentru asigurarea evaluării. Softurile educaționale se pot clasifi ca după
funcția pe care o pot îndeplini în cadrul procesului de învățare. Există softuri pentru
exersare, pentru simulare, pentru prezentare interactivă, pentru evaluarea
cunoștințelor, etc.
1.9 Aplicatii similar e
1.9.1 Udemy
În prezent Udemy este cea mai importantă platformă de e -learning la nivel
global. Cu peste 30 de milioane de cursanți înscriși la cele peste 100.000 de cursuri
disponibile în aproape orice domeniu de activitate, această platformă a reușit să caștige
încrederea utilizatorilor o ferindu -le cursuri foarte bine realizate de către profesori ce au
experiență în crearea lecțiilor online, la o calitate video și audio ireproșabilă. Numărul
instructorilor ce predau pe Udemy trece în prezent de 40.000, oferind cursuri în peste
50 de limbi. În cazul în care un student nu conoaște limba în care se predă un anumit
curs la care acesta dorește să se înroleze se pot activa subtitrări pentru a oferi o
experiență cât mai imersivă pentru studenți.Platforma este în continuă dezvoltare,
oferind atât c ursuri plătite, cât și gratuite, făcând astfel educația online foarte accesibilă.
Avantajele oferite de Udemy
1. Un număr foarte mare de instructori ce se întrec în a oferi un curs cât mai
complet și mai bine documentat pentru a atrage un număr mai mare de
studenți
2. Datorită acestei competiții între instructori se crează și o varietate subiecte și
topicuri pe care aceștia încearcă să le acopere.
3. Cursuri la care utilizatorii au acces pe viață la prețuri decente
4. Secțiune de Q&A la fiecare curs unde intructorii s au alți cursanți îți pot
răspunde la nelămurile legate de curs
5. Exerciții practice și fișiere de descărcat atașate cursului
12 6. Update -uri frecvente ale cursurilor la care stundeții deja înrolați nu trebuie să
plătească nimic în plus
Fig. 2 Platforma Udemy
1.9.2 Team Treehouse
Team Treehouse este o altă platformă foarte cunoscută ce pune la dispoziția
utilizatorilor o multitudine de cursuri foarte bine realizate și foarte calitative. Ce face
aceast site diferit de Udemy de exemplu este faptul că este dedicată exc lusiv zonei de IT
și cursurile la care te înrolezi nu rămân în posesia studenților, platforma bazându -se pe
un abonament ce trebuie plătit lunar (Basic plan, Pro Plan sau Tech Degree). Pe termen
lung acest criteriu poate cântări mult în decizia potențialil or studenți.
Această platformă este perfectă pentru utilizatorii ce doresc un contact
permanent cu instructorii deoarece studenții au posibilitatea de a trimite profesorilor
proiectele la care lucreză pentru a cere o părere competentă și beneficiază de un editor
live de text, direct în aplicație, unde pot împărtăși codul la care lucrează direct cu tutorii.
Un alt lucru ce diferențiază Team Treehouse de orice altă platformă este faptul că
aceștia au reușit să obțină parteneriate cu foarte multe companii de t op precum Google
Developers, IBM Watson, Amazon Alexa sau Microsoft, ceea ce nu poate decât să le ofere
cursanților o mulțime de beneficii.
13
Fig. 3 Platforma Team Treehouse
1.10 Opinii finale despre E -learning
E-learning permite accesul la informații și cunoștințe actualizate constant, la
modalități noi și eficiente de preadere, învățare și testare, fiind eficiente atât pentru
cadrele didactice, cât și pentru cei care folosesc o astfel de platformă cu scopul de a
atinge noi performanțe.
Aparatele și mijloacele folosite în cadrul E -learning sunt unice față de
instrumentele tradiționale din educație. Cu ajutorul acestora pot fi reproduse anumite
prezentări valabile doar prin intermediul calculatorului care pune la dispoziție funcții și
tehnici legate de grafică, animație și sunet. De exemplu, există numeroase aplicații care
simulează diferite fenomene fizice, chimice sau bilogice ce sunt mult mai eficeint de
studiat folosind calculatorul, ușurând astfel înțelegerea și memorarea modului de
desfășurare al acestora.
În concluzie, în societatea digitalizată în care trăim, E -learning reprezintă o
alternativă interactivă la educația tradițională.
14 CAPITOLUL 2 INTERNETUL SI LIMBAJE FOLOSITE IN DEZVOLTAREA
APLICATIEI
2.1 Internetul
Internetul reprezintă una dintre cele mai importante aspecte ale evoluției
tehnologice din toate timpurile care a permis dezvolatarea rapidă a societății. Odată cu
apariția Internetului și cu digitalizarea limbajului a devenit din ce în ce mai ușoară
trans miterea de cunoștințe și informații. Anul 1957 a schimbat complet modul în care
funcționau până atunci computerele, acestea dezvoltându -se de la batch processing
(rezolvarea unui singur task odata) la multitasking și la o putere de procesare mult mai
mare. Ulterior, a apărut Internetul în S.U.A, unde guvernul a început să construiască o
rețea de calculatoare în anii 1960, cunoscută sub denumirea de ARPANET.
Inițial Internetul a fost folosit doar de către armată și de oamenii de știință
pentru a putea face schimbul de informații mai rapid. În anul 1969 a fost trimis primul
mesaj folosind ARPANET (predecesorul internetului) de la un calculator la altul. Mesajul
trimis a avut un text simplu („login”), dar a reprezenzat un pas uriaș in dezvoltarea
Internetului din zilele noastre.
Apariția WWW (World Wide Web) a avut loc în anul 1991 și a fost oferit tuturor
cu acces la rețeaua de Internet. Tot în acest an a fost lansată și prima pagină web,
dezvoltată de către Tim Berners, pagină ce făcea parte din proiectul Wor ld Wide Web.
Primul browser web notabil a fost inventat de aceeași persoană și permitea
utilizatorilor să vadă textul și imaginile în pagină.
Internetul este format dintr -o rețea mondială de calculatoare interconectate
care sunt compuse din servere ce ut ilizează protocoale de rețea TCP/IP (Transmission
Control Protocol/Internet Protocol) pentru a facilita schimburile de date și comunicarea
între utilizatori. Prin rețea se poate înțelege un grup de calculatoare ce utilizează în
comun date, aplicații, resur se hardware și software pentru a putea comunica între ele
prin schimb de mesaje și informații.
Componenta cea mai importantă a Internetului, dar și a comunicațiilor este IP -ul
sau Internet Protocol utilizat pentru a identifica dispozitivele unice conectate între ele.
Alături de IP, încă o componentă deosebit de însemnată este TCP sau Transmission
Control Protocol care asigură conexiunea între aplicații si calculator prin intermediul
unei rețele IP. Anumite servicii de pe Internet cum ar fi World Wide Web, e -mail,
tranferul de fișiere, forumuri, toate acestea se bazează pe TCP.
Fiind atât de vast și diversificat, Internetul se poate împărți în mai multe
subtipuri:
Intranet – reprezintă o rețea privată care poate fi accesată numai de personalul
unei anumite co mpanii
Extranet – reprezintț un website care permite accesul controlat al unui grup
autorizat de furnizori, parteneri și clienți în cadrul unei organizații
LAN sau Local Area Network – constituie o rețea de calculatoare interconectate
limitate la o anumit ă zonă, cum ar fi o instituție de învățământ, un laborator, un
campus universitar, o clădire de birouri, etc.
WAN sau Wide Area Network – reprezină o rețea de telecomunicații aflată într -o
zonă geografică mai extinsă, aceasta fiind folosită pentru a conect a orașe, județe
sau chiar țări. Este adesea utilizat de companii multinaționale pentru a facilita
schimbul de date și informații
15 2.2 Web Hosting -ul și publicarea unui site
Web hosting -ul reprezint ă un serviciu care le permite persoanelor își publice un
website sau o aplicație pe Internet. Furnizorul serviciilor de web hosting este cel care
oferă tehnologia necesară pentru ca site -urile sau paginile web să poată fi vizualizate pe
Internet, acestea fiind stocate pe calculatoare speciale cunoscute sub denumirea de
,,servere ’’. Deasemenea, furnizorul este cel responsabil de întreținerea server -ului, de
actualizarea software -ului, dar și de rezolvarea anumitor probleme tehnice care pot
apărea. Odată găzduit, site-ul poate fi accesat de către utilizatori prin introducerea
adresei web în browser. Astfel, calculatorul lor se va conecta automat la server -ul pe
care este hostat website -ul respectiv.
Serverul de webhosting trebuie privit ca pe un spațiu ce se află pe un alt
calculator ce este închiriat. Pentru acest spațiu trebuie plătit lunar o anumită sumă de
bani în funcție de performanțele oferite și de tipul de server pentru a menține website –
ul online. Majoritatea companiilor ce presteză ser vicii de hosting oferă clientilor un
panou de comandă (cPanel) pentru a -și manageria mai usor site -ul.
Fig. 4 Modul de transmitere a datelor pe internet
Există diferite opțiuni de web hosting, în funcție de tehnologia, de serviciile și de
tipul de ser ver de care are nevoie fiecare pagină web:
• Website Builder (servicii de construire a unui site web) este folosit în principal
pentru a veni în ajutorul începătorilor care au nevoie de un website, dar nu dețin
cunoștințele necesare pentru a dezvolta unul, punându -li-se la dispoziție diferite
interfețe web.
• Hosting -ul comun în care mai mulți posesori de pagini web folosesc același
server, deși este mai accesibil deoarece costurile se împart între toți utilizatorii
server -ului, prezintă anumite dezavantaj e cum ar fi faptul că funcționează mai
încet.
• Hosting -ul dedicat este serviciul de web hosting în care există un singur
utilizator pentru întreg server -ul, permițând o performanță mult mai mare a site –
ului întrucât acesta folosește toate resursele server -ului.
• Hosting -ul colocat este tipul de hosting în care programatorul își achiziționează
propriul server de care este întru totul responsabil de costurile și necesitățile
16 server -ului. Cel mai mare avantaj al acestui serviciu este controlul deplin asupra
server -ului web.
Un alt serviciu oferit de furnizorii de web hosting este distribuirea unui nume de
domeniu (DNS/Domain Name System) unic. Acesta are rolul de a transforma un URL
tastat în browser ( www.exemplu.com ) într-o adresă IP obținută din server -ul în care
sunt stocate paginile web și pe care calculatorul o poate accesa și memora.
Calculatoarele comunică între ele prin adrese IP (Internet Protocol). Adresa IP
este un protocol ce face posibilă transmiterea datel or, fără a fi necesară o conexiune
permanentă.
Pentru a înregistra un domeniu, trebuie să se achiziționeze unul de la un furnizor
de încredere. Poate fi folosit orice nume dorim, dacă acesta este disponibil, dar este de
preferat să se folosească unul cât m ai ușor de reținut. După alegerea numelui urmează
selectarea unei extensii de domeniu, în funcție de preferințe (exemplu: .ro, .com, .us,
.org, .uk, etc).
Acestea reprezintă exact conținutul site -ului web, ceea ce vizitatorii pot vedea
accesând pagina (ima gini, conținut text, fișiere audio, etc). Atunci când un utilizator
caută pe internet numele domeniului ales, se trimite o comandă catre serverul unde este
hostată pagina web, loc în care se citesc fișierele din site și se trimit înapoi la utilizator
în fo rmatul pe care acesta îl poate vizualiza.
2.3 Securitatea web
În zilele noastre informația este o resursă neprețuită ce circulă cu o viteză
incredibilă de la un capăt la altul al lumii. Societatea în care trăim se învârte în jurul
informației și cu toții suntem interconectați.
Securitatea datelor și a informațiilor reprezintă o problemă imensă cu care ne
confruntăm în acest secol. Breșele de securitate au devenit tot mai frecvente și mai ușor
de accesat, făcând securizarea datelor foarte grea. Este imposi bil să protejezi toate
datele, fapt ce le oferă celor rău intenționați oportunități de exploatare a acestora.
Principala greseală a tuturor celor care au un site online, fie ca este vorba despre
o afacere sau de un simplu site cu informații, este faptul că se gândesc ca site -ul lor nu
reprezintă un interes pentru hackeri sau crackeri.
O altă greșeală la fel de mare o reprezintă alegerea unei parole ușor de
descoperit sau folosirea aceleiași parole pentru toate conturile deținute de o persoană.
Specialiștii indică utilizarea unor parole ce conțin caractere speciale cum ar fi &,*,#,@ ,
atât litere mari cât și litere mici și dacă este posibil parola să fie mai lungă de 10 -12
caractere.
Fișierele primite prin e -mail de la persoane necunoscute și nu numai, pot fi rău
intenționate și pot ascunde programe de tip keylogger. Nu este indicat să se deschidă e –
mail -uri ce conțin atașamente de la persoanele necunoscute. Dacă e -mail -ul pare primit
de la un prieten dar conținutul acestuia nu pare de încredere este bine să fi e contactată
persoana respectivă pentru a i se cere confirmarea.
Majoritatea utilizatorilor nu înțeleg necesitatea folosirii unei metode
suplimentare de securitate precum re -captcha, metodă ce poate face în mod automat
diferența dintre o persoană reală și un computer ce trimite diferite mesaje cu caracter
malițios. Cu ajutorul unui astfel de cod implementat pe un website se pot opri anumite
programe ce crează în mod automat diferite conturi false sau trimit informații nedorite.
17
Principalele riscuri la car e sunt expuși utilizatorii:
Furtul datelor personale sau a informațiilor mai multor utilizatori ai web site -ului din
baza de date
Adăugarea de conținut spam sau reclame nedorite pe site
Coruperea codului sursă a site -ului
Blocarea accesului la baza de dat e sau la site
Prevenirea problemelor de securitate:
Folosirea parolelor puternice (eventual generate automat)
Evitarea folosirii unui nume precum „admin” pe un cont de administrator
Folosirea unui certificat de securitate SSL
Back -up la o perioada scurtă de timp a datelor
Folosirea unui host de calitate ce oferă setări de securitate avansate
Certificatul SSL (Secure Sockets Layer) este un protocol folosit în transferul
informațiilor cu caracter important, dezvoltat de Netscape. Acest protocol criptează
informațiile ce ajung pe conexiune și le transmit mai departe. Față de URL -urile
obișnuite (http:), cele criptate prin SSL încep cu https.
Fig. 5 Protocolol SSL
2.4 Responsive design
În ultimii 4 -5 ani tot mai multă lume a început să renunțe la calculator sau la
laptop pentru unele task -uri cum ar fi cumpărăturile online, plata unor facturi online
sau comandarea mâncării, folosindu -și dispozitivele portabile (telefon mobil sau
tabletă) pentru a le duce la bun sfârșit. Porni nd de la aceste necesități ale
consumatorilor, posesorii de afaceri online au început sa ceara programatorilor ca site –
ul sau aplicația lor web să fie compatibilă și cu dispozitivele portabile.
Un website sau o aplicație web poate fi considerată „responsiv e” dacă layout -ul
ce rulează pe device -uri cu rezoluție mare (calculatoare sau laptopuri) se poate adapta
18 fără probleme sau daor cu mici modificări, fără a modifica experiența de utilizare, la
ecranele mult mai mici ale dispozitivelor portabile. Inițial, a cest termen de responsive
layout a apărut în anul 2010, dar până în 2013 a fost ignorat de marea majoritate a
dezvoltatorilor.
Pentru a crea un design responsive a fost nevoie ca grid -ul clasic (cel fix) să fie
înlocuit de cel fluid, pentru a se putea adap ta schimbării rezoluțiilor. Redimensionarea
paginilor și a elementelor se face prin calculul lațimii (width) și a înalțimii (height) din
CSS, în funcție de rezoluția dispozitivelor pe care dorim să rulăm aplicația. În ultimii doi
ani s -a încercat trecerea de la unitatea de măsură clasică (pixeli) la unele relative (rem,
em sau procente). În dezvoltare se folosesc toate aceste unități de măsura în funcție de
necesități.
Deoarece o pagina web nu are daor text în componența sa, a aparut necesitatea
de a redime nsiona și elementele grafice (fotografii, bannere,etc). Aceasta problemă se
poate rezolva fie prin încărcarea pe server a multiplelor variante de rezoluții a pozelor
(în funcție de necesitate), fie prin folosirea de media query (interogări media) ce sunt
reguli de CSS aplicate daor pentru anumite rezoluții specificate.
Fig. 6 Responsive design media query
Avantajele oferite de responsive layout
1) Flexibilitatea – se poate folosi de pe toate dispozitivele fără diferențe
considerabile de design sau de funcționalitate de la o rezoluție la alta
2) Costuri mai reduse pentru platformele mobile – o aplicație web optimizată și
pentru folosirea pe dispozitive mobile costă mult mai puțin fată de o aplicație de
mobil de sine stătătoare.
3) Încărcare rapidă a paginilor – dacă aplicația este construită bine din punct de
vedere al layout -ului, timpul de încărcare pe platformele mobile va fi redus cu
mult. Un studiu arată că utilizatorii de smartphone sau tabletă au tendința de a
părăsi o pagină web dacă timpul de încărcar e al acesteia depășește pragul de trei
sau patru secunde.
4) Nu necesită mentenanță foarte multă, în comparație cu o aplicație dedicată de
mobil – să o aplicație desktop și una de mobil separată implică o perioadă de
testare mult mai mare decât un singur site web scalabil pe toate dispozitivele.
19
2.5 Unelte folosite în dezvoltarea aplica ției
Visual Studio Code (Microsoft) − este unul dintre cele mai puternice și intuitive
editoare de text ce ruleaza fără probleme pe orice sistem de operare. Acesta vine c u
suport pentru toate limbajele de programare și framework -urile cunoscute și
beneficiază constant de update -uri si mentenanță.
Pentru a veni în ajutorul programatorilor, atât cei de la Microsoft, cât și
comunitatea lucrează la diverse plugin -uri ce facil itează modul de lucru. În acest proiect
am folosit plugin -uri precum Bracket Pair Colorizer ce are rolul de a colora acoladele,
parantezele rotunde și pătrate, pentru a face codul mai ușor de urmărit și pentru a
facilita debugging -ul.
Alte extensii folositoare utilizate în proiect sunt Emmet, care are ca principal
scop să așeze codul în ordine, Live Server, ce pune la dispoziție un server live unde
codul își face update și preview la fiecare salvare a acestuia.
Fig. 7 Interfa ța Microsoft Visual Studio
Mongo Data Base – este o bază de date NoSQL și reprezintă o alternativă la bazele
de date tradiționale ce erau compuse din tabele, aceasta din urmă fiind structurată în
colecții de date, în care se regăsesc documente (echivalentul rândurilor din bazele de
date SQL) ce arată ca un document json.Principalul lor avantaj este faptul că nu trebuie
să folosească aceeași schemă pentru fiecare intrare din baza de date.
20
De exemplu:
Id:1 name: ‘Ion’ age: 15
Id:2 name: ‘Andrei ’
Id:3 age: 55
Baza de date NoSQL inter pretează aceste intrări ca fiind perfect normale
deoarece într -o aplicație adevărată pot exista astfel de date pentru că nu toți utilizatorii
aleg să completeze toate acele câmpuri de când plasează o comandă online sau când se
înregistrează pe anumite site -uri.
Un alt avantaj major oferit de MongoDB este faptul că este foarte flexibilă atunci
când se dorește adaugarea unui câmp nou într -o colecție (de exemplu înălțimea) fără a
altera datele deja existente.
MongoDB Compass Community – acest tool reprezintă interacțiunea dintre
programator și baza de date. Oferă posibilitatea de a face diverse acțiuni asupra bazei de
date cum ar fi INSERT, UPDATE, DELETE, dar și un mod de debug structurat foarte bine.
Fig. 8 MongoDB Compass Community
Postman – unul dintre cele mai folosite unelte pentru lucrul cu API, testarea
requesturilor de tip GET, POST, PUT, DELETE, etc. Acesta este foarte folositor pentru a
verifica dacă paginile la care se lucrează funcționează în mod corespunzător.
Pentru a înț elege mai bine ce este API (Application Programming Interface) vom
analiza urmatorul exemplu: dorim să cumpăram un bilet de avion din București către
Iași prin compania aeriana Ryanair. Nu suntem siguri că această companie are un site
propriu sau poate găs im o ofertă mai buna de preț pe un alt site. Cum este posibil să
cumpărăm un bilet de pe un third party website? Aici intervine API. Ca acest lucru să
poată fi realizat, folosim cod scris de exemplu de Google și îl încorporăm în website -ul
nostru, benefici ind în acest mod de funcționalitățile pe care le căutam.
21
Fig. 9 Postman
Git Bash – reprezintă cea mai bună alternativă la command prompt -ul oferit de
sistemul de operare Windows. Alte OS -uri precum Linux sau macOS oferă un terminal
shell bine pus la punct, însă pentru utilizatorii de Windows acest lucru nu este posibil.
Git Bash este folosit pentru a naviga printre fișiere în linie comandă și pentru a instala
diverse pachete ale programelor sau ale diverselor framework -uri.
Fig. 10 Gitbash
22 2.6 Limbaje de programare folosite
HTML (HyperText Markup Language)
Acesta nu este un limbaj de programare, ci de marcare ce are ca principal scop
crearea paginilor web. Pentru a crea un site, HTML se folosește de tag -uri (exemplu:
head, body, p h1, h2, div, etc) pe care trebuie să le închidă după fiecare folosire
(exemplu: <head> </head>, <div> </div>, <header> </header>). Există și unele tag -uri
ce nu necesită închidere ca de exemplu <br>, ce are ca rol trecerea la un nou rând sau
tag-ul pentru adăugar ea de imagini <img>.
Fig. 11 Funcționarea tag -urilor în HTML
Orice document HTML conține două secțiuni importante:
Capul sau secțiunea head ce oferă informții despre ce conține pagina
respectivă (dar care nu apar când deschidem pagina în browserul web )
Corpul sau secțiunea body ce conține toate informațiile vizibile în browserul
web.
Un browser web este o aplicație ce are scopul de a prezenta resursele WWW,
resurse ce se identifică prin URL -uri (Uniform Resource Indentifier). Un browser
interpretează c odul HTML și îl transformă în conținut media ce poate fi înțeles de
oricine, nu doar de un programator.
Un fisier HTML este alcatuit din urmatoarele componente:
1. versiunea HTML a documentului (!DOCTYPE)
2. zona head cu etichetele <head> </head>
3. zona body cu etichetele <body> </body>
CSS (Cascading Style Sheets)
CSS-ul este un limbaj folosit pentru stilizarea elementelor (tag -urilor) HTML.
Denumirea de CSS provine de la Cascading Style Sheets. În web design -ul modern,
23 pentru stilizarea paginilor w eb se utilizează frecvent CSS -ul, acesta fiind capabil să
prezinte modelul de dispunere al elementelor unui document HTML.
CSS-ul este un limbaj ce definește layout -ul pentru documentele HTML. Cu
ajutorul lui putem modifica culorile, fontul și dimensiunile acestuia, marginile, bordurile
și multe altele. Pentru a stiliza elementele HTML putem folosi tag -ul <style></style> și
putem adauga în interiorul lui regulile dorite, putem folosi inline style (adăugarea de
reguli în tag -ul elementului HTML) sau putem co necta fișierul .html cu unul extern .css.
Cea de -a treia variantă este cea mai folosita, dar și cea mai utilă deoarece combinarea
acestor doua limbaje în același document este dificil de interpretat de către un alt
programator.
Pentru a conecta cele două fișiere între ele, în interiorul tag -ului <head> se
adaugă urmatoarea linie de cod:
<link rel="stylesheet" type ="text/css" href ="mystyle.css" >
Bootstrap
Bootstrap este o librărie de CSS și Javascript oferită gratuit de către cei de la
Twitter. Această librărie vine în ajutorul programatorilor deoarece ușurează foarte mult
modul în care este scris codul CSS și poate salva foarte mult timp întrucât ne putem
folosi de nume roase structuri predefinite pentru a scrie anumite reguli, multe dintre ele
necesare în orice proiect, aducând un aport considerabil de reguli noi de design prin
sistemul de grid și fiind extrem de ușor de integrat.
Orice web developer se întâlnește cu mul te structuri ce se repetă de la un
website la altul (butoane, bară de navigație, formulare, etc). Folosind toate aceste
structuri și clase predefinite, Bootstrap devine cea mai buna soluție pentru dezvoltatori.
Pentru a folosi această librărie trebuie să f ie descărcată de pe site -ul oficial și să o
conectam la fișierul HTML sau putem folosi o versiune comprimată a acesteia ce se
gasește într -un cloud, fără a fi nevoiți să descărcăm un fișier. Cea de a doua opțiune,
folosirea unui CDN, are însă și un dezavan taj și anume faptul că în cazul în care cloud -ul
sau host -ul respectiv nu funcționează, site -ul nostru nu va avea acces la fișierele
Bootstrap.
Pe lângă structurile de CSS, această librărie aduce și câteva structuri de
Javascript predefinite, folosite în m are parte la meniuri de tip drop -down, carusele de
imagini ce sunt folosite din ce în ce mai mult în website -urile moderne și multe altele.
JavaScript
Dezvoltarea acestui limbaj de programare a inceput în anul 1995 la Netscape
Communications. Deoarece în acea perioada Java era o tehnologie foarte nouă și
apreciată, creatorii JavaScript au decis să facă un limbaj cu o sintaxă apropiată pentru a
caștiga mai repede popularitate. Prima versiune de JavaScript a fost numita Mocha și a
fost lansată în mai 1995, urmând ca în decembrie 1995 să primească numele pe care îl
are și în prezent, cel de JavaScript.
JavaScript este un limbaj de programare orientat pe obiect, bazat pe conceptul
prototipurilor. În cea mai mare parte, acest limbaj de programare este folosit p entru
24 unele funcționalități ale paginilor web deoarece scriptul este rulat direct de către
browser.
Putem considera acest limbaj de programare ca fiind cea de -a treia componentă
atunci când vine vorba de crearea site -urilor web și a aplicațiilor deoarece aceasta se
ocupă de interacțiunea cu utilizatorul și face trecerea de la o pagină statică la una
dina mică. Browser -ul web încarca pagina HTML și creează un obiect numit DOM
(Document Object Model).
Cea mai folosită metodă pentru a încărca un fișier JavaScript într -o pagină web
este prin folosirea tag -ului HTML ,,script’’.
<script type ="text/javascript " src="/path/to/javascript "></ script >
Express JS
Express JS este un framework web pentru Node.js. Acesta este un server -side
(back -end) framework ce poate fi folosit împreună cu framework -uri client -side (front –
end) precum Angular, React, Vue.js sau HTML simplu pentru a crea aplicații full -stack.
Acest framework este foarte popular deoarece favorizează dezvoltarea
aplicațiilor web bazate pe Node.js prin faptul că micșorează semnificativ numărul
liniilor de cod pentru executarea unui task, este foarte rap id comparativ cu alte
framework -uri și se integrează foarte bine cu framework -urile client -side întrucât totul
este scris în JavaScript.
Node.js
Node.js este o platformă server -side ce a fost construită pe motorul JavaScript a
celor de la Google Chrome și este folosită pentru dezvoltarea de aplicatii web scalabile și
rapide. Este o platformă open -source ce a fost creată în anul 2009 de către inginerul
programator Ryan Dahl și care funcționează pe toate sistemele de operare. Deoarece
este scrisă în JavaSc ript, aceasta beneficiază de o librărie cu o multitudine de module
(pachete) ce facilitează dezvoltarea.
Package.json
Package.json reprezintă un fișier ce este creat automat de catre framework -ul
Express atunci când, la instalarea unui pachet, adaugăm ,,–save’’ sau ,, –S’’ după numele
acestuia. Orice fișier .json are un nume și o versiune pe care rulează. Se pot adauga și
câmpuri ce nu sunt obligatorii, cum ar fi cel de autor sau dependente. Rolul acestui fișier
este de a instala mai rapid și mai ușor t oate pachetele pe care le conține un proiect
deoarece acesta reține atât numele, cât și versiunile de pachete folosite în aplicația
respectivă.
25 Pentru a crea fișierul, dupa ce este instalat Express și aplicația este configurată,
se tastează în consolă ,,npm init’’, urmând ca fișierul să se creeze automat.
Fig. 12 Fișierul Package.json
26 CAPITOLUL 3 APLICATIA WEBTUTS
3.1 Pagina de landing
Aplicația webTuts este o aplicație web destinată învățării programării web.
Aceasta a fost construită pe o platformă ce are la bază Node.js, dar se folosește și de alte
limbaje de programare precum HTML, CSS și baze de date. Aplicașia este ușor de folosit
și este destinată tutu ror persoanelor care își doresc să învețe cât mai multe despre
programarea web. Este structurată în lecții ce pot fi ușor de urmărit și de înțeles de
către utilizator, iar cursurile cele mai importante oferă și o multitudine de teste utile
pentru verificar ea cunostintelor dobândite.
Odată accesat site -ul web, aplicația se deschide cu un landing page ce are la bază
un carusel de imagini, un text de întâmpinare a utilizatorului și un buton ce
direcționează către platforma propriu -zisa.
Fig. 13 Cod CSS al paginii de landing
Cele patru animații au fost adăugate folosind cod CSS. Se puteau realiza prin
multe alte metode, cum ar fi un carousel slider în JavaScript sau chiar mai ușor, folosind
clase de Bootstrap. Am ales sa le dezvolt în CSS deoarece consider că dețin mai mult
control asupra acestui slider de imagini și este mai ușor să implementez ulterior o
animație. Slider -ul a fost definit ca o listă neordonată (<ul>), iar fiecare poză a fost
integrată într -un <li>. Pentru lista neordo nată am ales să folosesc poziție fixă pentru ca
elementele să rămână în aceeași poziție chiar dacă facem scroll pe pagină, i -am oferit o
lățime și o înălțime de 100%, nu am dat margin sau padding deloc pentru a putea ocupa
27 întreg ecranul și am folosit list -style: none pentru a dezactiva notarea listelor cu diferite
simboluri.
Pentru imagini am ales să folosesc deasemenea lățime și înălțime de 100%,
background -repeat: no -repeat care este o regula de CSS ce interzice imaginii să se mai
repete odată ce s -a afi șat în totalitate, background -size: cover ce ajută ca imaginea să
ocupe tot spațiul oferit chiar și în condițiile în care o poza nu are suficienți pixeli, prin
faptul că o forțeaza să acopere acea suprafață. Animația este una lineară ce se întinde
pe o du rată de 40 de secunde, cu unele efecte de fade -in sau fade -out. Pozele au fost
luate de pe un site cu licență open source ( https://unsplash.com/ ), ceea ce înseamnă că
pot fi folosite de oricine in mod gratuit.
3.2 Inregistrarea
Pentru a putea folosi platforma trebuie sa ne înregistrăm. Există două tipuri de
conturi, cel de admin ce este creat direct din baza de date și cel de utilizator. Aplicația se
poate folosi și fără cont, dar nu vom putea accesa servicii prec um comentariile sau
urmărirea activității altor useri. Pentru a se înregistra, utilizatorul trebuie să
completeze câmpurile Username, Password și E -mail ce sunt obligatorii, iar opțional,
dacă dorește, își poate trece numele, prenumele și poate adăuga o po za pentru avatarul
profilului său de utilizator.
Fig. 14 Formular de înregistrare
28
Fig. 15 Schema User din baza de date
3.3 Resetarea parolei
În baza de date, pentru fiecare user nou se respectă schema din poza prezentată
mai sus. Se creeaza o schemă mongo ose pentru user ce conține un username de tip
string (șir de caractere) ce este unic și care îndeplinește condiția de required (este
obligatoriu de completat cand utilizatorul se înregistrează). Parola este tot un șir de
caractere ce trebuie și acesta să îndeplinească condiția de required. Chiar dacă nu este
specificat in cod acest lucru, pachetul Passport Local Mongoose are grijă de acest aspect
și criptează fiecare parolă a utilizatorilor pentru a nu avea acces nici măcar adminii la
conturile private ale userilor. Ultimul câmp obligatoriu este cel de e -mail, ce trebuie să
fie unic pentru fiecare client, iar adresa de e -mail nu poate fi folosită mai mult de o
singura dată.
Pentru avatar, nume și prenume nu se folosește condiția de required deoarece
utiliza torii nu trebuie obligați să își ofere date cu caracter personal dacă nu doresc acest
lucru și pot folosi aplicația în întregime fără a completa aceste câmpuri.
29 Aplicația oferă și posibilitatea de a reseta parola în caz că utilizatorul nu o mai
ține minte . Resetarea parolei se face pe baza unui token unic ce este trimis pe e -mail și
redirecționează utilizatorul către o pagină de schimbare a parolei.
Fig. 16 Pagina de resetare a parolei
Fig. 17 Mesaj de confirmare
Dupa solicitarea resetării, vom primi un e -mail de pe contul asociat platformei
(lucrarelicenta2019@gmail.com ) în care se va solicita să folosim token -ul de
schimbare a parolei. În caz că nu am solicitat această acțiune, suntem îndemnați să
ignorăm acel mesaj.
30
Fig. 18 E-mail cu link -ul de resetare a parolei
Token -ul primit este generat automat și este unic. Parola se poate modifica o
singură dată folosind acel token, apoi el expiră și nu mai poate fi accesat.
Fig. 19 Mesaj de eroare
Dupa ce resetăm parola vom fi logați automat în aplicație și vom primi înca un e –
mail de confirmare a acțiunii anterioare, fapt ce atestă că totul a decurs corect.
Fig. 20 E-mail de confirmare a schimbării parolei
Pachetul cu ajutorul căruia se trimit e -mail -urile se numește „nodemailer”.
Pentru recuperarea parolei se face un GET request la „/forgot” ce redirecționeaza
utilizatorul către pagina de HTML cu formularul aferent ce trebuie completat pentru
resetarea parolei. Prin ap ăsarea butonului de submit se face un POST request catre
„/forgot”. Pachetul „crypto”, ce este inclus în Express, deci nu trebuie instalat separat,
ajută la crearea token -ului de resetare a parolei, formând un șir de caractere aleatorii ce
va fi trimis ca parte din URL -ul pe care utilizatorul îl primește în e -mail.
31 Pentru a găsi utilizatorul ce a solicitat resetarea parolei am realizat o funcție ce
caută în baza de date un user dupa adresa lui de e -mail. Dacă nu se gasește niciun
rezultat ce satisface aceas tă condiție se va afișa un mesaj de eroare, iar utilizatorul este
redirecționat înapoi la pagina de resetare.
Într-o aplicație reala acest token nu trebuie sa fie folosit decât o singură dată sau
în cazul în care nu a fost folosit, să expire după o anumită perioadă de timp. Pentru acest
aspect am utilizat obiectul „Date.now()” la care am adăugat echivalentul unei ore in
secunde pentru a seta intervalul de timp în care acest token poate fi accesat.
Trimiterea propriu -zisă a e -mail -ului se face folosind o va riabilă pusă la
dispoziție de „nodemailer” ce ne ajuta sa creăm un „transport”. Această variabilă se
numește „smtpTransport” și poate folosi aproape orice serviciu de e -mail. În cadrul
aplicației am ales să folosesc Gmail deoarece este serviciul de e -mail -uri pe care îl
folosesc zilnic atât eu, cât și milioane de persoane din întreaga lume. Nodemailer are
numeroase opțiuni când vine vorba despre configurare, opțiuni pe care le trimite ca
obiecte (service: Gmail, auth (user și parola de la e -mail),etc).
Fig. 21 Ruta pentru forgot password
Pentru a cripta parola personală de la contul de Gmail am ales să folosesc un alt
pachet numit „process.env” ce stochează anumite informații pe care noi le clasificam ca
fiind private (cum ar fi o parola) într -un fișier extern ce nu trebuie uploadat pe server
sau pe platformă cum ar fi „github”.
Conținutul e -mail -ului pe care utilizatorul îl primește de la platformă se
configurează în obiectul „mailOption” ce conține ca parametri un destinar (to:
user.email), un expeditor (from: lucrarelicenta2019@gmail.com), un subiect și un text la
care se adaugă token -ul.
32 Fig. 22 Funcția de trimitere a e -mail -ului
3.4 Notificări
În schema user -ului din baza de date mai sunt trecute înregistrările isAdmin, de
tip Boolean (poate primi doar valorile ,,true’’ sau ,,false’’), ce este setată ca ,,false’’ inițial
deoarece nu dorim ca toți userii să fie admini. Utimele două câmpuri, cele de notificări și
de followers sunt folosite pentru sistemul de notificări trimis de catre aplicație tuturor
userilor ce sunt abonati la un alt user, pentru a primi o lecție nouă imediat ce aceasta
este publicată.
Fig. 23 Notificare
Prin accesarea notificării respective vom fi redirecționați către link -ul lecției.
Notificarea dispare imediat ce este interpretată de cod ca fiind citită (imediat ce se
apasă click pe ea).
33 În baza de date, notificarea are urmatoarele câmpuri: username de tip string,
follId de tip string și isRead de tip boolean.
Fig. 24 Schema notificării în baza de date
Variabila isRead este setat ca fiind false pentru toate notificările, dar odata ce se
apasă click pe ele și sunt citite, aceasta se modifică automat în true.
Fig. 2 5 Fișier ejs pentru notificări
În fișierul ejs pentru afișarea notificărilor am folosit un foreach ce parcurge
array -ul de notificări și pentru fiecare notificare găsită crează un <li> cu un link către
/lessons/<%= notification.follID %> și în notificar ea pe care o primește clientul o să
apară username -ul celui ce a scris lecția și un text atașat.
34
Fig. 26 Lista cu notificările primite
Fig. 27 Butoane meniu cod
În poza prezentată anterior se poate observa faptul ca pe meniul din site am pus
condiția ca atunci când un utilizator nu este autentificat să apară daor cele două
butoane de Login și Sign Up, dar dacă acesta este conectat, apare butonul de Log out și
meniul de tip drop -down de notificări.
3.5 Comentarii
Un utilizator normal poate lă sa un comentariu la o anumită lecție, își poate edita
sau șterge propriul comentariu sau postare și poate interacționa cu alți utilizatori prin
sistemul de follow. Adminul poate șterge sau edita orice lecție sau orice comentariu,
chiar dacă nu ii aparține, atât din motive de securitate, cât și pentru a preveni unele
întâmplări nedorite precum utizatori ce folosesc un limbaj neadecvat sau care oferă
informații eronate.
35 Fig. 28 Crearea de comentarii
Pentru a crea un comentariu facem un POST request și ne folosim de o funcție ce
verifică dacă utilizatorul este autentificat deoarece nu poate lăsa comentarii dacă nu
este conectat și ne ajutam de req.body.comment ce are acces la data utilizatorului. Dacă
utilizatorul este autentificat în aplicație, acesta poat e lăsa un comentariu ce este ulterior
salvat într -un array de comentarii folosindu -ne de funcțiile comment.save() și
lesson.comments.push(comment). În acest array sunt stocate id -ul fiecarui utilizator si
username -ul lor. Dacă acțiunea s -a finalizat cu suc ces, un mesaj de confirmare procesat
de req.flash va fi afișat.
Fig. 29 Ruta pentru editarea comentariilor
36 Pentru a edita un comentariu facem un GET request și folosim o altă funcție,
middleware, ce verifică dacă utilizatorul respectiv este cel căruia îi aparține comentariul
pentru a evita să edităm ce nu ne aparține.
Funcția middleware.checkCommentOwnership verifică mai întâi dacă utilizatorul
este autentificat, apoi, în caz afirmativ, compară dacă id -ul autorului comentariului este
același cu id -ul use r-ului sau dacă acesta este admin (un admin poate modera postările
tuturor).
Fig. 30 Verificarea userului ce deține un comentariu
În cazul în care aceste condiții nu sunt îndeplinite, pachetul express flash
messages afișează un mesaj de eroare și redirecționează utilizatorul la pagina
anterioara. Editarea comentariului se face apelând la un formular ce conține textul
propriu -zis al acestuia. Deoarece node.js și express nu permit decât folosirea
requesturilor de tip GET și POST, pentru a edita comentariul folosim un pachet numit
Method Override ce ne permite să transformăm un request de tip POST in unul de tip
PUT sau in orice îalt request dorim.
3.6 Funcția de search
Pentru a găsi mai ușor o anumită lecție, aplicația pune la d ispoziția utilizatorului
o funcție de căutare ce folosește o variabilă numită regex care primește ca parametru un
text pe care îl compara cu ce a găsit în baza de date, apoi afișează rezultatul. Dacă
numărul lecțiilor din baza de date este mai mic decat 1 , acesta afișează un mesaj de
eroare.
Fig. 31 Bara de search
37 În imaginea prezentă mai sus am căutat în bara de search cuvântul ,,test’’ și au
fost afișate toate postările care conțin cuvântul ,,test’’ în titlu. Această bară de căutare
are la bază un <form > ce acționeaza asupra „/lessons” și folosește o metodă GET. În
acest formular se folosesc două input -uri, unul de tip text ce are un placeholder cu un
mesaj și unul de tip submit care este un buton. Deoarece am adăugat în functie ca și
parametru „gi” ( c onst regex = new RegExp(escapeRegex(req.query.search), ‚gi’); )
acesta va ignora faptul că folosim litere mici sau mari sau că titlul este scris cu caractere
uppercase sau lowercase și le va afișa indiferent de situație.
Dacă apăsăm pe butonul de cautare f ără să introducem nimic în acel câmp, acesta
va returna toate valorile, cu alte cuvinte nu se va produce căutarea deoarece nu există
niciun criteriu de selecție.
3.7 Sistemul user profile
Aplicația pune la dispoziția utilizatorilor un sitem de „user pro file” ce afișează
informații despre un anumit utilizator (username, nume, prenume, e -mail și avatar) ce a
lăsat un comentariu sau a scris o lecție, alături de butonul de follow. Aceste informații
sunt preluate din baza de date prin intermediul schemei mong oose pentru user.
Fig. 32 Câmpurile folosite de user profile
Fig. 33 Profilul utilizatorului
38 Câmpul de e -mail are atașat un tag (mailto: ) pentru a deschide direct aplicația de
e-mail a sistemului de operare și a trimite mesaj către adresa respectivă. Aceste date
sunt generate în mod dinamic folosind un „templating engine” numit „ejs”.
Fig. 34 Ruta pentru profil și funcția de follow
Folo sind Bootstrap, am împărțit coloanele puse la dispoziție de grid pentru
datele personale și pentru poza de profil și butonul de follow. La acest buton este atașat
și numele utilizatorului, tot cu ajutorul ejs -ului.
Pentru acest profil am creat o rută nouă (/profile/:id) ce caută un user dupa id -ul
acestuia în baza de date. Dacă user -ul nu a fost gasit, se returnează un mesaj de eroare și
se face redirect către pagina cu lecții. În caz afirmativ, se continuă căutarea în baza de
date cu ajutorul unei sintaxe de mongoDB ce verifică dacă id -ul autorului lecției
respective este același cu cel ai user -ului găsit anterior și randeză pagina de ejs
(users/show) ce primește ca parametri user -ul și lecția respective.
În cazul în care nu se gasesc acestea în baza de da te se face redirect către pagina
de lecții și se afișează un mesaj de eroare.
39 Funcția de follow face request către /users/:id unde funcția așteaptă să se
gasească un user și populează array -ul numit followers cu id -ul pe care îl are persoana
ce a dat follow, apoi randează pagina de users/show.
Fig. 35 Pagina ejs pentru profil
În această pagină sunt afișate pe site datele din profilul de utizator. Poza de profil
este încadrată într -un card (clasă de Bootstrap) ce are o altă clasă (mb -3) care oferă
spațiere între elemente (margin -bottom -3). Butonul de follow folosește o clasă de
Bootstrap (btn -danger) ce îl colorează în roșu. Textul de pe buton este urmat de sintaxa
ejs <%= user.username %> ce adaugă numele utilizatorului la acel text. Datele
persona le sunt scrise între tag -uri de heading (h3, h2) pentru a fi mai ușor de citit.Toate
aceste informații sunt cuprinse într -un <div> cu clasa “container” ce are rolul de a
centra aceste randuri în container -ul respectiv.
Fig. 36 Confirmare a funcționării b utonului de follow
40 După apăsarea butonului de follow vom primi un mesaj de confirmare ca cel din
imagine sau unul de eroare și redirectare către pagina de login în cazul în care nu
suntem autentificați pe platformă.
3.8 Testarea aplicației
Odata ce apli cația a fost finalizată este foarte important să ne asigurăm că în
fișierele noastre codul sursă este scris corect, fără greșeli și ordonat în așa fel încât să
poată fi citit și de alte persoane cu ușurință.
Pentru verificarea codului HTML se pot folosi validatoare de cod ce pot fi găsite
online. Un astfel de tool este HTML Validator ce este foarte ușor de folosit și este grauit.
Fig 3 7 HTML Validator
Dacă codul sursă nu prezintă greșeli, următorul pas pe care trebuie să îl
verificăm este testarea aplicației în toate browserele web pentru a fi siguri că se afișează
tot conținutul site -ului în mod corect, toate imaginile și paragrafele și dacă nu există
diferențe de la un browser la celălalt.
3.9 Creșterea eficienței
Pentru a obține un timp mai bun de încărcare a site -ului este indicat să micșorăm
dimensiunea pe care o ocupă o poză pe hard sau pe server cu aplicații dedicate acestui
task ce nu strică claritatea imaginii cum ar fi tinyPGN. De exemplu dacă un website ar
41 folosi poze ce au rezoluții foarte mari și ocupă 3mb sau mai mult, acestea pot îngreuna
destul de mult site -ul și pot crea neplăceri în utilizarea acestuia.
Fig. 3 8 TinyPNG
42
CONCLUZII
In condițiile societății actuale, care prezintă câteva evidențe de necontestat
precum izolarea socială a individului, influența factorului economic în determinarea
spațio temporală a individului, se impune abordarea unor strategii care să contracareze
efec tul izolării, strategii care de regulă sunt de natură informațională. Astfel că,
utilizarea tehnologiilor informatice și comunicaționale, asigură un nou grad de libertate
a individului în societate.
Întrucât educația este strâns legată de comunicare, ea neputând fi disociată de
aceasta, implementarea tehnologiei e -Learning în procesul instructiv -educativ este o
consecință firească a evoluției și progresului social. Utilizând strategiile e -Learning nu
se dorește înlocuirea practicilor educaționale tradițio nale, ci completarea și chiar
consolidarea procesului educativ. Tocmai acesta a fost raționamentul care a stat la baza
intențiilor de implementare a strategiilor e -Learning în procesul instructiv -educativ,
fiind utilizat ca o alternativă la educația tradi țională care, în cele din urmă, a condus la
dezvoltarea învățământului la distanță, la accesibilizarea procesului de instruire
continuă a indivizilor care adoptă soluții e -Learning.
În lucrarea elaborată, sunt prezentate aspectele generale ale strategiilor de
instruire e -Learning, sunt evidențiate definițiile unor termeni specifici domeniului, este
prezentat un scurt istoric al evoluției strategiilor de instruire asistată pe calculator și
este propusă o arhitectură a sistemelor e -Learning, sunt evidențiate numeroasele
avantaje dar și dezavantajele strategiilor e -Learning și prezentate diverse soluții/
platforme e -Learning, folosite în România în domeniul educației la distață.
Am propus în prezenta lucrare modelul grafic al unui sistem e -Learning sub
forma un ei platforme e -Learning – componentă formativă, componenta de validare a
formării și arhitectura bazei de date a platformei E-Learning.
43
BIBLIOGRAFIE
Studii cu caracter general, tratate, cursuri
1. M. Vlada, Informatică, Editura Ars Docendi, București, 1999.
2. Revistă Științifică a Universității de Stat din Moldova, 2013, nr.5(65)
3. Studiu critic al actualelor sisteme de e -learning, Institutul de cercetări petru
inteligență artificială – Iulia Dobre, 2010
4. Studiu privind dezvoltarea E -learning în România realizat de Beta Software
Management SA, 2012
5. Revista Informatica Economica, nr. 2 (22)/2002, E -learning – paradigma a instruirii
asistate, Prof..dr. Ion Gh. ROSCA, prof.dr. Constantin -Gelu APOSTOL, Conf.dr. Gabriel
ZAM FIR, Catedra de Informatica Economica, A.S.E. Bucuresti
Sursa internet:
http://itransfer.space/elearning -in-educatia -preuniversitara -din-romania/
http://www.elearning.ro/educatia -la-distanta
http://revistaie.ase.ro/
https://www.website.com/beginnerguide/webhosting/6/2/types -of-web -hosting -services.ws
https://creadiv.ro/blog/website -de-prezentare
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Str. Științei Nr. 2, cod poștal 800146, Galați, România, tel/fax: +0236 4 70 905, e-mail: aciee@ugal.ro, web: www.aciee.ugal.ro PROIECT DE DIPLOMĂ… [611152] (ID: 611152)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
