Professional Documents
Culture Documents
nu. Sunt replicate fie acele fragmente cu utilizare frecvent, fie relaii ntregi de
dimensiuni
mici care nu merit s fie fragmentate, ci mai degrab memorate pe fiecare sit.
n aceast
ultim situaie intr i acele relaii sau fragmente cu actualizri sporadice.
Aceast strategie este o mbinare a celor 3 enunate anterior. ncearc s le preia
avantajele i s le minimizeze dezavantajele. De aceea aceasta se implementeaz
cel mai adesea. Costurile de comunicaie i de stocare sunt relativ reduse.
Caracterul local al referinei, securitatea, fiabilitatea i disponibilitatea sunt
apropiate de maxim.
15. Ce este alocarea i ce metode de alocare cunoatei?
Alocarea reprezint procesul de repartizare a fragmentelor pe situri. Alocarea
poate s fie neredundant sau redundant. Realizarea unei astfel de proiectri
se bazeaz pe metoda celei mai bune alegeri, care stipuleaz c unei staii pe
care deja a fost plasat un fragment, nu poate s-i mai fie alocat un fragment
nrudit. Alocarea redundant este o problem de proiectare mult mai
complex: Metoda selectrii., Metoda alocrii progresive.
16. Desenai i descriei arhitectura de referin a sistemelor distribuite.
Arhitectura este format din:
schemele externe globale, care reprezint viziunea fiecrui utilizator asupra
sistemului;
Sisteme de baze de date distribuite
o schem conceptual global, adic o imagine complet a ntregii baze de
date, fr a
ls mcar pentru vreun moment impresia c aceasta ar putea fi una distribuit;
schema de fragmentare, ce reprezint ideea proiectantului de partiionare a
ntregii
baze de date;
schema de alocare se refer la modul de amplasare fizic a fragmentelor i
replicilor
acestora n vederea deservirii optime a interogrilor i tranzaciilor sistemului
distribuit;
17. Enumerai principiile lui Date referitoare la sistemele distribuite.
autonomia local, absena unei dependene de un sit central, operarea
continu,
independena de fragmentare11, independena de localizare, independena
de replicare,
prelucrarea distribuit a interogrilor, gestionarea distribuit a
tranzaciilor,
independena de hardware, independena de sistemul de operare,
independena de reea i independena de sistemul SGBD.
18. Care sunt etapele de procesare a cererilor ntr-un sistem distribuit?
Graf [Oracle 2012] un model relativ nou, bun pentru parcurgerea relaiilor,
dar nu
pentru cutri generale.
SISTEME DE OPERARE
operare numit tabel de procese, care este un tablou de structuri pentru fiecare
proces existent.
Un proces este c o grupare de resurse nrudite i are spaiu de adrese ce
conine textul programului i date, precum i alte resurse. Aceste resurse pot
include fiiere deschise, procese copil, semnale de alarm n ateptare, rutine de
tratare a semnalelor, informaii de contabilizare i altele. Acestea pot fi
gestionate uor prin gruparea lor sub form de proces.
3. Ce este un fir de excuie?
Firele de execuie n sistemele de operare tradiionale, fiecare proces are un
spaiu de adrese i un singur fir de control. Dar de cele mai multe ori este de
dorit existena mai multor fire de control n acelai spaiu de adrese rulnd
pseudo-paralel, c i cum ar fi procese separate(cu excepia partajrii
spaiului de adrese).
Firul de execuie (thread) are un contor de program care ine evidena
urmtoarei instruciuni de executat, totodat deine i registre care in variabilele
curente de lucru. Are de asemenea o stiva care conine istoricul execuiei, cu un
cadru pentru fiecare procedura apelat din care nu s-a revenit nc. Dei un fir de
execuie trebuie s ruleze ntrun proces,firul i procesul sunt concepte diferite i
pot fi tratate separat. Procesele sunt utilizate pentru a grup resurse, n timp ce
firele de execuie sunt entiti planificate pentru execuie n cadrul UCP (unitate
central de procesare). Modul de lucru al firelor de execuie este: partajeaz
spaiul de adrese, fiiere deschise i ale resurse sau partajeaz memoria fizic ,
discurile, imprimantele i alte resurse.
Prin comutarea ntre mai multe procese, sistemul ofer iluzia unor procese
secveniale separate care se execut n paralel. Programarea cu fire de execuie
multiple funcioneaz n acelai mod: UCP comut rapid ntre firele de execuie
oferind iluzia c acestea ruleaz n paralel, dei pe o UCP mai lent dect pe cea
real. n cazul unui proces cu trei fire de execuie, toate efectund calcule,
acestea pr s se execute n paralel, fiecare pe o UCP cu o vitez de trei ori mai
mic dect a UCP reale.
4. Care sunt diferenele ntre sistemul de fiiere FAT32 vs NTFS?
NTFS (New Technology File System) este sistemul de fiiere standard
pentru Windows NT i predecesoarele sale Windows 2000 i Windows XP;
capacitatea de a recupera automat dup anumite erori legate de disc, ceea ce
FAT32 nu poate realiza. Suport mbuntit pentru hard disk-uri mai mari. Are
securitate mai bun, deoarece avei posibilitatea s utilizai permisiuni i
criptare pentru a restriciona accesul la anumite fiiere numai la utilizatorii
autorizai. Acest sistem de fiiere folosete adrese de disc de 64 de bii i poate
suporta partiii de pn la 264 bytes, totodat ofer posibilitatea folosirii
caracterelor Unicode n numele de fiiere, permite folosirea numelor de fiiere
Smurf Flood este un atac DOS cunoscut i sub numele de reflector. Un atacator
trimite un numr mic de pachete echo ICMP la o adres de broadcast care
definete mai multe gazde. Rspunsurile tuturor acelor gazde sunt trimise
simultan ctre victim, epuiznd toat banda de comunicaie i posibil puterea
de calcul.
TCP SYN
Atacul de tip TCP SYN este posibil datorit schimbului de mesaje de la
nceputul protocolului TCP. Un client trimite o cerere (SYN) ctre un server,
anunndu-i intenia de a porni o conversaie. La rndul su, serverul
desemneaz o intrare n tabela cu conexiuni pe jumtate deschise i trimite
napoi un mesaj de ncuviinare (SYN ACK), semnaliznd astfel disponibilitatea
sa. n acest moment clientul trebuie s rspund cu un pachet SYN ACK ACK
pentru a putea ncepe comunicaia de fapt. Un atacator ar putea s nu trimit
niciodat aceast confirmare, cauznd umplerea tabelei de conexiuni, cererile
legitime ulterioare fiind astfel blocate. Daca un atacator trimite o rafal de astfel
de cereri, acesta poate paraliza activitatea unui server de 100 MIPS care poate
deservi 2000 de conexiuni pe secund [SPAT99], dimensiunea tipic a tabelei
TCP fiind de 2048 de intrri [DEC96].
UDP Flood (Fraggle)
Acest atac este posibil datorit naturii protocolului UDP care nu este orientat pe
conexiune. Din moment ce nu este necesar nici un dialog n prealabil, un
atacator poate trimite pachete ctre porturi aleatoare ale sistemului vizat.Victima
va aloca resurse pentru determinarea aplicaiilor care ascult porturile pe care
sosesc date, iar cnd i dseama c nici o aplicaie nu face acest lucru, va
trimite ca rspuns un pachet ICMP. Dac numrul de pachete aleatoareeste
suficient de mare, exist posibilitatea ca sistemul s aib probleme.
ICMP Flood
Acest atac const din trimiterea unui numr mare de pachete ICMP ctre
victim. Aceasta nu poate ine pasulcu volumul de informaie primit i poate
observa o degradare a performanei.
E-mail bombing
E-mail bombing nseamn trimiterea unui numr mare de mesaje electronice
ctre un server cu scopul de a epuiza spaiul de pe disc i limea de band. Cu
excepia atacului UDP, restul se pot evita prin msuri luate la nivelul sistemului
de operare. Atacul UDP este dificil de contracarat ntruct exist o multitudine
de aplicaii care ascult la o multitudine de porturi. Filtrarea cu ajutorul firewallurilor ar avea un impact puternic asupra funcionalitii iar acest pre nu l vor
plti foarte muli utilizatori.
3 Atacuri prin pachete modificate
Ping of Death
Acest atac const n trimiterea unui pachet ICMP mult mai mare dect pachetul
maxim IP, i anume 64 KBytes. La destinaie, unele implementri nu pot
decodifica pachetul, cauznd prbuirea sau reboot-ul sistemului. Dou
implementri binecunoscute care au acest comportament sunt Windows 95 i
unele versiuni timpurii de Windows NT.
Chargen
Acest atac este o variant a atacului de tip UDP Flood i folosete portul 19
(chargen) al unui sistem intermediar folosit ca amplificator. Atacatorul trimite un
pachet UDP fals ctre un sistem intermediar care la rndul su rspunde cu un
ir de caractere victimei, pe portul su echo. Victima trimite napoi un ecou al
irului primit i bucla creat consum rapid banda dintre victim i sistemul
intermediar.
Teardrop
Datorit implementrii defectuoase, unele sisteme nu pot asambla fragmente de
pachete care au deplasamente eronate. n loc s ignore elegant aceste pachete,
aceste implementri blocheaz sau reboot-eaz sistemul.
Land
Dei este greu de crezut, unele sisteme se blocheaz cnd primesc pachete avnd
aceeai adresa ca surs i destinaie.
WinNuke
Acest tip de atac este specific sistemelor de operare Windows. Atacatorul trimite
date aleatoare la un port anume, ceea ce cauzeaz blocarea sau reboot-ul
sistemului.
PROIECTAREA SITEURILOR WEB
1. Care este rolul unui client, n cadrul modelului Client-Server?
Modelul Client-Server[site17] [LalaniChandak1997] st la baza tuturor
aplicaiilor electronice i serviciilor Internet. Clientul, n general, ruleaz pe
calculatorul utilizatorului i este folosit pentru a accesa informaii sau alte
aplicaii din cadrul reelei Internet. Exemplul de client este browser-ul care poate
ndeplini cu succes urmtoarele sarcini:[site17]
- emite cererile i recepioneaz datele care se vor afia;
-formateaz documentele pe baza tag-urilor HTML;
- afieaz documentele.
Clientul i serverul se pot gsi pe acelai calculator, n cazul n care se
utilizeaz mecanisme de comunicaie local sau pe calculatore diferite, atunci
cnd se folosesc mecanisme de comunicaie n reea.
Clientul folosit pentru accesarea serverului web poate fi att un browser
ct i un alt program capabil s se conecteze la un port TCP
2. Ce se nelege prin server de web?
serverului MySql;
serverul MySQL recepioneaz interogarea bazei de date i o prelucreaz, iar
apoi trimite
rezultatele motorului PHP;
motorul PHP afieaz rezultatele furnizate de server-ul MySQL formatate ntrun cod
HTML pe care l returneaz server-ului Web, n cazul nostru Apache.
Server-ul Web transmite codul HTML browser-ului, unde utilizatorului i se
afieaz rezultatul dorit de acesta.
17. Enumerai i descriei faciliti oferite de MySQL.
Facilitile oferite de MySQL sunt variate, dintre care se vor preciza urmtoarele
[BuBois2001]:
posibilitatea accesului concurent la date de ctre un numr nelimitat de
utilizatori;
capacitatea de a gestiona pn la 50000000 de nregistrri i chiar mai multe;
execuia foarte rapid a comenzilor, poate chiar cea mai rapid din cele
existente pe pia;
sistem uor i eficient de gestiune a drepturilor utilizatorilor;
este gratuit, fapt ce a atras extinderea fr precedent a folosirii acestui server
de baze de
date.
18. Enumerai principalele motive pentru folosirea pe scar larg a
MySQL.
MySQL este un sistem de gestiune a bazelor de date. Pentru a aduga, insera i
procesa datele
memorate pe un calculator este nevoie de un astfel de sistem de gestiune a
datelor. Avnd n
vedere c toate calculatoarele sunt destinate pentru memorarea informaiilor,
managementul
bazelor de date joac un rol decisiv, att n gestiunea datelor ca activitate de sine
stttoare, ct i n cadrul aplicaiilor ample [BuBois2001].
MySQL este un sistem multiuser (permite s fie folosit concomitent de mai
muli utilizatori) i multithread (prezint mai multe fire de execuie). Utilizeaz
SQL, limbajul standard de
interogare a bazelor de date.[WellingThomson2005]
MySQL este un sistem de gestiune a bazelor de date relaionale. Tabelele sunt
conectate prin
relaii predefinite, fapt ce face posibil combinarea datelor din mai multe tabele,
la cerere.
MySQL este un produs open source.
MySQL este un sistem client-server care este alctuit dintr-un server SQL
multithread care are faciliti pentru mai muli utilizatori, mai multe programe i
biblioteci client, instrumente de administrare i un numr mare de interfee de
programare. Avnd n vedere c MySQL suport o gam variat de produse
software, exist posibilitatea ca multe din limbajele de programare deja folosite
de anumii utilizatori s suporte deja interfaa cu acest produs [BuBois2001].
19. Explicai mecanismul de funcionare a unui server Web.
Reallyyyy????
20. Enumerai tipurile de date numerice cunoscute. Dai un exemplu de
asociere a unui tip de
date pentru un cmp al unei tabel.
Tipuri numerice sunt: TINYINT, SMALLINT, MEDIUMINT, INT sau
INTEGER,
BIGINT, FLOAT, REAL sau DOUBLE, NUMERIC
21. Enumerai tipurile de date calendaristice cunoscute.
Tipurile de dat calendaristic sunt : DATETIME, DATE, TIMESTAMP, TIME,
YEAR ;
22. Enumerai grupurile n care se mpart de irurile de caractere?
irurile de caractere se mpart n trei grupuri i anume: iruri normale definite
prin tipul
CHAR (fixed length character), respectiv VARCHAR (variable length
character), iruri
text definite prin tipul TEXT respectiv BLOB (pentru iruri lungi sau date
binare) i
irurile care folosesc SET respectiv ENUM pentru valori predefinte.[site11]
23. Definii conceptul de baz de date.
O baza de date poate fi definita ca un ansamblu de date elementare sau
structurate, accesibile unei comunitati de utilizatori. Mai concret, o baza de date,
este un ansamblu de fisiere intercorelate, care contine nucleul de date necesare
unui sistem informatic(aplicatie informatica).
24. Definii conceptul de relaie ntre tabele.
Relaia (tabela) este un subansamblu al produsului cartezian al mai multor
domenii, caracterizat prin nume i care conine tupluri cu semnificaie (tabel).
ntr-o relaie, tuplurile trebuie s fie distincte nu se admit duplicate. O
reprezentare a relaiei este tabelul bidimensional (tabela de date) n care liniile
reprezint tuplurile, iar coloanele corespund domeniilor. Numrul tuplurilor
dintr-o tabel este cardinalul tabelei, numrul valorilor dintr-un tuplu este gradul
tabelei. Pentru a diferenia coloanele care conin valori ale aceluiai domeniu,
Lucrul cu variabile in PHP este foarte usor. Nu trebuie specificat un tip pentru
ele (de genul "variabila text", "variabila numerica") ci acesta este determinat in
mod automat.
Variabilele sunt diferentiate de celelalte elemente ale limbajului prin caracterul
$. Astfel, o variabila are forma $nume. Numele variabilei poate fi orice
identificator valid (un text ce contine doar litere, cifre si underscore, fara spatii
sau alte caractere; un identificator nu poate incepe cu o cifra)(de pe net..nu este
in material)
Sintaxa unei variabile PHP este:
$nume_variabil=valoare;.
RETELE
1. Descriei tehnica CSMA/CD.
Aceast tehnic rezult din utilizarea tehnicii CSMA mpreun cu tehnica
"ascult ce transmii" (figura 11.1.). Principiul de baz este c, dup ce sursa
transmite pachetul, ateapt un interval foarte scurt de timp (dependent de
ntrzierile de propagare i de sistem) apoi i ascult propria transmisie. Dac
sursa, atunci cnd acioneaz ca receptor al propriei transmisii, detecteaz o
diferen ntre informaia recepionat fa de cea transmis, va deduce c s-a
produs o coliziune pe canal, va trunchia pachetul n curs de transmisie i va
cuta s rezolve coliziunea, organiznd dup un algoritm specific retransmiterea
ulterioar a acestuia. Este uzual ca sursa de pachete care detecteaz prima
coliziune s ia imediat decizia de difuzare pe canal a unui semnal de bruiaj
specific de scurt durat ( jamming ), n acest fel este asigurat consensul de
coliziune ntre toate sursele de pe canal implicate n interfa.
Avantajul esenial al acestei tehnici const n faptul c ea permite
detectarea prompt a unei coliziuni, adic imediat ce ea apare i nu dup un
interval de timp, evitndu-se transmiterea complet a pachetelor colizionate i se
reduc nu numai ntrzierile din reea datorate coliziunilor, dar i canalul de
difuzare devine disponibil mai repede. Intervalul de timp n care se pot produce
coliziuni dup ce o staie a nceput emisia este de 2, unde este ntrzierea de
propagare a semnalelor ntre cele mai ndeprtate staii. Deci o staie poate fi
sigur c a ocupat linia, dup ce areuit s transmit o perioad de lungime 2,
fr s se produc coliziuni.
2. Descriei formatul pachetului Ethernet IEEE 802.3
Standardul Gigabit Ethernet IEEE 802.3z
In iulie 1999, dup luni de studii iniiale, grupul IEEE 802.3 a creat grupul
operativ Gigabit Ethernet 802.3Z.Obiectivelecheie ale acestui grup operativ
erau s dezvolte un standard Gigabit Ethernet care face urmtoarele:
Permite operarea semi i ful-duplex la viteze de 1000 Mbps.
Folosete formatul cadrului Ethernet 802.3.
Folosete metoda de acces CSMA/CD cu suport pentru un repetor pe domeniul
de coliziune.
Realizeaz o compatibilitate de adresare cu tehnologiile 10 BASE-T i 100
BASE-T.
Se folosesc trei tipuri pentru liniile de legtur: o legtur prin fibr optic cu o
lungime maxim de 550 m multimod; o legtur prin fibr optic single-mod
cu o lungime maxim de 3 km ( extins la 5 km) i o legtur prinfibr de cupru
cu o lungime maxim de 25 m. In prezent IEEE investigheaz tehnologia care
ar susine legtura la distane de cel puin 100 m prin srm rsucit n pereche
neprotejat (UTP) de categoria 5. n completare grupul operativ IEEE 802 a
Portul surs (16 bii) -mpreun cu adresa sursei formeaz soclul sursei.
Portul destinaie (16 biti) -numrul portului destinaie selecteaz procesul din
calculatorul destinaie cu care s-a stabilit o conexiune.
Numrul de secven (32 bii) - reprezint numrul primului octet de date din
cadrul segmentului de date curent. Dac bitul de control SYN este setat, numrul
de secven este adus la valoarea sa iniial.
Numrul de confirmare (32 bii) -conine valoarea urmtorului numr de
secven pe care trebuie s-l primeasc.\
Lungime antet date (offset date) (4 biti) conine lungimea antetului TCP n
cuvinte de 32 bii indicnd de unde ncep datele.
Rezervat (6 bii) -iniializai cu 0.
12.Descriei i desenai antetul protocolului UDP.
Ex. O persoan nu poate avea dou mame naturale, deci cele dou mame trebuie
s fie una i aceeai.
Deducerea echivalenei indivizilor din proprietatea invers funcional
(owl:inverseFunctionalProperty).
Aceasta se comport invers fa de cea funcional: pe orice obiect l poate pune
n relaie cu un singur subiect. Dac apar mai multe subiecte, se va deduce
echivalena lor. Ex. (ne bazm pe prezumia c dou persoane nu pot avea
acelai e-mail, deci dac apare o astfel de situaie e vorba de aceeai persoan)
n capitolul legat de identitatea n Semantic Web s-a atras atenia asupra crizei
identitii, prin care un identificator nu ar trebui folosit i pe post de pagin Web.
De aceea, chiar dac Wikipedia ofer pagini Web pentru numeroase concepte,
sau Facebook pentru numeroase persoane, nu ar trebui s folosim acele adrese
pentru a identificarea de concepte. n schimb putem s indicm faptul c dac se
doresc informaii detaliate despre concept, pot fi gsite pe o pagin Wikipedia
sau pe alt site. Exemplul urmtor indic faptul c relaia de frate poate fi
neleas depe pagina oferit de Wikipedia pentru cuvntul brother:
Proprietatea de a avea pagini Web descriptive alternative (rdfs:seeAlso)
Cum acelai concept poate fi descris de numeroase pagini Web (site propriu, o
pagin Wikipedia, o pagin Facebook, un blog etc.) avem posibilitatea de a
anexa oricte pagini Web secundare, considerate nedefinitorii pentru nelegerea
conceptului, dar totui relevante. Printre acestea se pot numra chiar baze de
cunotine RDF disponibile direct pe Web, precum cele oferite de DBPedia:
12. Oferii 5 exemple de vocabulare controlate i explicai pe scurt utilitatea lor.
Vocabularele nu sunt neaprat standardizate. Ele pot fi i vocabulare controlate,
propuse de diverse organizaii pentru a deservi un anumit domeniu, devenind
suficient de populare nct s fie adoptate pe scar larg:
FOAF16, set de concepte cu care se pot descrie relaiile dintre oameni;
GoodRelations17, pentru a descrie cataloage de produse;
Dublin Core18, pentru a descrie resurse informaionale (documente, cri etc.);
OpenGraph19, cu acelai scop ca FOAF, dar conceput de Facebook pentru a
stoca relaiile sociale;
voID20, pentru a descrie baze de cunotine (de exemplu cte clase, proprieti,
subiecte, obiecte conine);
Modelul DOM este una din cele dou soluii consacrate (alturi de SAX) pentru
extragerea informaiilor dintr-un document XML, indiferent c acestea sunt
stocate n numele sau valorile elementelor, numele sau valorile atributelor sau n
structurile XML auxiliare. DOM nu este o aplicaie n sine, ci un model abstract
implementat la nivelul parserelor, ca o colecie de interfee de programare (API)
ce folosesc paradigma obiectual pentru a transpune coninutul oricrui
document conform cu standardul XML n clase, obiecte i metode. Astfel, DOM
este independent de platform i limbajul de programare, fiind considerat un
strat ntre parser i aplicaiile consumatoare de XML. Practic, parserul citete
date din sursa XML i alctuiete arborele DOM translatnd imbricrile ntre
marcatori n relaii tat-fiu i unitile XML n noduri ale arborelui.
n modelarea DOM, pornim de la exemplul de mai jos, salvat n fiierul
fisier.xml:
<produse>
<produs cod="p01">Televizor</produs> </produse>
22. Care sunt efectele fundamentale oferite de Scriptaculous?
Pachetul Script.aculo.us ofer un nucleu de efecte fundamentale i, pe baza
acestora, o serie de efecte combinate de nivel mai nalt. Fiecare efect este o
tranziie ntre dou stri, aadar fiecare efect permite fixarea unui punct iniial i
a unui punct final, precum i durata desfurrii. Unele efecte sunt parametrizate
cu coordonate ale ecranului sau distane. Toate efectele sunt asincrone n sens
AJAX6, deci execuia lor nu ntrerupe execuia i experiena utilizrii, deci
multiple efecte pot fi aplicate simultan aceluiai element. Efectele
Script.aculo.us sunt o resurs deosebit pentru promovarea utilizabilitii
aplicaiilor Web.
23. Enumerai tipurile de biblioteci AJAX
Aceast tendin a dus la apariia unei multitudini de biblioteci AJAX construite
pe nivelele:
Nivel 0: mecanisme de nivel sczut, reutilizabil, de conectare asincron la
server: obiectul XHR sau cadrele interne;
25. Realizai o comparaie ntre XML i JSON, incluznd cte un exemplu din
fiecare.
n cele ce urmeaz vom realiza o comparaie ntre formatele JSON i XML
aplicate asupra datelor trimise de server. Prezentm n continuare acelai set de
date n format XML i n format JSON:
XML:
<produse>
<produs denumire=Televizor pret=100 /> <produs denumire=Calculator pret
=200 /> </produse>
Valoare JSON atribuit unei variabile:
produse=[ {denumire:Televizor, pret:100},{denumire:Calculator,pret:200}]
Obiect JSON de transferat (de exemplu generat de un serviciu Web sau de
server):
{ produse: [{denumire:Televizor, pret:100},{denumire:Calculator,pret:200}] }
Astfel, produse devine un vector de dou elemente, fiecare element fiind un
obiect cu cte dou proprieti. Insistm asupra faptului c valorile masive se
enumer ntre paranteze ptrate, iar proprietile obiectelor ntre acolade, fiind
posibil orice combinaie de imbricare ntre acestea (ex: vector de obiecte,
obiect cu proprieti vectori, obiect cu
proprieti obiect, vector cu elemente vector etc.). Se observ c ambele modele
(XML i JSON) pot transpune n format text serializat (ir de caractere) structuri
de date arborescente sau obiecte.
Avantajele JSON sunt:
performana, atunci cnd se transfer strict seturi date (n schimb XML devine
esenial atunci cnd se transfer poriuni de documente ce vor fi manipulate prin
DOM, validate sau procesate de instrumente XML);
compatibilitatea cu obiectele JavaScript efortul de extragere a datelor din
JSON e minimal n JavaScript;
accesul facil la proprietile JSON prin sintaxa JavaScript, comparativ cu
accesul mai dificil la XML prin DOM/Xpath n exemplul JSON, al doilea pre
poate fi accesat prin produse[1].pret, n timp ce n exemplul XML ar fi necesar
parcurgerea vectorilor getElementsByTagName sau childNodes pentru nodul
rdcin, urmate apoi de solicitarea atributului pret cu getAttribute.
Suporterii JSON susin c oricum conceptele XML sunt inutile: spaiile de nume
devin inutile dac nu se mai folosesc marcatori iar validarea prin vocabulare e
considerat o delegare inutil a responsabilitiilor:
26. Enumerai i explicai 6 metode, funcii sau atribute (JavaScript) prin care se
poate modifica formatul sau coninutul paginii HTML
Coninutul elementelot XML se manipuleaz doar cu metotode DOM standard:
appendChild, removeChild, insertBefore, replaceChild, cloneNode, nodeValue
Suport selecie mai uoar cu getElementById,getElementsByClassName,
getElementsByName
27. Care sunt beneficiile AJAX fa de paginile Web tradiionale?
Web tradiional:
o Datele se trimit de la client spre server cu ajutorul formularelor sau a
hiperlegturilor (variabile GET sau POST), aadar prin decizia contient a
utilizatorului (n urma unui clic); rspunsul se returneaz de la server\ sub form
de cod HTML;
pentru o ct mai clar explicare a termenilor. Totodat, pot fi descrise relaii ntre
concepte. Se recomand ca realizarea glosarului s nceap odat cu realizarea
analizei proiectului.
Proiectarea sistemelor informatice 5
1.3 Modele de dezvoltare software
De-a lungul timpului, n practica dezvoltrii sistemelor informatice, n funcie de
tipurile de abordare pe care le-au avut specialitii n timpul dezvoltrii au aprut
mai multe modele de dezvoltare software. Pentru a discuta modelele de
dezvoltare software vom defini mai nti ciclul de via al produsului software.
Aadar, ciclul de via al unui produs software este o structur care este urmat
n vederea realizrii unui produs informatic. Aceast structur cuprinde etape n
care sunt realizate aciuni specifice.
n aceast expunere vom discuta cteva dintre modelele cunoscute de dezvoltare
existente: modelul cascad, modelul prototipului (prototipizrii) i modelul
spiral.
Modelul cascad este alctuit din urmtoarele faze:
Analiza, sau specificarea cerinelor
Concepia, sau designul
Implementarea i integrarea componentelor software
Testarea Instalarea
Mentenana (ntreinerea)
Modelul cascad se caracterizeaz prin faptul c fiecare etap este parcurs
complet, dup care se trece la urmtoarea etap. n urma parcurgerii fiecrei
etape pot aprea ajustri la rezultatul produs, ns cu toate acestea modelul nu
ncurajeaz revenirea la etape anterioare pentru modificarea rezultatelor. Acest
model este aplicat n general pentru sisteme simple n care cerinele sunt bine
cunoscute sau pot fi corect i complet stabilite n faza de analiz.
Modelul prototipului este folosit n general n situaiile cnd sistemul vizat este
complex, cerinele sunt greu de identificat corect i n ntregime n faza de
analiz. Acest model este folosit pentru sisteme cu grad mare de noutate fie din
punct de vedere al funcionalitilor oferite, fie al tehnologiei adoptate. Acest
model pornete cu stabilirea cerinelor iniiale, dup care se realizeaz concepia
i se implementeaz versiunea iniial de sistem. Sistemul este supus n
continuare evalurilor, i n urma acestora se revine asupra cerinelor. Acest
ciclu se reia pn cnd, la evaluare, se constat c sistemul ndeplinete
performana dorit. Dup acest prag, sistemul este trecut n faza de dezvoltare
propriu-zis (n scopul obinerii produsului software final) i testat. n final,
exist i faza de mentenan.
Modelul prototipului are o abordare de la simplu la complex, ntruct la fiecare
iteraie, versiune de prototip sunt adugate funcionaliti.