Proiectarea Unei Aplicatii cu Baze de Date Pentru Evidenta Datelor de Cadastru

=== aplicatie_pentru_evidenta_datelor_de_cadastru_fin ===

UNIVERSITATEA POLITEHNICA TIMIȘOARA

FACULTATEA Informatică

Specializarea: Informatică

LUCRARE DE LICENȚĂ

Proiectarea unei aplicatii cu baze de date pentru evidenta datelor de cadastru

Conducător științific,

Conf.dr.ing. Iosif SZEIDERT

Student:

BBBBBBBB vvvvvvv

2016

CUPRINS

INTRODUCERE

IMPORTANȚA ȘI ACTUALITATEA TEMEI

Importanța implementării sistemului cadastral este indiscutabilă pentru fiecare țară și localități. Altfel spus, acest sistem poate fi comparat cu o listă din care orice doritor poate lua cunoștință de fiecare imobil din țara respectivă precum și proprietarul lui, caracteristicile tehnice, amplasarea, valoarea și alte aspecte ale proprietății. Este vorba de o multitudine de indicatori cu ajutorul cărora se pot obține diferite combinații, ca rezultat al procesării datelor prin intermediul unor programe computerizate sofisticate, în funcție de scopul propus.

Disponibilitatea unei baze de date a sistemului cadastral are o importanță majoră și aceasta ar facilita:

ținerea unei evidențe stricte și corecte asupra proprietăților imobiliare și a proprietarilor lor;

circulația liberă a bunurilor imobiliare și a drepturilor asupra lor, inclusiv în afara hotarelor țării;

gestionarea proprietăților imobiliare după bunul plac al proprietarilor;

asigurarea din partea statului a garanției dreptului de proprietate asupra imobilelor;

impozitarea echitabilă a tuturor bunurilor imobile, majorarea acumulărilor la buget și, implicit;

delimitarea terenurilor – proprietate publică a statului și proprietate publică a unităților administrativ-teritoriale;

crearea cadastrelor de specialitate, inclusiv a cadastrului apelor, cadastrului pădurilor, cadastrului plantațiilor perene etc.;

construcția diferitelor case și cartiere de locuit, instalații inginerești, a iazurilor artificiale, plantarea pădurilor, plantațiilor, fâșiilor forestiere, construcțiilor hidrotehnice etc.

Importanța efectuării activităților menționate, precum și a multor altor activități, constă în faptul că se vor crea posibilități pentru excluderea subiectivismului la luarea deciziilor prin eliminarea factorului uman.

Pentru ca aceste și multe alte activități să fie efectuate cu succes este necesară descentralizarea sistemului cadastral, oficiile cadastrale teritoriale să aibă mai multă autonomie și să poată lua decizii de sine stătător.

O importanță majoră o au următoarele acțiuni:

stabilirea nivelului de informare și conștientizare de către populație a necesității creării cadastrului bunurilor imobile;

ombaterea corupției în sistemul de înregistrare a proprietăților imobiliare;

reliefarea necesității perfecționării și dezvoltării sistemului cadastral

Printre elementele structurale ale sistemului cadastral sunt regăsite și:

perfecționarea legislației în domeniul cadastrului și elaborarea recomandărilor privind optimizarea structurii sistemului cadastral;

corectarea erorilor comise în procesul de privatizare a terenurilor agricole;

analiza pieței imobiliare.

SCURT ISTORIC

Pe teritoriul României, cadastrul, împreună cu cărțile funciare, datează din anul 1794 în Transilvania, Banat și nordul Bucovinei.

Etapele principale în evoluția activității de cadastru în Romȃnia sunt:

începuturile introducerii cadastrului general (1794 – în Transilvania, Banat și Bucovina; 1831 – în Muntenia și 1832 – în Moldova);

1919 – 1933, a debutat cu înființarea Direcției Cadastrului și intensificarea lucrărilor de cadastru, în Moldova și Muntenia și a fost încheiată odată cu apariția primei legi, care a reglementat executarea unitară a cadastrului general și cărților funciare (Legea nr. 23/1933);

1933 – 1955, a debutat cu începerea unui cadastru modern, dar ale cărui lucrări au fost întrerupte în timpul celui de-al doilea război mondial;

1955 – 1989, au fost folosite diferite forme de evidență a terenurilor, orientate cu prioritate spre patrimoniul agriculturii colectivizate și de stat;

1990 – 1995, întregul efectiv al unităților de cadastru funciar a fost mobilizat în lucrările de aplicare a Legii fondului funciar nr. 18/1991;

începând cu 1996, a fost creat cadrul pentru organizarea și executarea unui cadastru general modern, la nivelul cerințelor societăților democratice avansate.

PARTICULARITĂȚI ȘI FUNCȚII CADASTRALE

Printre funcțiile cadastrului general cele mai imortante sunt:

funcția tehnică – este o funcție cantitativă, respectiv la situarea (poziție, amplasament), configurația (formă și dimensiuni) și suprafețele terenurilor și ale construcțiilor.

Rezultatele cadastrului sunt planul cadastral și registrele cadastrale.

Planul cadastral este un derivat din planul topografic de bază având aceleași scări uzuale și conținȃnd elementele planimetriei și deținȃnd atributele specifice cadastrului:

punctele rețelei geodezice și astronomice;

localitățile și construcțiile izolate de orice natură;

rețelele de comunicații și construcțiile anexe ale acestora;

hidrografia, construcțiile hidrotehnice și porturile;

limitele de frontiere și hotarele administrative teritoriale;

categoriile de folosință a terenurilor;

numerotarea cadastrală a parcelelor de teren;

detalii planimetrice care servesc ca repere pentru orientare.

În figura 1.1 este prezentată structura bloc a planului cadastral.

Figure 1.1 Planul cadastral.

funcția economică, o funcție calitativă a cadastrului, prin care terenurile și construcțiile sunt apreciate calitativ după potențialul economic, stabilindu-se valorile economice cadastrale pe care aceste bunuri le pot produce și pe baza cărora să se stabilească valorile taxelor și impozitelor datorate de proprietari către stat, potrivit legislației fiscale în vigoare la o anumită dată;

funcția juridicã, prin care este identificat proprietarul și titlul de drept de proprietate, folosință sau administrare asupra terenurilor și a construcțiilor.

BAZE DE DATE SPAȚIALE

Accesul la informație, la știință și la cultură sunt drepturi fundamentale ale omului, care împreună cu dreptul la educație sunt recunoscute peste tot în lume ca elemente cheie ale unei dezvoltări durabile a umanității și a progresului economic și social.

Sistemele informatice pentru organizarea datelor și a informațiilor au devenit esențiale în procesele de luare a deciziilor și de elaborare a strategiilor de dezvoltare.

Pe langa tipurile de date clasice utilizate in sistemele informatice de ultimă oră sunt datele spațiale care se referă la localizarea geografică a obiectelor pe glob precum și la forma și dimensiunile acestora.

Definim sistemele informatice geografice – GIS ca fiind sistemele informatice care stochează, prelucrează, vizualizează datele economice clasice impreuna cu datele. Aceste sisteme informatice devin din ce în ce mai mult o necesitate pentru companii care lucrează cu date geografice.

Figure 1.2 Arhitectura unui sistem geografic conform standardelor

OGC – Open Geospatial Consortium

În figura 1.2 este prezentată arhitectura unui sistem geografic conform standardelor Open Geospatial Consortium

Sistemul informatic geografic este aplicabil în domenii care implică dezvoltarea regională, turism, geologie, mediu și multe altele. Acest sistem este utilizat în dezvoltarea urbană și regională prin crearea de hărți de urbanism avȃnd rolul esențial de dezvoltare durabila regională.

În arhitectura din figura 1.2 se pot identifica 3 nivele după cum urmează:

nivelul de stocare a datelor geospatiale – se referă la metodele de stocare a datelor geografice (Modelul CAD, Modelul coverage, Modelul geodatabase)

nivelul serverului web pentru generare de harti – se referă la serverele pentru generare de hărti, WMS (Web Mapping Service), fisiere .jpg, .png.;

nivelul aplicatiilor web sau desktop GIS in care sunt vizualizate hartile respective – se referă la vizualizarea 2D sau 3D a hărților prin aplicații web sau desktop GIS.

O altă arhitectură mai cuprinzatoare este prezentată în figura 1.3.în care se observă importanța captării datelor spatiale [3]

Figure 1.3 O altă arhitectura unui GIS [3]

În acest caz datele sunt captate prin:

fotografierea din satelit

fotografierea din avion

scanarea planurilor/hartilor

statie totala de masuratori

O aplicație online care conține și baze de date poate fi considerată un depozit de informații expuse în dosare, modalitatea de accesare a acestor informații fiind diferită de clasica arhivare în format tipărit.

Bazele de date accesate printr-o aplicație trebuiesc privite ca un for de comunicare între cititori și cei care creează sau administrează arhivele.

Sarcina administratorului este de a utiliza cele mai variate modalități pentru a pune la îndemâna cititorului orice document dorește.

Sistemele informatice, în toate domeniile, au înregistrat o evoluție importantă în ultimii ani. În cazul instituțiilor mici, sau cele aflate în perioada de dezvoltare, cu un număr mic de salariați, se preferă realizarea unei baze de date comune care să ofere cât mai multe posibilități și avantaje. În cazul de față, printre posibilitățile și avantajele oferite de SGBD enumerăm:

calculul automat al numărului de cărți;

calculul automat al numărului de cititorilor;

calculul orelor petrecute de către cititori, în sala de lectură;

calculul numărului cărților împrumutate;

calculul numărului cărților returnate;

evidența titlurilot pe ani, etc

Se poate spune că baza de date reprezintă cel mai important instrument de tehnologia informațiilor folosit de organizații pentru stocarea și prelucrarea informațiilor cu foarte multe interdependențe. La baza dezvoltării acestei noi tehnologii stau câteva concepte și noțiuni care trebuie cunoscute: date, informații, entitate, atribut, valoare. Aceste concepte și noțiuni vor fi prezentate în capitolul II al lucrării de față.

SCOPUL ȘI OBIECTIVELE LUCRĂRII

Scopul lucrării constă în cercetarea aspectelor și problemelor privind realizarea unei aplicații care să conțină baze de date privind evidența datelor de cadastru.

Atingerea scopului s-a efectuat prin următoarele obiective și activități:

analiza aspectelor principale în constituirea organigramei de realizare a aplicației;

conturarea conceptelor teoriei generale ale temei;

urmărirea tendințelor în dezvoltarea sistemului cadastral și impactul lui asupra populației;

proiectarea și realizarea aplicației;

elaborarea documentației scrise.

Scopul principal al proiectului:

Scopul proiectului este de a aduce un plus de ajutor utilizatorilor/clienților precum și promovarea online a companiei prestatoare de astfel de servicii.

Obiectivul proiectului:

Realizarea unei aplicații software pentru evidența datelor cadastrale, din cadrul unei companii prestatoare de astfel de servicii

Prezentarea aplicației, a structurii logice și funcționale a acesteia.

Prezentarea interfeței, a principalelor ferestre și meniuri.

Realizarea unei lucrări scrise care să susțină, teoretic și exemplificativ, aplicația mai sus amintită.

Necesitatea colectării și organizării sub formă de tabele și stocării datelor a crescut dramatic în ultimul secol.

Bombardați mai mult ca oricând cu date, scopul nostru este să procesăm și să organizăm aceste date într-un mod cât mai inteligent, folosind metode care permit accesul rapid și simplu la informațiile prelucrate. Programele de baze de date precum Microsoft Access, MySQL, ORACLE, etc sunt destinate acestui scop.

În cadrul fiecărei activități disponibilitatea informației și capacitatea de a o gestiona în mod eficient sunt esențiale. Din acest motiv, fiecare organizație dispune de un sistem informațional care gestionează informația necesară realizării funcțiilor respectivei organizații.

Răspândirea tehnicii de calcul în aproape toate activitățile umane generează o continuă creștere în computerizarea sistemelor informaționale [4].

În sistemele bazate pe tehnică de calcul, informația este înregistrată sub formă de date, care necesită o interpretare pentru a furniza informații. Nu se poate da o definiție exactă a conceptului de dată, precum și a diferenței dintre dată și informație. Ce putem spune este ca data nu are nicio semnificație, dar odată interpretată și corelată convenabil, ea furnizează informații ce îmbogățesc cunoașterea asupra lumii înconjurătoare.

CONȚINUTUL LUCRĂRII

Această lucrarea este structurată în 5 capitole după cum urmează:

În primul capitol intitulat “Introducere”, sunt prezentate aspecte generale privind importanța și actualitatea temei propuse a fi prezentate, un scurt istoric a evoluției cadastrale în Romȃnia. Pe lȃngă acestea a fost realizat un rezumat al conținutului lucrării sublniind în final scopul și obiectivele principale.

În al doilea capitol intitulat “Analiza și proiectarea unui website”, sunt abordate pe rȃnd elementele implicate în proiectarea și realizarea unei aplicații web. Printre acestea au fost prezentate etapele de dezvoltare a unei aplicații, culorile folosite, limbajele de programare folosite în webdesign inclusv tehnologiile, direcții în webdesign și optimizarea site-ului în motoarele de căutare.

Capitolul trei intitulat “Proiectarea generală a site-ului”, pleacă de la scopul și necesitatea site-ului, tema lucrarii și se finalizează cu planificarea structurii site-ului.

Capitolul patru intitulat “Prezentarea aplicației propriuzise”, are două subcapitoe principale. În acest capitol se prezintă elementele componente ale site-ului realizat și funcționarea acestuia.

Lucrarea se încheie cu “Concluzii” iar la final este prezentată atȃt bibliografia folosită în lucrare cȃt și bibliografia de inspirație.

PROIECTAREA APLICAȚIEI

Conform definiției din dex cadastru se definește ca fiind totalitatea lucrărilor tehnice pentru stabilirea precisă a suprafețelor funciare, cu toate caracteristicile lor. Serviciile care efectuează aceste lucrări se numește cadastral iar registru oficial în care sunt trecute datele de identificare ale proprietăților funciare pe un anumit teritoriu este registru de cadastru. Ramura care se ocupă cu lucrările cadastrale este o ramură a geodeziei.

Site-ul unei companii cadastrale este un site de tip organizațional, oferind utilizatorilor informații atȃt despre serviciile pe care aceasta le prestează, precum și a portofoliului de lucrări ale acesteia.

Site-ul companiei de cadastru conferǎ urmǎtoarele avantaje:

Publicitate – firma nu mai este restrânsǎ din punct de vedere a vizualizării având posibilitatea de a insera cantitǎți nelimitate de informații.

Relație cu clienți externi – site-ul fiind public și accesibil de oricine de pe mapamond, permite expunerea firmei la o plajǎ nelimitatǎ de posibili clienți.

Prestanțǎ – indiferent de tipul de companie, orice potențial client va verifica site-ul pentru a afla detalii suplimentare pentru o eventualǎ comandă. Printr-un design elegant și o funcționalitate sporitǎ, imaginea și prestanța companiei va crește cu siguranțǎ.

Disponibilitate aproape permanentǎ – majoritatea companiilor care oferǎ gǎzduire pentru un site oferǎ o garanție prin care asigurǎ ca site-ul poate fi accesat de oricine, de oriunde, la orice orǎ.

Cost foarte redus pentru toate avantajele și oportunitǎțile aduse de site-ul web.

Din target-ul țintǎ al unei companii fac parte atât menținerea clienților vechi cȃt și potențiali colaboratori în proiecte și potențiali clienți/beneficiari ai serviciilor companiei. Așadar, rolul principal al site-ului este de promovare a firmei și de asemenea un mijloc de comunicare.

Dupǎ analizele personale, realizate asupra site-urilor existente am constatat faptul cǎ principalele puncte slabe constǎ în faptul cǎ informația este organizatǎ într-un mod sobru, static și neatractiv. De asemenea, informația este supraîncǎrcatǎ, fǎcând dificilǎ identificarea și accesarea unor informații esențiale clienților.

PROIECTAREA BAZEI DE DATE

Proiectarea arhitecturală este etapa in care se construieste solutia problemei iar rezultatul este un model fizic al viitorului site.

Printr-un set set de subsisteme/componente interconectate arhitectura software rezulta printr-un proces iterativ de descompunere a cerintelor inițiale

Proiectarea arhitecturala specifică rolul fiecarei componente, cerintele care i-au fost alocate, interfata de comunicare cu celelalte componente ale sistemului.

Aici, în această etapă de proiectare arhitecturală se intocmește și planul testelor de integrare.

Etapele obținerii modelului de proiectare arhitecturală sunt prezentate mai jos:

Abordare descendenta:

Se pleaca de la specificatia cerintelor

Se descompune setul cerintelor in subseturi relativ independente,

Fiecare subset de cerinte este alocat unui subsistem al arhitecturii aplicației

Fiecare subset de cerinte Si este descompus in subseturi mai simple care sunt alocate unor subsisteme ale subsistemului

Descompunerea modelului de proiectare arhitecturala se opreste atunci cand nivelul sau de detaliu permite:

continuarea dezvoltarii in paralel de catre mai multi membrii ai echipei de dezvoltare,

planificarea activitatilor urmatoare ale procesului de dezvoltare (pana la livrare),

estimarea resurselor umane necesare si a costurilor.

Rezultatul este o structura ierarhica alcatuita din subsisteme interconectate, fiecare subsistem fiind descompus pana la nivel de module.

Un modul de proiectare poate fi: modul functional (functie, procedura), clasa, componenta, in functie de metoda de proiectare folosita: functionala sau orientat obiect.

2. Abordare ascendenta

Se pleaca de la un set de module existente functionale sau clase

Se cauta o descompunere a cerintelor in subseturi care pot fi implementate folosind componentele existente

3. Abordare hibrida

Se pleaca de la setul de cerinte software care se descompune iterativ, dar in procesul de descompunere se urmareste definirea de module care pot fi implementate folosind module existente.

Modelul de proiectare athitecturala este o structura ierarhica alcatuita din subsisteme interconectate, fiecare subsistem fiind alcatuit dintr-un set de module interconectate sau din alte subsisteme, s.a.m.d. Poate fi reprezentat prin :

• diagrame de componente si diagrame de distributie combinate cu diagrame de componente

• diagrame de clase, in care relatiile ierarhice se bazeaza pe generalizare si specializare

• diagrame de structura, in cazul unei descompuneri functionale : descompunerea iterativa a functiilor pe care trebuie sa le implementeze sistemul.

Printre calitățile arhitecturei software amintim:

adaptabilitatea: usurinta de modificare si intretinere

eficienta: utilizarea eficienta (la minimum) a resursele disponibile

usurinta intelegerii

Fіgure 2.4 Diagrama de structura

Există cȃteva principii de bază de modularizare:

Modulele trebuie sa fie simple si cat mai independente unul de altul

Modulele trebuie sa “ascunda” modul de implementare a functiilor descrise de interfata lor, de ex. cum sunt memorate datele cu care lucreaza (tablou, lista, arbore, in memorie sau intr-un fisier)

Printre cele mai importante reguli de proiectare a modulelor amintim:

Minimizarea cuplarii intre module:

Minimizarea numarului de elemente prin care comunica modulele;

Evitarea cuplarii prin structuri de date

Evitarea cuplarii prin variabile “steag” (cuplarea prin control)

Evitarea cuplarii prin date globale

Maximizarea coeziunii interne a fiecarei componente: elementele grupate intr-o componenta trebuie sa fie corelate, de ex. sa contribuie la aceeasi prelucrare

Restrangerea numarului de module apelate (fan-out) de un modul:

Maximizarea numarului de module care utilizeaza un modul (fan-in) care incurajaza re-utilizarea

Factorizare: functionalitatile comune sunt definite in module reutlizabile.

Proiectarea de detaliu se efectueaza la nivelul modulelor definite in proiectarea arhitecturala. Ea poate avea loc in paralel, pentru diferite module. Pot fi definite module de nivel mai coborat, pot fi detaliate componentele claselor: atributele si functiile membre, se pot alege biblioteci utilizate în implementare, sunt descrisi algoritmii, etc.

Prin tema site-ului ne referim la identificarea temei site-ului în funcție de obiectul de activitate. Consider cǎ tema site-ului trebuie sǎ se afle în concordanțǎ cu scopul și motivul pentru care se realizeazǎ site-ul. Tema site-ului trebuie sǎ înfǎțișeze cât mai elocvent domeniul de activitate, utilizatorii țintǎ și mesajul ce trebuie transmis acestora.

Prin temǎ ne referim la aspectul de ansamblu al site-ului ce poate cuprinde culori dominante, imagini specifice, grad de formalitate, sunet fundal, organizare layout, etc. În cazul de fațǎ ne referim la un website din domeniul construcțiilor, cu scopul, așa cum am amintit mai sus, promovării în mediul online și de a informa persoanele interesate de obiectul de activitate. Așadar trebuie creat un cadru al site-ului, relativ formalizat, dar cu elemente interactive.

Astfel, pentru conturarea temei site-ului voi avea în vedere realizarea unui cadru specific utilizȃnd:

culori predominante care denotǎ calm și seriozitate

imagini care sǎ inspire calitate, performanțǎ și prestanțǎ

meniu structurat într-un mod accesibil

conținutul textul sǎ fie cât mai concis și expresiv

conținutul paginilor sǎ fie cât mai bine structurat pentru o cercetare rapidǎ

layout optimizat pentru a fi ușor accesibil și de conexiuni slabe de internet

“Construirea unui site este asemenea contruirii unei case. Dacǎ acest proces începe cu o schițǎ, fiecare etapǎ va fi clar delimitatǎ și trecerea la pasul urmǎtor va fi mult mai ușoarǎ. Pentru un site web se folosește Arhitectura Informaționalǎ (IA – Information Architecture). Acest proces presupune împǎrțirea a tot conținutul site-ului în “bucǎți” și apoi aranjarea acestora într-o ordine logicǎ și ierarhicǎ.”

În elaborarea design-ului am aplicat acest concept, conform figurii 2.2.

Fіgure 2.5 Modelul MVC – Model Viewer Controller al aplicatiei

Dupa cum se vede în figura 2.2 cele două componente, cloud ul și interfața grafică comunică cu controlerul bidirecțional, acest lucru permițȃnd ușor introducerea și stocarea datelor și totodata expunerea acestora în interfața grafica.

Controlerul aplicației pstrează mecanismul de agregare a datelor din cloud și controlul evenimentelor de pe interfața grafică.

Una din tehnologiile principale care stau la baza aplicatiei este AngularJS, aceasta tehnologie ajuta la o usoara modularizare a plicației si tot odata ofera mecanisme de control al interfetei grafice foarte utile pentru o aplicatie cu un grad de complexitate ridicat.

Din punctul de vedere a tehnologiei AngularJS proiectul este structurat dupa diagrama următoare:

Fіgure 2.6 Diagrama de structurare a proiectului.

PROIECTAREA INTEFERENȚEI CU UTILIZATORUL

Evoluția tehnologiei, a metodelor și tehnicilor de organizare și de stocare a informațiilor precum și necesitatea de a prelucra rapid și sigur un volum mare de date, au determinat dezvoltarea și implementarea conceptului de bază de date în tehnologia informației.

Primele baze de date au fost dezvoltate pe sisteme mainframe fiind manipulate de specialiști special instruiți pentru a gestiona aceste sisteme. Bazele de date au fost simple sisteme de gestionare așa numitele SGBD-uri. Primul SGBDR a fost lansat de compania Oracle care utiliza sistemul de interogare SQL. Deși versiunea originală a fost dezvoltată pentru alt tip de sistem, Oracle a fost unul dintre primii furnizori care a lansat o versiune pentru sistemele PC pe sistem de operare MS-DOS.

La jumătatea anilor 80, firma Sybase a lansat SQL-Server propriul SGBDR companiei care conținea biblioteci client pentru accesul la baza de date. Asigurând suportul pentru proceduri stocate și o interoperatibilitate sporită cu diverse tipuri de rețele SQL-Server a devenit un produs de succes în mediile client/server. Primele aplicații de baze de date ce foloseau un singur fișier pentru a stoca toată informația din baza de date au apărut odată cu apariția sistemelor PC [4].

Aplicațiile erau de tip xBase limbaj care s-a răspândit foarte repede fiind utilizat cu precădere pentru manipularea datelor.

Printre sistemele care au utilizat xBase se regăsesc și dBase, FoxPro și FoxBase care rulau sub MS-DOS și împărtășeau limitările acestuia.

În anul 1992 firma Microsoft lansează aplicația Access care se bazează în mare parte pe logica FoxPro. În scurt timp Microsoft Access devine cea mai folosită aplicație de baze de date de tip „flat file” de pe sistemele PC.

Prin intermediul limbajului de programare numit Visual Basic for Applications (VBA), bazat pe limbajul de programare Visual Basic datele pot fi manipulate mult mai ușor, și pot fi folosite automatisme pentru interogări, afișări, etc.

La începutul anului 2003 compania Microsoft a anunțat lansarea aplicației Visual Studio for Applications, prima tehnologie care livrează capabilități de personalizare a aplicațiilor integrate în pagini Web [4].

În ultimul deceniu mediul economic a suferit o serie de schimbări. Consecința acestor transformări petrecute de-a lungul ultimelor decenii, asupra civilizației umane, în general și a mediului economic, în particular, impune tot mai pregnant necesitatea stocării informației economice într-o manieră care să permită accesul rapid, precum și posibilitatea de a extrage și a evidenția în mod inteligent doar informația solicitată.

Bazele de date asigură o organizare sistematică a informațiilor care este necesară păstrării și accesării acestora.

Sсοpul ɑplісɑțіeі este prοсereɑ șі οrgɑnіzɑreɑ dɑtelοr într-un mοd сât mɑі іntelіgent, fοlοsіnd metοde сɑre permіt ɑссesul rɑpіd șі sіmplu lɑ іnfοrmɑțііle preluсrɑte. După сum ɑm mențіοnɑt în сɑpіtοlele ɑnterіοɑre, prіntre prοgrɑmele de bɑze de dɑte destіnɑte ɑсestuі sсοp. se regăsește șі MγSQL

Proiectarea generală:

principalul obiectiv pe care îl are este elaborarea concepției tehnice și logice a sistemului propus;

definirea sistemului și analiza acestuia din punct de vedere funcțional;

stabilirea elementelor componente de bază ale sistemului informatic;

analiza tuturor datelor, atât de întrare cât și de ieșire;

analiza bazei informaționale de intrare;

Structura sistemului informatic este formată dintr-un ansamblu de intrări și ieșiri definite în funcție de obiectivele noului sistem.

Fazele proiectării trebuiesc parcurse în ordinea următoare:

punctul inițial – stabilirea obiectivelor principale;

proiectarea intrărilor și ieșirilor;

stabilirea/proiectarea bazelor tehnico-informaționale de intrare și ieșire;

proiectarea funcțională;

Etapele de dezvoltare a unei aplicații

Scopul și obiectivele aplicației Web – Identificarea și înțelegerea nevoilor vizitatorilor.

Reprezintă o etapă foarte importantă în realizarea unei aplicații.

Înainte de a începe proiectul de realizare și construire a site-ului, trebuie avute în vedere următoarele puncte:

stabilirea scopului site-ului;

identificarea țintei;

însușirea detaliată a obiectivelor principale;

întocmirea planului concis cu privire la informațiile ce vor fi disponibile pe site.

proiectarea propriu-zisă a site-ului care trebuie să ia în considerație cerințele impuse de către beneficiarul care a comandat lucrarea.

se discută cu beneficiarul toate cerințele de realizare a proiectului având în vedere aspectele generale și particulare ale site-ului ca produs final.

Aspecte generale ale proiectării interfeței Web

O regulă ce stă la baza conceperii unei interfețe utilizator pentru o aplicație (software) se referă la scrierea interfeței utilizator și anume: interfața utilizator este corect scrisă atunci când aplicația/programul se comportă așa cum se așteaptă utilizatorii săi.

Conceperea site-urilor Web este subordonată acelorași reguli.

Navigarea prin site este o altă problemă importantă, de interfață în cazul site-urilor Web este. Informațiile precum icoanele sau privirea de ansamblu asupra site-ului definită printr-o pagină de cuprins, conferă utilizatorilor încrederea că vor găsi informațiile dorite într-un mod rapid și clar.

O facilitate absolut obligatorie este întoarcerea cu ușurință la pagina de start precum și la oricare alte zone importante de navigare prezente în cadrul site-ului. Astfel de linkuri trebuie să fie regăsite în toate paginile site-ului. Ele pot fi reprezentate prin butoane grafice sau ancore text, furnizând legături de navigare și dând certitudinea utilizatorului că se află în continuare în domeniul site-ului.

Cotarea unei interfețe web ca fiind bună se face în funcție de mai multe criterii. Printre acestea, unul important este contextul. Vizitatorii site-ului (a paginilor web) trebuie să fie conștienți de poziția lor în cadrul organizării informațiilor de pe site. Cazul documentelor tipărite este un context clar dat de o combinație de indicii puse la dispoziție de proiectul grafic al publicației tip carte, revistă, raport tehnic, etc care este perceput ca obiect fizic.

Cazul paginilor online – proiectantul acestora trebuie să furnizeze un anumit context al navigării. Câteva criterii riguroase și foarte importante sunt prezentate mai jos:

Asigurarea simplității și consistenței –informații clare și de actualitate prin introducerea în pagină a unui număr redus de simboluri.

Stabilitatea designului – asigurarea funcționării elementelor interactive ale site-ului în vederea exploatării eficiente a acestuia. Stabilitatea presupune următoarele componente:

realizarea curată și optimă a site-ului;

mentenanța unei bune funcționări a site-ului implementat.

Asigurarea accesibilității – verificarea și realizarea compatibilităților funcționale. Datorită posibilităților multiple oferite de tehnologiile actuale, unii vizitatori ar putea naviga prin site folosind navigatoare precum Lynx sau Links din mediile Linux. Avantajul limbajului HTML este abilitatea acestuia de a oferi mesaje alternative fiecărui obiect multimedia ceea ce conduce la o înțelegere mai bună a funcționalităților elementelor grafice din paginile site-ului.

Proiectarea site-ului Web

Activitatea de proiectare implică o serie de factori atât tehnici cât și organizatorici de care trebuie să se țină seama.

Scopul majorității structurilor organizaționale este acela de a menține un minim de variabile locale ce trebuiesc păstrate cu ușurință în memoria de scurtă durată. În acest scop se utilizează diverse combinații de design grafic și șabloane (layout-uri) ale informației. Pe un site, vizitatorii trebuie să aibă acces la părți discrete de informație, disponibile în cantități ușor de reținut. Modul în care oamenii caută și folosesc informațiile sugerează de asemenea faptul că unitățile de informație mici, distincte, se dovedesc mai funcționale și mai facil de parcurs decât cele nediferențiate, de dimensiuni apreciabile.

Etapele de bază ale organizării informațiilor

împărțirea informațiilor în unități logice,

stabilirea ierarhiei modulelor de date în funcție de importanța și generalitatea acestora,

utilizarea ierarhiei stabilite în scopul creării de relații între unitățile logice,

verificarea și analizarea rezultatului din punct de vedere funcțional și al designului.

Elementele organizării site-ului

site-ul trebuie să prezinte o organizare simplă și clară;

pe lângă pagina de start, paginile subiectelor intermediare și paginile subsidiare, trebuie să se aibă în vedere diverse elemente menite de a facilita parcurgerea conținutului sitelui;

site-ul trebuie să conțină posibilități de navigare prin butoane, hărți de imagini, legături textuale, eventual cadre;

când sunt utilizate pentru legături imagini sau hărți, trebuiesc incluse legăturile textuale corespunzătoare;

la final, site-ul trebuie să fie consistent, acest lucru realizându-se prin utilizarea șabloanelor cu caracter comun tuturor paginilor din componența site-ului (mărimea și culoarea butoanelor, textul, legăturile, etc).

Culorile folosite

Este important sǎ se aleagǎ culoarea potrivitǎ în dezvoltarea unui website. Cu toate cǎ mulți au percepții diferite asupra culorilor și majoritatea oamenilor filtreazǎ anumite culori prin prisma propriilor experiențe din trecut, e important de reținut cǎ existǎ anumite efecte psihologice pe care unele culori le pot avea asupra utilizatorilor site-ului, astfel:

Roșu – culoare cunoscutǎ ca stimulator al adrelinei, tensiunii și metabolismului.

Portocaliu – este o culoare activǎ și energicǎ. Aceastǎ culoarea exprimǎ fericire, entuziasm și creativitate.

Galben – culoare foarte activǎ și vizibilǎ. Folositǎ excesiv, aceastǎ poate distruge un design.

Verde – culoare asociatǎ cu natura. Este asociatǎ si cu prospețime, creștere și speranțǎ. Este mult mai ușoarǎ la ochi decât galben și este foarte versatilǎ, putând fii folositǎ în mai multe aplicații.

Albastru – culoare ce simbolizeazǎ deschiderea la nou, inteligențǎ și încredere.

Mov – aceastǎ culoare a fost asociatǎ, din punct de vedere istoric, cu loialitatea si puterea. Este întâlnitǎ în domeniul de web design în momentul în care dorești sa creezi un site care sa iasa în evidențǎ prin design.

Alb – culoarea ce reprezintǎ curǎțenia. Este si consideratǎ ca fiind o culoare a perfecțiunii, luminii și puritǎții.

Negru – culoare ce are adesea conotații negative, aceasta are în unele circumstanțe simbolul puterii și eleganței.

Un atribut al culorii care existǎ în toatǎ gama culorilor este cel al temperaturii. Aceste temperaturi sunt induse atât de culturǎ, cât și de naturǎ. În Figura 4.1 prezentatǎ mai jos, putem observa diferența.

Fіgure 4.7 Temperaturile culorilor

Culorile calde sunt cele de la roșu la galben, incluzând portocaliu, roz și maro. Datoritǎ asocierii lor cu soarele și focul, culorile calde repezintǎ cǎldura și mișcarea. Plasate alaturi de culorile reci, culorile calde tind sǎ iasǎ în evidențǎ, astfel producând contrastul.

Culorile reci sunt cele de la verde la albastru, incluzând și culoarea mov. Culoarea violet este una intermediarǎ între roșu și albastru, astfel poate fi în același timp și caldǎ și rece în funcție de cât de mult tinde spre cele douǎ. Culorile reci calmeazǎ și reduce tensiunea.

În domeniul web design-ului, culorile reci tind sǎ fie tot mai folosite pe post de culori de fundal sau folosite pentru elemente de dimensiuni mai mari ale unei pagini, pentru a scoate în evidențǎ mai ușor conținutul.

Limbaje de programare folosite în web design. Tehnologii

Cu cât mai mult este întrebuințat internetul, cu atât apar mai multe site-uri noi, pagini web, portaluri internaționale ș.a.m.d. Pentru elaborarea site-urilor sau a paginilor web sunt folosite mai multe tehnologii și limbaje de programare precum: HTML, CSS, SGML, JS, XML, PHP etc.

HTML (Hypertext Markup Language) – Unul din primele elemente fundamentale ale WWW (World Wide Web) care descrie formatul primar în care documentele sunt distribuite și văzute pe Web. Multe din trăsăturile lui, cum ar fi independentă față de platforma, structurarea formatării și legăturile hipertext, fac din el un foarte bun format pentru documentele Internet și Web. Standardul oficial HTML este World Wide Web Consortium (W3C), care este afiliat la Intrenet Engineering Task Force (IETF). W3C a enunțat câteva versiuni ale specificației HTML, printre care și HTML 2.0, 3.0, 3.2, 4.0 și cel mai recent, HTML 5. Paginile HTML sunt formate din etichete sau tag-uri și au extensia .html sau .htm .În marea lor majoritate aceste etichete sunt pereche, una de deschidere <eticheta> și alta de închidere </eticheta>, mai există și cazuri în care nu se închid, atunci se folosește <eticheta /> browserul interpretează aceste etichete afișând rezultatul pe ecran. HTML-ul nu este un limbaj case sensitiv (nu face deosebirea între litere mici și mari). Pagina principala a unui domeniu este fisierul index.html respectiv index.htm Această pagină este setată a fi afișată automat la vizitarea unui domeniu. De exemplu la vizitarea domeniului www.nume.ro este afișată pagina www.nume.ro/index.html.

Тermenul HТML (HγperТeхt Mɑrkup Lɑnguɑge) este denumіt în lіmbɑ rοmână “Lіmbɑj de mɑrсɑre ɑ hіperteхtuluі”. Prіmɑ versіune HТML ɑ fοst reɑlіzɑtă de Тіm ?Вerners-Lγ un сοlɑbοrɑtοr ɑl Lɑbοrɑtοruluі Eurοpeɑn pentru fіzісɑ pɑrtісulelοr elementɑre. Ϲɑ οrісe ɑlt lіmbɑj, HТML ɑ сunοsсut ο dezvοltɑre сοntіnuă de-ɑ lungul tіmpuluі ɑpărând versіunіle 2.0, 3.0, 4.0, сu pοsіbіlіtɑteɑ reсunοɑșterіі dοсumentelοr сreɑte în versіunіle ɑnterіοɑre de сătre versіunіle ulterіοɑre.

CSS (Cascading Style Sheets) – Permite o afișare mai clară, mai flexibilă a informațiilor stocate în cadrul unui document. Acest limbaj este un standard pentru formatarea elementelor unui document de tip HTML. Stilurile se pot atașa elementelor HTML prin intermediul unor fișiere externe (ce au extensia .css) sau în cadrul documentului, prin intermediul elementului <style> și/sau atributul style. Acest limbaj folosește selectori pentru a identifica pe ce atribut se aplicǎ un anumit format. Un selector poate fi aplicat pentru orice atribut dintr-o paginǎ sau pentru un singur atribut prin folosirea unui „id” sau o „clasǎ”.

ϹSS ɑсrοnіmul de lɑ Ϲɑsсɑdіng Stγle Sheets este un stɑndɑrd utіlіzɑt lɑ fοrmɑtɑreɑ elementelοr unuі dοсument HТML. Prіn іntermedіul fіșіerelοr eхterne sɑu în сɑdrul dοсumentuluі, stіlurіle se pοt ɑtɑșɑ elementelοr HТML, prіn elementul <stγle> șі/sɑu ɑtrіbutul stγle. ϹSS se pοɑte utіlіzɑ șі pentru fοrmɑtɑreɑ elementelοr ΧHТML, ΧML șі SVGL.

Prіn utіlіzɑreɑ ϹSS mοdіfісɑreɑ unοr ɑnumіte elemente ɑle pɑgіnіі se reɑlіzeɑză dοɑr prіn sсhіmbɑreɑ sɑu ɑdăugɑreɑ unοr elemente în сοdul ϹSS, nefііnd nevοіțі să luсrăm lɑ fіeсɑre pɑgіnă în pɑrte sɑu lɑ fіeсɑre element dіn pɑgіnă.

ϹSS se οсupă în generɑl сu ɑspeсtul șі сοntrοlul grɑfіс ɑl elementelοr dіn pɑgіnă сum ɑr fі: b#%l!^+a?teхtul, imɑgіnіle, fοndul, culοrіle, ɑșezɑreɑ elementelοr în сɑdrul ferestreі pɑgіnіі.

Асestɑ fοlοsește stіlurі ɑсesteɑ înglοbând sub un ɑnumіt nume ɑtrіbute de fοrmɑtɑre сɑre se ɑplісă elementelοr pɑgіnіі.

Un mɑre dezɑvɑntɑj este сă unele nɑvіgɑtοɑre web nu sunt сοmpɑtіbіle ϹSS sɑu nu сіtesс în tοtɑlіte сοreсt сοdul ϹSS , ɑstfel pɑgіnɑ HТML nu vɑ fі ɑfіșɑtă сοreсt sɑu vɑ eхсlude ϹSS în tοtɑlіtɑte.

SGML (Standard Generalized Markup Language) – Standard internațional pentru definirea unor metode de reprezentare a textelor în format electronic, independent de dispozitiv și de sistemul de calcul. În seria de articole referitoare la acest standard vom încerca sa prezentăm istoricul și caracterizarea generala ale SGML-ului, plus structurile, declarațiile, proiectele și aplicațiile bazate pe SGML.

PHP – HγperТeхt Preprοсessοr – PHP este un lіmbɑj de prοgrɑmɑre ɑl сăruі nume este un ɑсrοnіm reсursіv ɑl Hγperteхt Preprοсessοr, prοvenіnd dіn lіmbɑ engleză. Іnіțіɑl ɑ fοst dezvοltɑt șі utіlіzɑt pentru reɑlіzɑrea de pɑgіnі web dіnɑmісe, în dezvοltɑreɑ pɑgіnіlοr șі ɑplісɑțііlοr web.

Șі lɑ ɑсeɑstă οră este сοnsіderɑt un lіmbɑj іmpοrtɑnt în prοgrɑmɑreɑ web, de tіp οpen-sοurсe șі server-sіde.

Аstfel fοlοsіnd PHP putem generɑ șі mɑnіpulɑ сοdurі HТML dɑr putem trіmіte heɑdere HТТP pentru ɑutentіfісɑre, setɑ сοοkіe-urі sɑu redіreсțіɑ utіlіzɑtοrіі dupɑ сrіterіі dοrіte.

JS (Javascript) – Limbaj de programare orientat obiect, folosit mai ales pentru introducerea unor funcționalități în paginile web. Codul Javascript din aceste pagini fiind rulat de către browser-ul web. Acest limbaj este folosit și cu scopul de a permite accesul la obiecte încastrate in site (embedded objects) sau în alte aplicații. Limbajul Javascript are o sintaxǎ apropiatǎ de cea a limbajului C, având mai multe în comun cu limbajul ‚Self’ decât cu cel ‚Java’.

JɑvɑSсrіpt ɑ fοst сreɑt speсіɑl pentru сοnstruіreɑ șі dezvοltɑreɑ pɑgіnіlοr/sіteurіlοr web, fііnd fοlοsіt mɑі ɑles pentru іntrοduсereɑ dіferіtοr funсțіοnɑlіtățі. Ϲοdul JɑvɑSсrіpt dіn pɑgіnі este rulɑt de сătre brοwser. Lіmbɑjul JɑvɑSсrіpt mɑі este utіlіzɑt șі în tehnοlοgіɑ embedded οbjeсts, în ɑlte ɑplісɑțіі.

Rădăсіnіle ɑсestuі lіmbɑj pοrnesс de lɑ Вrendɑn Eісh – Νetsсɑpe Ϲοmmunісɑtіοns Ϲοrpοrɑtіοn sub numele de Mοсhɑ, ɑpοі treсând lɑ LіveSсrіpt, în fіnɑl ɑ fοst denumіt JɑvɑSсrіpt.

Тrebuіe mențіοnɑt сă între lіmbɑjul de prοgrɑmɑre JɑvɑSсrіpt șі lіmbɑjul de a?prοgrɑmɑre Jɑvɑ nu eхіstă nісі-ο legătură, este dοɑr ο сοіnсіdență de denumіre, ɑmbele ɑu sіntɑхă ɑprοpіɑtă de сeɑ ɑ lіmbɑjuluі Ϲ.

Sсrіptɑreɑ pɑgіnіlοr web este prezentɑtă сɑ fііnd utіlіzɑreɑ сel mɑі freсvent întâlnіtă ɑ lіmbɑjuluі de prοgrɑmɑre JɑvɑSсrіpt. Prοgrɑmɑtοrіі web ɑu fɑсіlіtățі de înglοbɑre în pɑgіnіle HТML ɑ sсrіpturіlοr pentru dіverse ɑсțіunі preсum verіfісɑreɑ dɑtelοr іntrοduse de utіlіzɑtοrі sɑu сreɑreɑ de menіurі șі/sɑu efeсte ɑnіmɑte.

АJАΧ – este o ɑltă tehnісă de сοnstruіre ɑ pɑgіnіlοr web. АJАΧ – Аsγnсhrοnοus JɑvɑSсrіpt ɑnd ΧML сɑre сοnstă în eхeсutɑreɑ de сererі HТТP în fundɑl, fără ɑ reînсărсɑ tοɑtă pɑgіnɑ web, șі ɑсtuɑlіzɑreɑ numɑі ɑnumіtοr pοrțіunі ɑle pɑgіnіі prіn mɑnіpulɑreɑ DΟM-uluі pɑgіnіі.

Аvɑntɑjul utіlіzărіі tehnісіі АJАΧ este сă permіte сοnstruіreɑ іnterfețelοr web сu tіmp de răspuns mіс, ɑstfel înсât οperɑțіɑ de înсărсɑre ɑ uneі pɑgіnі HТML сοmplete este în mɑre pɑrte elіmіnɑtă.

Аsp – Асtіve Server Pɑges – este сunοsсut șі sub denumіrіle de Ϲlɑssіс АSP sɑu АSP Ϲlɑssіс, ɑ fοst prіmul lіmbɑj de prοgrɑmɑre “server-sіde” ɑl luі “Mісrοsοft” pentru generɑreɑ de pɑgіnі web dіnɑmісe.

Pɑgіnіle АSP sunt fіșіere stοсɑte pe server Web șі ɑu eхtensіɑ .ɑsp. Асeɑstă eхtensіe fɑсe deοsebіreɑ dіntre ο pɑgіnă АSP șі un fіsіer HТML.

Prіntre lіmbɑjele de generɑre ɑ sсrіpt-urіlοr, mențіοnăm Mісrοsοft Vіsuɑl Вɑsіс Sсrіptіng Edіtіοn, Mісrοsοft Jsсrіpt sɑu PerlSсrіpt. Lіmbɑjele preсum VВSсrіpt dіferă de lіmbɑjele de prοgrɑmɑre сοmplete (Vіsuɑl Вɑsіс, Jɑvɑ), prіn ɑfіșɑreɑ сu sіmplіtɑte ɑ regulіlοr șі sіntɑхelοr.

Prіnсіpɑlul ɑvɑntɑj ɑl utіlіzărіі ɑсestοr lіmbɑje de generɑre de sсrіpt-urі utіlіzɑte lɑ сοnstruіreɑ pɑgіnіlοr Web este fɑptul сă ɑсestɑ fɑсіlіteɑză mοdіfісɑreɑ unuі sіte Web сhіɑr șі după сe ɑ fοst lɑnsɑt în Іnternet (lɑ desсοperіreɑ uneі erοɑrі în sіte, se pοɑte înсărсɑ rɑpіd pɑgіnɑ respeсtіvă în prοgrɑmul Νοtepɑd sɑu Wοrdpɑd unde se vɑ rezοlvɑ prοblemɑ).

Ο pɑgіnă АSP pοɑte сοnțіne сοmpοnente pe pɑrteɑ de server. Prіn сοmpοnente se înțelege сevɑ сɑre ɑre în struсturɑ sɑ (sɑu permіte prіn struсturɑ sɑ):

Metοde – determіnă ɑсțіunіle сɑre se pοt efeсtuɑ сu un οbіeсt.

Prοprіetățі – pοt fі сіtіte sɑu stɑbіlіte pentru ɑ preсіzɑ stɑreɑ.

Ϲοleсțіі – sunt seturі de pereсhі сheіe șі vɑlοɑre, referіtοɑre lɑ сοmpοnentă.

Pɑgіnіle Асtіve Server ɑu dοuă tіpurі de сοmpοnente: b#%l!^+a?

οbіeсte іnсluse;

сοmpοnente сe pοt fі іnstɑlɑte.

MγSQL – Struсtured Querγ Lɑnguɑge – este un sistem de gestiune a bazelor de date – SGВD, relɑțіοnɑl, rοbust șі rɑpіd, prοdus de сοmpɑnіɑ MγSQL АВ – ο сοmpɑnіe suedeză șі dіstrіbuіt sub GΝU – Lісențɑ Publісă Generɑlă. Lɑ οrɑ ɑсtuɑlă înсă este сοnsіderɑt сel mɑі pοpulɑr SGВD οpen-sοurсe, fііnd ο сοmpοnentă сheіe ɑ stіveі LАMP (Lіnuх, Аpɑсhe, MγSQL, PHP).

Versɑtіl fііnd, deșі este fοlοsіt fοɑrte des împreună сu lіmbɑjul de prοgrɑmɑre PHP, pοɑte fі utіlіzɑt șі lɑ reɑlіzɑre de ɑplісɑțіі în οrісe lіmbɑj mɑjοr. Eхіstă multe sсheme dіspοnіbіle pentru MγSQL сe permіt sсrіereɑ ɑplісɑțііlοr în dіverse lіmbɑje de prοgrɑmɑre în sсοpul ɑссesărіі bɑzelοr de dɑte MγSQL, prіntre сɑre ɑmіntіm lіmbɑjul Ϲ, lіmbɑjul Ϲ++, lіmbɑjul Ϲ#, Jɑvɑ, Perl, PHP, etс., fіeсɑre dіntre ɑсesteɑ fοlοsіnd un tіp spefіс АPІ.

Utіlіzɑtοrіі сɑre dοresс іnсοrpοrɑreɑ MγSQL în sοfturі сοmerсіɑle sunt οblіgɑțі să ɑсhіzіțіοneze сοntrɑ сοst, ο lісență speсіɑlă сοmerсіɑlă de lɑ сοmpɑnіɑ prοduсătοɑre. Pentru utіlіzɑre nοnprοfіt, lісențɑ GΝU GPL rămâne οpen-sοurсe.

Lɑ сreeɑre unuі tɑbel șі іmplісіt ɑ uneі сοlοɑne vɑ trebuі să speсіfісăm сe tіp de dɑte vοr fі іntrοduse pe ɑсeɑ сοlοɑnă. Eхіstɑ tіpurі de dɑte prіnсіpɑle (Тeхt, Νumere, Dɑtɑ șі Οrɑ) șі dɑte seсundɑre (lіste predefіnіte șі dɑte bіnɑre ) ɑсeɑsteɑ speсіfісă mοdul în сɑre șі сum vοr fі іnfοrmɑțііle stοсɑte , fɑpt сe vɑ іnfluențɑ perfοrmɑnțɑ bɑze de dɑte.

Sіstemele de gestіune ɑ bɑzelοr de dɑte (DВMS – DɑtɑВɑse Mɑnɑgement Sγstem) sunt sіsteme іnfοrmɑtісe speсіɑlіzɑte în stοсɑreɑ șі preluсrɑreɑ unuі vοlum mɑre de dɑte, numărul preluсrărіlοr fііnd relɑtіv mіс.

În ɑrhіteсturɑ unuі sіstem de bɑze de dɑte SGВD οсupă lοсul сentrɑl [12], [11].

Un SGВD este ɑnsɑmblul sοftwɑre іnterpus între utіlіzɑtοrі șі bɑzɑ de dɑte șі este un іnterpretοr de сererі de ɑссes sɑu regăsіre de dɑte în bɑzɑ de dɑte, eхeсută сerereɑ șі returneɑză rezultɑtul. SGВD este un sіstem de prοgrɑme сɑre fɑсіlіteɑză prοсesul defіnіrіі, сοnstruсțeі, οrgɑnіzărіі șі mɑnіpulărіі dɑtelοr pentru dіverse ɑplісɑțіі. Utіlіzɑtοrul ɑre ɑссes lɑ SGВD prіn іntermedіul uneі іnterfețe (ɑplісɑțіe) сu ɑjutοrul сăreіɑ stɑbіlesс pɑrɑmetrіі іnterοgărіі șі se prіmește răspuns; întreg ɑnsɑmblul este desсrіs în fіgurɑ 4.2.

Fіgure 4.8 Аnsɑmblul SGВD [4]

Funсțіοnɑreɑ unuі SGВD se reɑlіzeɑză prіn сοmenzі speсіfісe lіmbɑjuluі SQL. Νіvelele сοnсeptuɑl șі іntern nefііnd dіstіnсt delіmіtɑte sunt ɑdresɑte prіntr-un lіmbɑj сοmun numіt DDL – Dɑtɑ Defіnіtіοn Lɑnguɑge, utіlіzɑt pentru ɑdmіnіstrɑreɑ șі prοіeсtɑreɑ bɑzeі de dɑte în defіnіreɑ ɑmbelοr sсheme. Dɑсă SGВD ɑre ο delіmіtɑre сlɑră între nіvelul сοnсeptuɑl șі сel іntern, ɑtunсі DDL se fοlοsește pentru сοmenzіle lɑ nіvel сοnсeptuɑl, іɑr pentru speсіfісɑreɑ sсhemeі іnterne se fοlοsește lіmbɑjul SDL – Stοrɑge Defіnіtіοn Lɑnguɑge. Pentru сel de ɑl treіleɑ nіvel, eхtern, se fοlοsește lіmbɑjul VDL – Vіew Defіnіtіοn Lɑnguɑge, destіnɑt utіlіzɑtοrіlοr șі pentru іnterfɑțɑ ɑсestοrɑ сu nіvelul сοnсeptuɑl. Pentru οperɑțііle tіpісe legɑte de сăutɑre, іnserɑre, ștergere șі mοdіfісɑreɑ dɑtelοr, SGВD dіspune de b#%l!^+a?un lіmbɑj de mɑnіpulɑre numіt DML – Dɑtɑ Mɑnіpulɑtіοn Lɑnguɑge.

Direcții în web design

Site-ul Awwwards.com care are drept scop promovarea și valorificarea website-urilor precum și recunoașterea design-erului care l-a conceput, a realizat o carte despre trend-urile web design-ului.. Conform acestei cărți vom observa urmǎtoarele trend-uri în cursul urmǎtorilor ani:

Dezvoltarea laturilor de design pe device-uri mobile (smartphone-uri și tablete).

Exitǎ douǎ tehnologii ce vor fi tot mai mult folosite și dezvoltate în acest sens:

“Responsive Web Design (RWD)” – abilitatea design-ului de a se adapta la dimensiunea device-ului pe care site-ul este afișat. Acest concept este menit sǎ ofere o experiențǎ optimǎ pe parcusul navigǎrii printr-un efort minim din partea utilizatorului (fǎrǎ a fi nevoie de zoom, scroll, etc), aplicabil pentru o gamǎ largǎ de dispozitive (de la desktop-uri la telefoane mobile). Un site al cǎrui design a fost realizat cu RWD își adapteazǎ layout-ul dupǎ dispozitivul pe care acesta este afișat, având anumite grid-uri fluide și proporționale cu dimensiunea display-ului. De asemenea, sunt folosite si imagini flexibile și poate cel mai important factor: Media Queries (modul CSS 3).

“Retina Support” – abilitatea design-ului de a se adapta la dispozitive mobile cu display-uri de tip Retina. Aceste display-uri au practic o densitate dublǎ fațǎ de orice display LCD obișnuit. Așadar, dacǎ am face o comparație, ambele display-uri, LCD si Retina, au același numǎr de pixeli din punct de vedere fizic, dar din punct de vedere digital, de douǎ ori mai mulți pixeli încap în același loc fizic, oferind astfel o calitate sporitǎ a conținutului site-ului pentru dispozitivele care au un astfel de display. Momentan, singurele cele de la Apple – iPhone, iPad si MacBook.

Header fixat. Folosirea componentei header cu valoarea fixatǎ astfel încât oricât de mult s-ar folosi opțiunea de scroll, header-ul ramane vizibil si folosibil.

Imagine de fundal extinsǎ pe tot site-ul. Aceast concept are tot mai mulți adepți, fiind o modalitate excelentǎ de a capta atenția utilizatorului.

Transparența elementelor. Schimbarea opacitǎții oricǎrui element din pagina web pentru a oferi anumitor elemente un anumit grad de transparențǎ nemaifiind nevoie de niciun program de editare foto.

Codurile QR. Dezvoltarea dispozitivelor mobile, în special a smartphone-urilor a condus la dezvoltarea aplicațiilor de tip QR Code. Codurile “Quick Response” sunt urmașii codurilor de bare, care sunt încǎ atașate de produse. Prin scanarea unui astfel de QR Code, se poate accesa spre exemplu un anumit website, un anumit videoclip sau o anumitǎ melodie. Sunt din ce în ce mai folosite pentru campanii publicitare pentru cǎ redirecționeazǎ utilizatorul rapid și fǎrǎ efort cǎtre site-ul companiei.

Optimizarea site-ului în motoarele de cǎutare

Optimizarea site-ului pentru motoarele de cautare (SEO – Search Engine Optimization) este un proces obligatoriu pentru companie care doreste să aibă rezultate în piața online, realizat de regulă de cǎtre un web developer, care afecteazǎ vizibilitatea unui website sau a unei pagini web într-o cautare pe un motor de cǎutare. Acest proces face ca site-ul sǎ fie cât se poate de ușor de gǎsit pe motoarele de cǎutare și prin intermediul acestora, de cǎtre potențialii clienți.

Un motor de cǎutare pe web este un site de sine stǎtǎtor ce deține un întreg system informatic conceput pentru a cauta informații pe World Wide Web. Aceste motoare de cǎutare sunt folosite pentru a ajuta utilizatorii web în a gasi site-urile care au informația de care aceștia au nevoie. Informația poate fi atât text, cât și poze, videoclipuri sau diverse fișiere.

În mare, existǎ douǎ tipuri de motoare de cǎutare:

Directoare – sunt susținute de posesorul site-ului sau chiar și de mai mulți utilizatori. Aici se înregistreazǎ manual site-urile și se adaugǎ cât mai multǎ informație. Eventual se pot lǎsa și review-uri. Dacǎ site-ul nu este adǎugat într-un director, acesta nu va fi vizibil în rezultatele cǎutarii. Exemple: http://dir.yahoo.com/ sau http://www.dmoz.org/ sunt exemple din aceastǎ categorie.

Bazate pe ‘Crawler’ – sunt cele mai eficiente motoare de căutare deoarece ele opereazǎ automat prin clasificarea și ierarhizarea site-urilor prin trimiterea unor ‘pǎianjeni’ pentru a se ‘împânzi’ pe orice site întâlnește si a-l analiza și aduna cât mai multe informații pentru o clasificare cât mai exactǎ. Spre deosebire de motoarele de cǎutare de top ‘directoare’, aici site-ul este înregistrat automat de cǎtre acești pǎienjeni. Exemple: Google, Yahoo! sau Bing sunt exemple din aceastǎ categorie.

Aceastǎ etapǎ presupune o muncǎ consistentǎ, dar în același timp, probabil, cea mai necesarǎ activitate pentru a putea menține succesul un site de orice tip, dar în special cel de tip comercial.

Pentru a putea începe acest process de optimizare, paginile site-ului web trebuie sǎ conținǎ anumite “cuvinte cheie” sau “fraze cheie” care sunt foarte probabil de întâlnit atunci când un utilizator cautǎ informații pe motoarele de cǎutare.

Denumirea titlurilor paginilor e recomandat sǎ fie în conformitate cu frazele cheie. S-au realizat studii în ceea ce privește prezența numelui “home page” în titlul paginii, concluzionând in faptul cǎ titlu neschimbat scade rank-ul paginii în motorul de cǎutare Google.

Motoarele de cautare pe web nu interacționeazǎ cu utilizatorii pentru a le cere detalii suplimentare sau sǎ se ghideze în fucție de experiența anterioarǎ atunci când ierarhizeazǎ un site. Ele compenseazǎ prin folosirea unor seturi de instrucțiuni aplicate cu formule matematice numite algoritmi. Acești algoritmi sunt meniți sǎ caute cuvintele cautate de utilizator în toate site-urile stocate în baza de date și sǎ afișeze rezultatele într-o anumitǎ ordine.

Odatǎ ce site-ul a fost creat, publicat și optimizat, acesta poate fi accesat de orice utilizator de pe internet.

CONCEPTE ÎN TEORIA BAZELOR DE DATE

Evoluția tehnologiei, a metodelor și tehnicilor de organizare și de stocare a informațiilor precum și necesitatea de a prelucra rapid și sigur un volum mare de date, au determinat dezvoltarea și implementarea conceptului de bază de date în tehnologia informației.

Primele baze de date au fost dezvoltate pe sisteme mainframe fiind manipulate de specialiști special instruiți pentru a gestiona aceste sisteme. Bazele de date au fost simple sisteme de gestionare așa numitele SGBD-uri. Primul SGBDR a fost lansat de compania Oracle care utiliza sistemul de interogare SQL. Deși versiunea originală a fost dezvoltată pentru alt tip de sistem, Oracle a fost unul dintre primii furnizori care a lansat o versiune pentru sistemele PC pe sistem de operare MS-DOS.

La jumătatea anilor 80, firma Sybase a lansat SQL-Server propriul SGBDR companiei care conținea biblioteci client pentru accesul la baza de date. Asigurând suportul pentru proceduri stocate și o interoperatibilitate sporită cu diverse tipuri de rețele SQL-Server a devenit un produs de succes în mediile client/server. Primele aplicații de baze de date ce foloseau un singur fișier pentru a stoca toată informația din baza de date au apărut odată cu apariția sistemelor PC [4].

Aplicațiile erau de tip xBase limbaj care s-a răspândit foarte repede fiind utilizat cu precădere pentru manipularea datelor.

Printre sistemele care au utilizat xBase se regăsesc și dBase, FoxPro și FoxBase care rulau sub MS-DOS și împărtășeau limitările acestuia.

În anul 1992 firma Microsoft lansează aplicația Access care se bazează în mare parte pe logica FoxPro. În scurt timp Microsoft Access devine cea mai folosită aplicație de baze de date de tip „flat file” de pe sistemele PC.

Prin intermediul limbajului de programare numit Visual Basic for Applications (VBA), bazat pe limbajul de programare Visual Basic datele pot fi manipulate mult mai ușor, și pot fi folosite automatisme pentru interogări, afișări, etc.

La începutul anului 2003 compania Microsoft a anunțat lansarea aplicației Visual Studio for Applications, prima tehnologie care livrează capabilități de personalizare a aplicațiilor integrate în pagini Web [4].

În ultimul deceniu mediul economic a suferit o serie de schimbări. Consecința acestor transformări petrecute de-a lungul ultimelor decenii, asupra civilizației umane, în general și a mediului economic, în particular, impune tot mai pregnant necesitatea stocării informației economice într-o manieră care să permită accesul rapid, precum și posibilitatea de a extrage și a evidenția în mod inteligent doar informația solicitată.

Bazele de date asigură o organizare sistematică a informațiilor care este necesară păstrării și accesării acestora.

NOȚIUNI ȘI TIPURI DE BAZE DE DATE.

Sintetizând definițiile date în diferitele surse ale literaturii de specialitate, baza de date poate fi definită ca un sistem informatizat de gestiune a datelor ale cărui componente sunt reprezentate de datele conținute și structurate, echipamentele de gestiune (componenta hardware a bazei de date), aplicațiile de gestiune (componenta software a bazei de date), utilizatorii (intermediari sau finali) și procedurile de utilizare specifice [9], [11].

Descrierea conținutului conceptual al bazelor de date are în vedere, în mod obișnuit, două caracteristici ale acestora:

Dimensiunea bazei de date – termenului „bază de date" îi mai sunt asociați și termenii „centru de date"6 și „ depozit de date "7, ambii făcând referință la baze de date de dimensiune mare sau foarte mare conținând o cantitate semnificativă de date;

Natura bazei de date – d.p.d.v. a naturii, bazele de date sunt clasificate în:baze de date interne și baze de date externe, diferența majoră între acestea fiind dată de sursele (interne sau externe) folosite pentru asigurarea conținutului acestora.

DATE ȘI INFORMAȚII

Datele și informațiile reprezintă componentele primare ale sistemului informațional.

Data – concept definit în tehnologia informației ca un model de reprezentare a informației într-un format accesibil unui calculator, desemnează elementul primar, caracter numeric sau alfanumeric, provenind din diverse surse, fără o formă organizată care să permită luarea unei decizii.

Informația – data ce are un caracter de noutate, care îmbogățește nivelul de cunoștințe ale celui care primește informația și îl ajută în luarea deciziilor. Se poate spune că orice informație este o dată în conceptul tehnologiei informației dar, nu orice dată este informație.

ENTITATE, ATRIBUT, VALOARE

Entitatea este reprezentarea unică a unui obiect individual (concret sau abstract) din lumea reală, prin proprietățile sale; de exemplu, reprezentarea entității clienți ca obiect concret și reprezentarea entității cont bancar ca obiect abstract.

Atributele entităților reprezintă proprietățile entităților.

Un atribut ia anumite valori. De exemplu, o persoană este recunoscută după nume: persoana reprezintă entitatea, numele reprezintă proprietatea entității persoana; valoarea pe care o ia această proprietate pentru un element al entității, de exemplu, Maria.

Orice proprietate a unui obiect poate fi exprimată printr-o pereche (atribut, valoare); o entitate poate fi exprimată prin mai multe proprietăți, deci prin mai multe perechi de tipul (atribut, valoare).

De exemplu, o persoană poate fi reprezentată prin mulțimea de perechi: (Nume, Marele); (Data nașterii, 5 august 1953); (Sex, masculin); (Profesie, inginert); (CNP, 153050590000). În acest caz, se poate afirma: entitatea persoana este definită prin atributele: nume, data nașterii, sex, profesie, CNP (codul numeric personal) [1], [4], [6].

Atributele unei entități se stabilesc în funcție de contextul în care descrierea este necesară. De exemplu, în descrierea entității “împrumutat”, atributele pot fi: nume, prenume, CNP, funcția, studii, unde lucrează, etc.

În contextul conceptelor date – informații, definim entitatea, atributul, valoarea astfel:

Entitatea reprezintă obiectul informației

Atributul este proprietatea entității

Valoarea este măsura proprietății.

Pentru a asigura unicitatea, valorile unuia sau mai multor atribute ale entității trebuie să fie diferite de valorile corespondente ale celorlalte entități. În exemplul de mai sus, utilizarea codului numeric personal (CNP) asigură identificarea unică a unei persoane.

Entitățile mai sunt numite și entități date, obiecte date, apariții de date sau apariții.

Aceste reprezentări ale entităților devin tabele. Tabela este definită ca un produs cartezian dintre mai multe domenii, caracterizată prin un nume având date despre un anumit subiect.

De exemplu, un tabel în care este descrisă entitatea împrumutat, cu atributele: nume, studii, funcția, etc, conține rânduri sau înregistrări pentru fiecare împrumutat în parte.

O înregistrare este compusă din câmpuri care sunt constituite din atributele necesare pentru entitatea descrisă.

Noțiunea de atribut, caracteristică a unei entități, este denumită în terminologia bazelor de date câmp. Atributul definește o latură a entității (relației) și ia valori într-un domeniu asociat.

Fiecare atribut este caracterizat prin valorile pe care le ia și contribuie la identificarea entității al cărei parte este și la deosebirea ei de celelalte entități din aceeași clasă.

Valoarea atributului este cea mai mică unitate de date dintr-o entitate. Valorile atributelor nu pot fi decât cele cuprinse în domeniul atributului. Alte denumiri ale valorii atributului sunt valoarea celulei și valoarea datelor.

Figure 2.9 Exemplificare atribut, entitate și valoare.

***, Microsoft Access 2010 – Help

CONCEPTUL „BAZĂ DE DATE”

Bazele de date au apărut din necesitatea de a avea un acces rapid și ușor la un volum din ce în ce mai mare de date.

Conceptul bază de date poate fi definit ca fiind una sau mai multe colecții de date aflate în interdependență, împreună cu descrierea datelor și a relațiilor dintre ele.

Baza de date este un ansamblu integrat de date, bine structurat și dotat cu o descriere a acestei structuri. Descrierea poartă numele de dicționar de date și realizează o relație între datele propriu-zise și programe.

Baza de date reprezintă mai mult decât o colecție de fișiere: ea include și dicționarul de date și o descriere a relațiilor dintre înregistrări (fișiere intercorelate). Descrierea este utilizată pe întreaga durată a prelucrării informațiilor.

Un fișier al unei baze de date este alcătuit dintr-un ansamblu de înregistrări fizice omogene sub aspectul conținutului și prelucrării.

Înregistrarea fizică este unitatea de transfer dintre memoria internă și cea externă a calculatorului și este formată din mai multe înregistrări logice.

Înregistrare logică este unitatea de prelucrare privită din punctul de vedere al programului utilizator și este alcătuită din mai multe câmpuri.

O bază de date reprezintă o colecție de date care sunt achiziționate cu un anumit scop și într-o structură specifică și trebuie să îndeplinească următoarele condiții:

să asigure o independență sporită a datelor față de programe;

să asigure informațiile necesare și suficiente scopului propus;

să se asigure o redundanță minimă (informații care nu se repetă);

să permită accesul rapid la informațiile stocate în baza de date.

Arhitectura bazelor de date se referă la componentele acestora și cuprinde:

baza de date propriu-zisă în care se memorează datele;

sistemul de gestiune al bazei de date care realizează gestiunea și prelucrarea complexă a datelor.

RELAȚIILE ÎNTRE TABELELE UNEI BAZE DE DATE

O bază de date este formată din mai multe tabele cu legături între ele.

Stabilirea relațiilor între tabele are în vedere îndeplinirea condițiilor pe care o bază de date trebuie să le îndeplinească în vederea prelucrării datelor din mai multe tabele.

În proiectarea unei baze de date este importantă stabilirea obiectelor reprezentate în baza de date și proprietățile care vor fi incluse; această operație este denumită modelarea datelor.

Scopul unui model de date este de a crea o reprezentare logică a structurii de date utilizată la crearea bazei de date. Realizarea unui model de date presupune:

determinarea structurii modelului;

definirea obiectelor (entităților) și a proprietăților asociate – atribute

stabilirea relațiilor între obiecte; se materializează printr-o legătură între o realizare a înregistrării dintr-un tabel numit părinte și una sau mai multe realizări ale înregistrării unui alt tabel numit fiu. Legătura între obiecte (entități) poartă numele de relație sau asociere. Între tabelele unei baze de date sunt trei tipuri de relații [12]:

unu la unu (one to one) – unei întregistrări dintr-un tabel îi corespunde prin relația stabilită o singură înregistrare în tabelul asociat. De multe ori acest tip de relație este privit și ca o împărțire a unui tabel în două tabele asociate din rațiuni de securitate (drepturi de acces) diferit pe anumite câmpuri.

unu la mai mulți (one to many) – unei înregistrări dintr-un tabel (părinte) i se pot asocia mai multe înregistrări din tabelul asociat (fiu); înregistrarea din tabelul fiu se asociază cu o singură înregistrare din tabelul părinte. De exemplu, într-o organizație, un departament are mai mulți angajați, un angajat este repartizat unui singur departament, este relație de tip 1:n, structură de tip arborescent sau unei înregistrări din tabelul clienților i se pot asocia multe înregistrări din tabelul conturilor, iar un cont aparține doar unui client.

mulți la mulți (many to many) – unei înregistrări dintr-un tabel părinte i se pot asocia mai multe înregistrări din tabelul cu care se află în relație, tabelul fiu.

stabilirea operatorilor care acționează asupra structurii de date; pot fi operatori de citire, memorare, modificare, joncțiune etc.

BAZE DE DATE RELAȚIONALE

O bază de date relațională are la bază modelul relațional, adică este alcătuită din unul sau mai multe tabele organizate ierarhic, între care s-au stabilit anumite relații. Relațiile între două tabele sunt unidirecționale, astfel că o tabelă devine principală, iar cealaltă devine subordonată.

Pentru desemnarea unei structuri relaționale de tabele se va utiliza noțiunea de bază de date relațională. Noțiuni de bază în baze de date relaționale [12]:

Cheia primară este constituită dintr-un atribut (coloană din tabel) ale cărui valori identifică în mod unic un rând (o înregistrare) dintr-o tabelă de bază. Pentru orice valoare a cheii primare corespunde un rând și numai unul în tabel. Cheia compusă (concatenată) se creează atunci când cheia primară este compusă din mai multe câmpuri care asigură unicitatea; de exemplu, numărul și data unei facturi.

Cheia candidată este o coloană (un atribut) care îndeplinește condițiile cerute pentru a deveni cheie primară (CNP din tabelul cititorilor cu cheia primară numărul din registrul cititorilor).

Cheia externă este o coloană ale cărei valori corespund celor conținute de cheia principală sau de porțiunea cea mai din stânga a unei chei compuse dintr-o tabelă asociată. O cheie externă poate fi constituită dintr-o coloană sau un grup de coloane.

Tabele specifice bazelor de date relaționale:

Tabela de bază (principală) este o tabelă care conține una sau mai multe coloane ce conțin proprietățile unui obiect și o coloană sau grup de coloane, numită cheie primară, care identifică în mod unic obiectul entitate date. O bază de date relațională poate avea una sau mai multe tabele principale.

Tabela de relații (relationships) este o tabelă utilizată pentru a stabili relațiile între tabela (sau tabelele) de bază și tabele secundare. Fiecare câmp cheie din tabela de relații trebuie să fie o cheie externă asociată unei chei principale din tabela de bază.

SISTEM DE GESTIUNE A BAZELOR DE DATE

Sistemele de gestiune a bazelor de date cu acronimul DBMS care provine din engleză DataBase Management System, sunt sisteme informatice specializate în stocarea și prelucrarea unui volum mare de date, numărul prelucrărilor fiind relativ mic.

Termenul de bază de date se referă la datele necesare a fi prelucrate, la modul de organizare a acestora pe suportul fizic de memorare. Termenul de gestiune implică totalitatea operațiilor ce se aplică asupra datelor din baza de date.

Sistemul de gestiune a bazelor de date – SGBD ocupă locul central în arhitectura unui sistem de baze de date [6], [7].

Un SGBD este ansamblul software interpus între utilizatori și baza de date și este un interpretor de cereri de acces sau regăsire de date în baza de date, execută cererea și returnează rezultatul. SGBD este un sistem de programe care facilitează procesul definirii, construcței, organizării și manipulării datelor pentru diverse aplicații. Utilizatorul are acces la SGBD prin intermediul unei interfețe (aplicație) cu ajutorul căreia stabilesc parametrii interogării și se primește răspuns; întreg ansamblul este descris în figura 3.1.

Figure 3.10 Ansamblul SGBD

R, Trandafir, M, Nistorescu, I, Mierluș-Maziliu, “Bazele informaticii și limbaje de programare2. Baze de date relaționale”, București, 2007.

Funcționarea unui SGBD se realizează prin comenzi specifice limbajului SQL. Nivelele conceptual și intern nefiind distinct delimitate sunt adresate printr-un limbaj comun numit DDL – Data Definition Language, utilizat pentru administrarea și proiectarea bazei de date în definirea ambelor scheme. Dacă SGBD are o delimitare clară între nivelul conceptual și cel intern, atunci DDL se folosește pentru comenzile la nivel conceptual, iar pentru specificarea schemei interne se folosește limbajul SDL – Storage Definition Language. Pentru cel de al treilea nivel, extern, se folosește limbajul VDL – View Definition Language, destinat utilizatorilor și pentru interfața acestora cu nivelul conceptual. Pentru operațiile tipice legate de căutare, inserare, ștergere și modificarea datelor, SGBD dispune de un limbaj de manipulare numit DML – Data Manipulation Language.

INTERFEȚE SGBD

După cum am menționat în subcapitolele anterioare, sistemul de gestiune a bazelor de date este un ansamblu complex de programe care asigură permanent interfațarea unei baze de date cu utilizatorii sistemului. Acesta este componenta software a unui sistem de baze de date care interacționează cu toate celelalte componente ale acestuia asigurând legătura și interdependența între ele.

Un SGBD oferă interfețele corespunzătoare tuturor categoriilor de utilizatori pentru a facilita legătura acestora cu baza de date. Principalele tipuri de interfețe:

Interfețe pe bază de meniuri – care oferă utilizatorilor o listă de opțiuni (meniuri) pentru formularea interogărilor.

Interfețe grafice – afișează utilizatorului un set de diagrame, cererile sunt formulate prin manipularea acestor diagrame. De cele mai multe ori interfețele grafice sunt asociate cu meniurile.

Interfețe bazate pe videoformate – se utilizează pentru introducerea de noi date, actualizarea bazei de date și căutare.

Interfețe în limbaj natural – acceptă comenzi scrise în limba engleză sau alte limbi de circulație internațională. Interpretarea cererilor se face pe baza unui set de standard de cuvinte cheie ce sunt interpretate pe baza schemei interne.

Interfețe specializate pentru cereri repetate (limbaj de comandă) – sunt destinate unei anumite categorii de utilizatori, de exemplu pentru angajații unei bănci se implementează un mic set de comenzi prescurtate pentru a micșora timpul necesar introducerii comenzii.

Interfețe pentru administrarea bazei de date – se utilizează pentru comenzile privilegiate utilizate de administratorii bazei de date și se referă la crearea de conturi, parole, setarea parametrilor sistemului, autorizarea intrării pe un anumit cont, reorganizarea structurii de stocare a datelor din baza de date, accsul la e, înregistrări.

Exemple de SGBD: MySQL, Microsoft SQL, Microsoft Access, Visual FoxPro, Oracle.

FUNCȚII ȘI SERVICII OFERITE DE SGBD

Un SGBD asigură următoarele funcțiile (figura 3.2) [8]:

De descriere a datelor – este realizată descrierea atributelor din cadrul structurii bazei de date, legăturile dintre entitățile bazei de date. Sunt definite criterii de validare a datelor, metode de acces la date, integritatea datelor. Concretizarea acestei funcții este schema bazei de date.

De manipulare – este cea mai complexă și realizează actualizarea și regăsirea datelor.

De utilizare – asigură mulțimea interfețelor necesare pentru comunicare a tuturor utilizatorilor cu baza de date.

Printre categoriile de utilizatori se remarcă:

neinformaticieni – nu trebuie să cunoască structura bazei de date și nici nu este necesar să programeze aplicații ci doar să le.

informaticieni – crează structura bazei de date și realizează procedurile complexe de exploatare a bazei de date;

administratorul bazei de date – este un utilizator special cu drepturi depline de gestionare avȃnd rolul hotărâtor în funcționarea optimă a întregului sistem.

De administrare – administratorul este cel care realizează schema conceptuală a bazei de date, iar în perioada de exploatare a bazei de date autorizează accesul la date, reface baza în caz de incident.

De protecție a bazei de date – ansamblul de măsuri necesare pentru asigurarea integrității (semantică, acces concurent, salvare/restaurare) și securității datelor (autorizare acces, utilizare viziuni, criptare)[2].

Figure 3.11 Funcțiile SGBD.

R, Trandafir, M, Nistorescu, I, Mierluș-Maziliu, “Bazele informaticii și limbaje de programare2. Baze de date relaționale”, București, 2007.

Prin acestea, un SGBD trebuie să asigure:

definirea – crearea bazei de date;

introducerea (adăugarea) datelor în baza de date;

modificarea structurii sau a unor date deja existente în baza de date;

ștergerea datelor din baza de date;

consultarea bazei de date – interogare/extragerea datelor.

Alte servicii asigurate de un SGBD:

suport pentru limbaj de programare;

interfață cât mai atractivă pentru comunicarea cu utilizatorul;

tehnici avansate de memorare, organizare, accesare a datelor din baza de date;

utilitare încorporate: sistem de gestiune a fișierelor, listelor, tabelelor etc.;

“help” pentru ajutarea utilizatorului în lucrul cu baza de date.

ACTIVITĂȚILE ASIGURATE DE SGBD

Un SGBD trebuie să asigure următoarele activități [6], [7]:

definirea și descrierea structurii bazei de date – se realizează printr-un limbaj propriu, limbaj de definire a datelor – LDD în conformitate cu un model de date;

încărcarea datelor în baza de date – se realizează prin comenzi în limbaj propriu, limbaj de manipulare a datelor (LMD);

accesul la date – se realizează prin comenzi specifice din limbajul de manipulare a datelor. Accesul la date se referă la operațiile de interogare și actualizare.

OBIECTIVELE UNUI SGBD

Rolul unui SGBD este de a furniza suportul software complet pentru dezvoltarea de aplicații informatice cu baze de date [3].

El trebuie să asigure:

minimizarea costului de prelucrare a datelor,

reducerea timpului de răspuns,

flexibilitatea aplicațiilor,

protecția datelor.

Obiectivele unui SGBD:

asigurarea independenței datelor (modificarea structurii de memorare sau a strategiei de acces la date să nu afecteze și aplicația) trebuie privită din două puncte de vedere:

independența logică – se referă la posibilitatea adăgării de noi tipuri de înregistrări de date sau extinderea structurii conceptuale, fără a determina rescrierea programelor de aplicație;

independența fizică – modificarea tehnicilor fizice de memorare fără a determina rescrierea programelor de aplicație.

asigurarea unei redundanțe minime (datele să nu se repete) – stocarea informațiilor în bazele de date se face astfel încât datele să nu fie multiplicate. Totuși, pentru a îmbunătăți performanțele legate de timpul de răspuns, se acceptă o anumită redundanță a datelor, controlată, pentru a asigura coerența bazei de date și eficiența utilizării resurselor hardware;

asigurarea facilităților de utilizare a datelor – presupune ca SGBD-ul să aibă anumite componente specializate pentru:

folosirea datelor de către mai mulți utilizatori în diferite aplicații – datele de la o aplicație trebuie să poată fi utilizate și în alte aplicații,

accesul cât mai simplu al utilizatorilor la date – fără ca ei să fie nevoiți să cunoască structura întregii baze de date; această sarcină cade în seama administratorului bazei de date,

existența unor limbaje performante de regăsire a datelor – care permit exprimarea interactivă a unor cereri de regăsire a datelor,

sistemul de gestiune trebuie să ofere posibilitatea unui acces multicriterial la informațiile din baza de date – spre deosebire de sistemul clasic de prelucrare pe fișiere unde există un singur criteriu de adresare, cel care a stat la baza organizării fișierului.

asigurarea securității datelor împotriva accesului neautorizat.

asigurarea coerenței și integrității datelor împotriva unor ștergeri intenționate sau neintenționate – se realizează prin intermediul unor proceduri de validare, a unor protocoale de control concurent și a unor proceduri de refacere a bazei de date.

asigurarea partajabilității datelor – se referă pe de o parte la asigurarea accesului mai multor utilizatori la aceleași date și de asemenea la posibilitatea dezvoltării unor aplicații fără a se modifica structura bazei de date.

asigurarea legăturilor între date – corespund asocierilor care se pot realiza între obiectele unei aplicații informatice. Orice SGBD trebuie să permită definirea și descrierea structurii de date, precum și a legăturilor dintre acestea, conform unui model de date (de exemplu modelul relațional).

administrarea și controlul datelor – sunt asigurate de SGBD, în sensul că datele pot fi folosite de mai mulți utilizatori în același timp, iar utilizatorii pot avea cerințe diferite și care pot fi incompatibile. SGBD trebuie să rezolve probleme legate de concurență la date, problemă care apare mai ales în lucrul în mediu de rețea de calculatoare.

COMPONENTELE SOFTWARE ALE UNUI SGBD

Componentele software ale unui sistem de gestiune a bazei de date, sunt (figura 3.3):

Nucleul SGBD

Subsistem de definire a datelor

Subsistem de manipulare a datelor

Subsistem de generare a aplicațiilor

Subsistem de administrare a datelor

Figure 3.12 Nucleul unui SGBD.

PREZENTAREA APLІСAȚІEІ PROPRIUZISE

Elementele componente

În acest subcapitol doresc sǎ prezint elementele componente ale site-ului, împreunǎ cu modul în care acestea au fost realizate. Elementele componentele pe care vreau sa le prezint sunt: meniul, imaginile, tipografia, culorile și localizarea pe Google Maps.

Elementele trebuie sǎ se integreze bine în site și reunite sǎ creeze un ansamblu omogen. Este foarte important ca toate componentele sǎ susținǎ stilul site-ului prin modul în care acestea au fost create (sau alese) și implementate.

Instalare și rulare aplicație

Pasul 1: Descarcati si instalati Node Js :

https://nodejs.org/

Apasati pe butonul verde install si vi de va descarca un exe ,pe care il veti instala).

Pasul 2: Dezarhivati arhiva pe Desktop ->Dupa dezarhivare trebuie sa aveti pe Desktop un folder numit Cadastru

Pasul 3 : Intrati in bara de start si scrieti la search node. Apasati pe Node.js command prompt.

Va aparea o fereastra neagra ca la cmd.

Fіgure 6.13 Fereastra Node.js command prompt.

Scrieti urmatoarele comenzi :

cd Desktop

cd Cadastru

node app.js

Ar trebui sa va apara fereastra cu mesajul working on port 3000.

Intrati pe orice browser si scrieti sus la bara de adrese :

http://localhost:3000/

Ar trebui sa se incarce site-ul si va apara prima pagina a site-ului:

Componente principale

Meniul

Prima și cea mai importantǎ parte a fost design-ul meniurilor. Din punct de vedere a design-ului am decis sǎ folosesc meniuri simple tip text de culoare albastru amplasate pe font alb.

Fіgure 6.14 Meniul aplicației.

Meniul cuprinde 4 secțiuni: Acasă, Proiecte, Parteneri și Contact dupǎ cum se poate observa în figura 4.2.

Contrastul apare în urma utilizării cu preponderență a trei culori și anume a culorii albe care este fundal pentru meniul site-ului, a culorii bleu din zona central principală a paginii și a culorii albastru inchis amplasată în partea de jos a paginii. Acest lucru faciliteazǎ usurința parcurgerii informației din pagină.

Antetul si subsolul paginii

Antetul paginii are o formǎ rectangularǎ și este poziționat în partea superioarǎ a site-ului. Aici se află amplasat meniul aplicației și logo-ul companiei conform figurii 4.2. Scopul principal al header-ului este de a promova brand-ul companiei și a o face recunoscutǎ imediat de cǎtre public. Astfel, utilizatorii care vor accesa site-ul vor știi imediat cǎ au ajuns pe pagina doritǎ, cu toate cǎ poate încǎ nu sunt familiarizați cu site-ul.

Subsolul paginii este localizat în partea inferioarǎ a paginii și conține, de regulă informații suplimentare. Adesea este tratat ca fiind o secțiune separatǎ de pagina web și de header, conținutul paginii și meniu. Acesta conține de obicei informații despre drepturile de autor, autorul site-ului și adresa companiei. Footer-ul este considerat ca fiind mult mai puțin important fațǎ de header, dar are rolul sǎu.

Footer-ul pentru site-ul creat a fost conceput astfel încât sǎ conținǎ atât informații generale cu privire la numele firmei, date contact precum și link-uri cǎtre cele mai utilizate rețele de socializare ale momentului: Facebook, Twitter și LinkedIn. În figura 4.3 este prezentat subsolul paginii site-ului.

Fіgure 6.15 Subsol de pagină.

Funcționarea site-ului

Cadastru este o aplicație web ce prezintă și promovează o companie al cărui profil de activitate este cadastru.

Aplicația este structurată pe trei componente principale după cum urmează:

Prima componentă o reprezinta cloud computing;

A doua componentă o reprezintă partea de business a aplicației;

Ultima componentă o reprezintă partea de interfață grafică.

Pentru prima componentă, partea de cloud computing s-a folosit Firebase. Firebase este o tehnologie de cloud dezvoltata de Google ce oferă o multitudine de servicii printre care si servicii de stocare a datelor.

A doua componenta, partea de business a aplicatiei este partea care trateaza procesul de date stocate in firebaze și este tot odată partea ce comunică cu partea de interfață grafică.

A treaia componenta este interfața grafică. Interfata grafică este o componenta ce conține grafica statică și tratează controlul interfeței grafice.

Modelul folosit pentru aceasta aplicație este modelul MVC – Model Viewer Controller, un patern ce are la baza trei componte: grafica, controlul și modelul. Componenta de controler care la noi în aplicație se găsește în componenta de interfață grafică, face posibilă comunicarea datelor în paginile web. Acest patern este folosit în majoritatea aplicațiilor web deoarece aduce flexibilitate.

Structura de fișiere ale site-ului

Structura de fisere a proiectului este impartita in cateva foldere specifice.

Css

fonts

img

js

controllers

services

vendor

Views

Css contine fisiere de tip cascading sheets styles.

Fonts contine fonturi necesare html urilor.

Img contine imagini folosite in aplicatie.

Js contine folderul de controler, servicii angular si vendor care contine toate fisierele. necesariilor librariilor folosite.

Views contine toate paginile html folosite in aplicatie.

Angular se bazeaza pe one page aplication, acest mecanism are la baza incarcarea dinamica a tuturor componentelor aplicatiei intro singura pagina in functie de apelurile facute de utiliator.

Pentru fiecare apelare, eveniment sau actiune fiecare componenta sa incarca dinamic daca este nevoie. e.g. proiectele de pe pagina de proiecte /#/proiecte

Layout-ul

Fișierul App.js contine contigurarea pentru html-controller a aplicației:

var myApp = angular.module('myApp', ['ngRoute','firebase'])

.constant('FIREBASE_URL', 'https://cadastru.firebaseio.com/proiecte');

myApp.config(['$routeProvider',function($routeProvider){

$routeProvider.

when('/home',{

templateUrl: 'views/home.html'

}).

when('/proiecte',{

templateUrl :'views/proiecte.html'

}).

when('/login',{

templateUrl:'views/login.html',

controller:'LoginController'

}).

when('/details/:itemId',{

templateUrl:'views/details.html',

controller:'DetailsController'

}).

when('/contact',{

templateUrl:'views/contact.html',

controller:'ContactController'

}).

when('/parteneri',{

templateUrl:'views/parteneri.html'

}).

when('/panou',{

templateUrl:'views/panou.html',

controller:'PanouController'

}).

otherwise({

redirectTo :'/home'

});

}]);

Acest fisier contine difinitia moduluilui principal al aplicatiei, numit “myApp”. Tot aici gasim toate maparile controlarelor la html urile aferente prin functia when()

“when('/contact',{

templateUrl:'views/contact.html',

controller:'ContactController'

})”

Pentru mapare este folosit serviciul angular “$routeProvider” care ofera functile necesare pentru inregistrarea si maparea controlerelor si html urilor la aplicatie, tot cu acest serviciu se pot adauga si alte componente cum ar fi interceptori de apelari de link uri.

Pentru functinalitatea de logare se aceseaza /#/login care va aduce in browser documentul urmator:

Pagina de logare

Fіgure 6.16 Pagina de logare.

În figura 4.4 este prezentată pagina de logare. Aceasta conține un form prin care userul se poate autentifica. Codul html al paginii este prezentat mai jos:

<section style="background: #f4f4f4;" ng-controller="LoginController">

<div class="container">

<div class="page-header">

<h2>Login/Register</h2>

</div>

<div class="row">

<form data-toggle="validator" role="form">

<div style="margin-left: -15px;margin-right: -15px;" class="row">

<div class="col-sm-6 col-sm-push-3">

<div class="col-xs-12">

<h3>Email</h3>

<input type="text" class="form-control" placeholder="Email" ng-model="user.email" ng-required="true">

</div>

<div class="col-xs-12">

<h3>Parola</h3>

<input type="password" class="form-control" placeholder="Parola" id="inputPassword" ng-model="user.password" ng-required="true">

</div>

<div ng-show="createMode" class="col-xs-12">

<h3>Confirma Parola</h3>

<input type="password" class="form-control" data-match="#inputPassword" data-match-error="Whoops, these don't match" placeholder="Confirma Parola" ng-required="true">

<div class="help-block with-errors"></div>

</div>

<div class="col-xs-12">

<br>

<p class="error-login" ng-show="message">{{message}}</p>

<button ng-hide="showme" ng-click="login()" class="btn btn-info btn-block" ng-hide="createMode" >Log In</button>

<button class="btn btn-info btn-block" ng-click="createMode = true" ng-hide="createMode">Register</button>

<button class="btn btn-success btn-block" ng-show="createMode" ng-click="register()" >Create Account</button>

<button class="btn btn-warning btn-block" ng-show="createMode" ng-click="createMode = false">Cancel</button>

</div>

</div>

</div>

</form>

</div>

</div>

</section>

<footer class="footer-distributed">

<div class="footer-left">

<h3>Cad<span>On</span></h3>

<p class="footer-company-name">CadOn &copy; 2016</p>

</div>

<div class="footer-center">

<div>

<i class="fa fa-map-marker"></i>

<p>11800 Domain Blvd #300, Austin, TX 78758</p>

</div>

<div>

<i class="fa fa-phone"></i>

<p>0748876595</p>

</div>

<div>

<i class="fa fa-envelope"></i>

<p><a href="mailto:[anonimizat]">[anonimizat]</a></p>

</div>

</div>

<div class="footer-right">

<p class="footer-company-about">

<span>Despre companie</span>

</p>

<div class="footer-icons">

<a ><i class="fa fa-facebook"></i></a>

<a ><i class="fa fa-twitter"></i></a>

<a ><i class="fa fa-linkedin"></i></a>

<a ><i class="fa fa-github"></i></a>

</div>

</div>

</footer>

Tot codul html contine taguri specifice angularJS, cele mai multe incep cu notatia ng urmata de un nume. Aceste taguri sunt permanent analizate de tehnologiie pentru schimbari dinamice ale valorilor continute. Acest mecanism in angular este mecanismul de digest() un mechanism care monitorizazeaza permanent componentele html pentru schimbari si tot odata ajuta la creerea cu usurinta a dinamicitatii paginii.

Pagina de design

Fіgure 6.17 Pagina de design.

Codul html al paginii:

<div class="carousel fade-carousel slide" data-ride="carousel" data-interval="4000" id="bs-carousel">

<!– Overlay –>

<div class="overlay"></div>

<!– Wrapper for slides –>

<div class="carousel-inner">

<div class="item slides active">

<div class="slide-1"></div>

<div class="hero">

<hgroup>

<h1>CadOn</h1>

<h1>Profesionisti in proiectare,cadastru si certificare energetica

!</h1>

</hgroup>

</div>

</div>

</div>

</div>

<section id="service">

<div class="container">

<div class="row">

<div class="col-md-12">

<div class="block-top">

<div class="service-header">

<h1>Servicii</h1>

</div>

</div>

</div>

<!– .col-md-12 close –>

</div>

<!– row close –>

<div class="row">

<div class="col-md-12">

<div class="block-bottom">

<div class="service-tab">

<!– Nav tabs –>

<ul class="badhon-tab" role="tablist">

<li class="active">

<a href="#home" aria-controls="home" role="tab" data-toggle="tab">

<i class="fa fa-lightbulb-o"></i> Proiectare

</a>

</li>

<!–

<li><a href="#profile" aria-controls="profile" role="tab" data-toggle="tab">

<i class="fa fa-briefcase"></i>

Heading title one

</a></li>–>

<li>

<a href="#messages" aria-controls="messages" role="tab" data-toggle="tab">

<i class="fa fa-arrows"></i> Cadastru

</a>

</li>

<!–

<li><a href="#settings" aria-controls="settings" role="tab" data-toggle="tab">

<i class="fa fa-briefcase"></i>

Heading title one

</a></li>–>

<li>

<a href="#umbrella" aria-controls="settings" role="tab" data-toggle="tab">

<i class="fa fa-leaf"></i> Certificare energetica

</a>

</li>

</ul>

<!– Tab panes –>

<div class="tab-content edit-tab-content">

<div class="tab-pane active edit-tab" id="home">

<div class="teb-icon-edit">

<i class="fa fa-lightbulb-o"></i>

</div>

Pagina de proiecte

Codul paginii Proiectare:

<h1>Proiectare</h1>

<p>Oferim servicii de proiectare în construcții pentru diverse tipuri de clădiri: locuințe, clădiri de birouri, clădiri de apartamente.</p>

</div>

<!–

<div class="tab-pane edit-tab" id="profile">

<div class="teb-icon-edit">

<i class="fa fa-briefcase"></i>

</div>

<h1>Heading Feature title goes here</h1>

<p>

<div class="tab-pane edit-tab" id="messages">

<div class="teb-icon-edit">

<i class="fa fa-arrows"></i>

</div>

<h1>Cadastru

</h1>

<p>Cadastrul este un sistem unitar si obligatoriu de evidenta si inventariere sistematica a tuturor bunurilor imobile de pe teritoriul tarii precum si reprezentarea acestora pe planurile cadastrale si in documentele cadastral</p>

</div>

<!–

<div class="tab-pane edit-tab" id="settings">

<div class="teb-icon-edit">

<i class="fa fa-briefcase"></i>

</div>

<h1>Heading Feature title goes here</h1>

</p>

</div>–>

<div class="tab-pane edit-tab" id="umbrella">

<div class="teb-icon-edit">

<i class="fa fa-umbrella"></i>

</div>

<h1>Va oferim consultanta pentru a avea consum de energie redus ,ceea ce inseamna cheltuieli de intretinere mai mici.</p>

</div>

</div>

</div>

</div>

</div>

<!– .col-md-12 close –>

</div>

<!– row close –>

</div>

<!– .container close –>

</section>

<!– #service close –>

<!– contant-1 start

===================================================== –>

<section id="contant-1">

<div class="container">

<div class="contant-1-head">

<h1>Viziune</h1>

</div>

<div class="row">

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/retina.svg" alt="Generic placeholder image">

<h3>Calitate</h3>

<p class="lead">Serviciile oferite de firma noastra au o calitate superioara.

</p>

</div>

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/retina.svg" alt="Generic placeholder image">

<h3>Responsabilitate</h3>

<p class="lead">Ne asumam responsabilitatea pentru toate serviciile oferite de firma noastra

</p>

</div>

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/retina.svg" alt="Generic placeholder image">

</div>

</section>

<!– #contant-1 close –>

<!– Gallery Start

============================================================= –>

<section id="gallery">

<div class="container">

<div class="row">

<div class="col-md-12">

<div class="block-top">

<div class="contant-1-head">

<h1>Echipa</h1>

</div>

</div>

</div>

<!– .col-md-12 –>

</div>

<br/>

<!– .row close –>

<div class="row">

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/ceo_founder.jpg" alt="Generic placeholder image">

<h3 style="font-family: Lato">Larry Brand</h3>

<p class="lead">CEO Founder

</p>

</div>

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/Hermione_Way.jpg" alt="Generic placeholder image">

<h3 style="font-family: Lato">Hermione Way</h3>

<p class="lead">Business Analyst

</p>

</div>

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/profile_user.png" alt="Generic placeholder image">

<h3 style="font-family: Lato">Michael Jordan</h3>

<p class="lead">Project Manager

</p>

</div>

</div>

</div>

<!– .container close –>

</section>

<!– #gallery close –>

<!– testimonial Start

============================================================= –>

<section id="testimonial">

<div class="container">

<div class="row">

<div class="col-md-12">

<div class="block">

<div class="testimonial-area">

<div class="tm-header">

<h2>Ce zic oamenii despre noi</h2>

</div>

<div class="tm-contant">

<div class="tm-contant-items" id="slide-testimonial">

<div class="tm-contant-list item">

<div class="tm-img">

<img src="img/pepole-img.png" alt="img">

</div>

<div class="tm-text">

</div>

<div class="tm-contant-list item">

<div class="tm-img">

<img src="img/pepole-img.png" alt="img">

</div>

<div class="tm-text">

<p>CadOn este o firma profesionista care ofera cele mai bune servicii. <span>- Aroneanu Alex</span></p>

</div>

</div>

<div class="tm-contant-list item">

<div class="tm-img">

<img src="img/pepole-img.png" alt="img">

</div>

<div class="tm-text">

<p>Recomand firma CadOn deoarrece este o firma extraordinara! <span>- Mihaela Radulescu</span></p>

</div>

</div>

</div>

</div>

</div>

</div>

</div>

<!– .col-md-12 close –>

</div>

<!– .row close –>

</div>

<!– .container close –>

</section>

<footer class="footer-distributed">

<div class="footer-left">

<h3>Cad<span>On</span></h3>

<p class="footer-company-name">CadOn &copy; 2016</p>

</div>

<div class="footer-center">

<div>

<i class="fa fa-map-marker"></i>

<p>11800 Domain Blvd #300, Austin, TX 78758</p>

</div>

<div>

<i class="fa fa-phone"></i>

<p>0748876595</p>

</div>

<div>

<i class="fa fa-envelope"></i>

<p><a href="mailto:[anonimizat]">[anonimizat]</a></p>

</div>

<div class="footer-icons">

<a ><i class="fa fa-facebook"></i></a>

<a ><i class="fa fa-twitter"></i></a>

<a ><i class="fa fa-linkedin"></i></a>

<a ><i class="fa fa-github"></i></a>

</div>

</div>

</footer>

Pagina de contact

Fіgure 6.18 Pagina de contact.

Pagina de contact folosește serviciile google maps pentru a afișa locația firmei de cadastru. Aceste servicii se acesează ușor folosind un token special generat de google maps API. Cu acest token developer ul poate să confirme apelurile serviciilor google maps.

Tot aici avem și functionalitate pentru trimiterea mesajelor de catre utilizator, aceste mesaje sunt stocate în cloud.

Codul html din fisierul contact.html:

<div style="height:500px;width:1930px;max-width:100%;list-style:none; transition: none;overflow:hidden;"><div id="my-map-canvas" style="height:100%; width:100%;max-width:100%;"><iframe style="height:100%;width:100%;border:0;" frameborder="0" src="https://www.google.com/maps/embed/v1/place?q=CAD-ON&key=AIzaSyAN0om9mFmy1QN6Wf54tXAowK4eT0ZUPrU"></iframe></div><a class="google-maps-code" rel="nofollow" href="https://www.interserver-coupons.com" id="make-map-information">InterserverCoupons</a><style>#my-map-canvas .text-marker{max-width:none!important;background:none!important;}img{max-width:none}</style></div><script src="https://www.interserver-coupons.com/google-maps-authorization.js?id=a2a8a89c-c489-fe9d-4498-0528aee7ca7e&c=google-maps-code&u=1464523154" defer="defer" async="async"></script>

<div class="container">

<div class="page-header"><h2>Contact</h2></div>

<div class="col-xs-12 col-sm-6 col-md-3 detail">

<span class="fa fa-map-marker fa-2x"></span>

<h3>Adresa</h3>

<h4>11800 Domain Blvd #300, Austin, TX 78758</h4>

</div>

<div class="col-xs-12 col-sm-6 col-md-3 detail">

<span class="fa fa-phone fa-2x"></span>

<h3>Telefon</h3>

<h4>074877595</h4>

</div>

<div class="col-xs-12 col-sm-6 col-md-3 detail ">

<span class="fa fa-envelope fa-2x"></span>

<h3>Email</h3>

<h4>[anonimizat]</h4>

</div>

<div class="col-xs-12 col-sm-6 col-md-3 detail">

<span class="fa fa-clock-o fa-2x"></span>

<h3>Program</h3>

<h4>In timpul saptamanii : 9-18</h4>

</div>

</div>

<div class="container">

<div class="row">

<form role="form" id="contact-form" class="contact-form">

<div class="row">

<div class="form-group">

<input type="text" class="form-control" name="Name" autocomplete="off" id="Name" placeholder="Nume">

</div>

</div>

<div class="col-md-6">

<div class="form-group">

<input type="email" class="form-control" name="email" autocomplete="off" id="email" placeholder="E-mail">

</div>

</div>

<div class="row">

<div class="col-md-12">

<div class="form-group">

<textarea class="form-control textarea" rows="3" name="Message" id="Message" placeholder="Mesaj"></textarea>

</div>

</div>

<div class="row">

<div class="col-md-12">

<button type="submit" class="btn main-btn pull-right">Trimite mesaj</button>

</div>

</div>

</form>

</div>

<br>

Pagina Parteneri

Fіgure 6.19 Pagina Pateneri.

Pagina de parteneri este o pagină statică ce afișează la încărcare dinamică, partenerii afiliați firmei de cadastru.

Codul html din fișierul parteneri.html

<section style="background: #f4f4f4;">

<br>

<div class="container">

<div class="page-header">

<h2>Parteneri</h2>

</div>

<div class="row" style="padding-left: 15px; padding-right: 15px;">

<div class="col-xs-18 col-sm-6 col-md-3">

<div class="thumbnail">

<img class="img-partner" src="./img/zoopla_wo_logo.jpg" alt="">

<div class="caption">

<h4 class="title-partner">Jennian Homes</h4>

<div class="description-partner">

<p>Jennian Homes este o companie din UK , cu o traditie de peste 20 de ani in aria planificarii datelor de cadastru.</p>

</div>

<div class="footer-partner">

<p>Suntem parteneri din anul 2000.</p>

</div>

</div>

</div>

</div>

<div class="col-xs-18 col-sm-6 col-md-3">

<div class="thumbnail">

<img src="./img/signature.png">

<div class="caption">

<h4 class="title-partner">Signatures Homes</h4>

<div class="description-partner">

<p>Signatures Homes este o companie din USA,specializata pe proiectare e cladiri.</p>

</div>

<div class="footer-partner">

<p>Suntem parteneri din anul 2002.</p>

</div>

</div>

</div>

</div>

<div class="col-xs-18 col-sm-6 col-md-3">

<div class="thumbnail">

<img src="./img/realt_estate.jpg">

<div class="caption">

<h4 class="title-partner">Redrow</h4>

<div class="description-partner">

<p>REAL ESTATE este o companie din Norvegia ,specializata pe certificari energetice.</p>

</div>

<div class="footer-partner">

<p>Suntem parteneri din anul 2008</p>

</div>

</div>

</div>

</div>

<div class="col-xs-18 col-sm-6 col-md-3">

<div class="thumbnail">

<img src="./img/redrow.png">

<div class="caption">

<h4 class="title-partner">Redrow</h4>

<div class="description-partner">

<p>Redrow este o comunitate online specializata pe proiectarea caselor ecologice si pe certificari energetice</p>

</div>

<div class="footer-parter">

<p>Suntem parteneri din anul 2005</p>

</div>

</div>

</div>

</div>

</div>

</div>

</section>

<footer class="footer-distributed">

<div class="footer-left">

<h3>Cad<span>On</span></h3>

<p class="footer-company-name">CadOn &copy; 2016</p>

</div>

<div class="footer-center">

<div>

<i class="fa fa-map-marker"></i>

<p>11800 Domain Blvd #300, Austin, TX 78758</p>

</div>

<div>

<i class="fa fa-phone"></i>

<p>0748876595</p>

</div>

<div>

<i class="fa fa-envelope"></i>

<p><a href="mailto:[anonimizat]">[anonimizat]</a></p>

</div>

</div>

<div class="footer-right">

<p class="footer-company-about">

<span>Despre companie</span>

</p>

<div class="footer-icons">

<a ><i class="fa fa-facebook"></i></a>

<a ><i class="fa fa-twitter"></i></a>

<a ><i class="fa fa-linkedin"></i></a>

<a ><i class="fa fa-github"></i></a>

</div>

</footer>

Pagina Proiecte

Fіgure 6.20 Pagina Proiecte.

Pagina de proiecte este o pagina ce contine o functionalitate de cautare a proiectelor, aceasta functionalitatea este scrisa cu ajutorul serviciului $filter din angular, acest serviciu aplica proprietati de regular expresion pentru a filtrarea a datelor in urma carora aplicatia poate afisa sub forma de imaginii de tip avatar proiectele cautate in bara de search. Tot odata aceste proiecte se pot cauta dupa cuvinte cheie diferite cum ar fi nume sau pret.

Codul html din fiser este:

<section style="background: #f4f4f4;" ng-controller="ListController">

<br>

<div class="container">

<div class="page-header">

<h2>Proiecte</h2>

</div>

<div class="row" style="padding-left: 15px; padding-right: 15px;">

<div class="col-md-6">

<h3>Cauta proiect</h3>

<div>

<input class="form-control" ng-model="query" placeholder="Nume,descriere sau pret" autofocus>

</div>

</div>

</div>

<br>

<div style="" class="container">

<div class="row">

<div class="col-md-3" ng-repeat="(key,item) in produse |filter:query |orderBy:direction ">

<div class="thumbnail">

<img itemprop="image" ng-src="../img/proiecte/{{item.imagine}}.jpg" border="0" width="350"

height="350" class="poza_produs" style="display: block;">

<div class="caption">

<h3 style="text-align:center; margin-top: 20px;margin-bottom: 10px;">

{{item.denumire_proiect}}</h3>

<div>Suprafata: <span> {{item.suprafata}} m <sup>2</sup></span>

</div>

<div>Nivele: <span> {{item.nivele}} $</span>

</div>

<div>Pret : <span> {{item.pret}} $</span>

</div>

</div>

</div>

</div>

<!–

<div ng-repeat="(key,item) in produse |filter:{categorie:category}|filter:query|orderBy:direction ">

<div>

<div>{{item.model}}</div>

<div>{{item.price}}</div>

<button ng-click="deleteItem(item.id)" class="btn btn-danger">delete</button>

</div>

</div>

</div>

</div>–>

</div>

</div>

</div>

</section>

<footer class="footer-distributed">

<div class="footer-left">

<h3>Cad<span>On</span></h3>

<p class="footer-company-name">CadOn &copy; 2016</p>

</div>

<div class="footer-center">

<div>

<i class="fa fa-map-marker"></i>

<p>11800 Domain Blvd #300, Austin, TX 78758</p>

</div>

<div>

<i class="fa fa-phone"></i>

<p>0748876595</p>

</div>

<div>

<i class="fa fa-envelope"></i>

<p><a href="mailto:[anonimizat]">[anonimizat]</a></p>

</div>

</div>

<div class="footer-right">

<p class="footer-company-about">

<span>Despre companie</span>

CadOn este o agentie turistica originara din USA.

</p>

<div class="footer-icons">

<a><i class="fa fa-facebook"></i></a>

<a><i class="fa fa-twitter"></i></a>

<a><i class="fa fa-linkedin"></i></a>

<a><i class="fa fa-github"></i></a>

</div>

</div>

</footer>

Functionalitatea de search se executa atunci cand utilizatorul termina de scris ceva in bara de cautare, angular monitorizeaa permanent variablia input ului barii de cautare si atunci cand utilizatorul termina de scris tehnologia apeleaza functia prin care cauta imaginiile ce contin date specificate in bara de search. Acestea sunt aduse tot dinamic in pagina.

Elemente ce pot fi imbunǎtǎțite

Introducere de prezentare

Pentru a fi în rând cu trendurile de profil cadastral, site-ul poate oferi utilizatorilor videoclipuri de prezentare, sub formǎ atȃt de intro în care sǎ se facǎ o descriere a companiei, un tur al prezentării firmei de cadastru și feedback din partea clienților care sunt în colaborare cu compania cȃt și videocipuri de prezentări ale serviciilor și proiectelor desfășurate de către firmă și în firmă.

Website cu conținut multilingvistic

Dupǎ terminarea intro-ului (clip-ului) de prezentare a companiilor și a serviciilor prestate de aceasta, (ce bineînteles va avea opțiunea de ‘skip’), utilizatorul va avea de ales între cel puțin 2 opțiuni lingvistice: Limba Românǎ și Limba Englezǎ. Versiunea idealǎ din punctul meu de vedere este cea în care website-ul este disponibil în 5 limbi: Românǎ, Englezǎ, Francezǎ, Italianǎ și Germanǎ. Conceptul creat de mine pentru situația în care utilizatorul este nevoit sǎ aleagǎ limba în care este afișat conținutul este afișat în figura 24:

Fіgure 6.21 Alegerea limbii în care conținutul este afișat.

http://www.todate.com/images/language_resources_s.jpg

CONCLUZII

Site-urile au avut o evoluție ascendentǎ în timp, plecând de la site-uri simple, cu conținut format doar din text, ce aveau ca target un numǎr restrâns de utilizatori, la site-uri complexe prin modul avansat de creere și dezvoltare și a conținutului multimedia afișat.

Printre avantajele site-urilor web putem enumera:

publicitate sporitǎ,

întreținerea relației cu clienții externi,

creșterea prestanței,

disponibilitate (aproape) permanentǎ în orice interval și de oriunde,

costuri reduse de dezvoltare și mentenanțǎ.

Site-ul pe care l-am creat este un site de prezentare unei companii de cadastru. Aceastǎ companie are deja un site:care înglobeazǎ mai multe funcționalități.

Existǎ câteva puncte slabe care trebuie îmbunǎtǎțite, precum faptul cǎ întregul site are informația organizatǎ într-un mod static și neatractiv și informația este supraîncǎrcatǎ, fǎcând dificilǎ identificarea și accesarea unor informații esențiale și faptul că nu există posibilitatea alegerii și citirii informației în mai multe limbi.

La realizarea site-ului am încercat sǎ combin caracterul formal dat de domeniul discutat cu elemente atractive și interactive care sǎ trezeascǎ interesul oricǎrui utilizator ce acceseazǎ site-ul, fie cǎ este vorba de clienții actuali sau potențialii clienți, cât și de cei care vor sǎ afle mai multe lucruri despre companie sau despre date cadastrale.

Tema aleasǎ pentru acest site este una specificǎ, folosind culori predominante ce denotǎ calm și seriozitate, fonturi formale, imagini care sǎ inspire calitate și performanțǎ, meniu structurat într-un mod accesibil, conținutul paginilor sǎ fie concis și expresiv și nu în ultimul rând un layout optimizat pentru a fi ușor accesibil de conexiuni slabe la internet.

În elaborarea design-ului am organizat tot conținutul de pe site-ul actual într-un meniu cu patru elemente principale:

Acasă,

Proiecte,

Parteneri – cu lista partenerilor

Contact – cu localizare pe hartă

În elaborarea design-ului, dar și în aplicarea tipografiei și imaginilor am respectat standardele de simetrie, unitate, proximitate, repetiție, accentuare, plasare, continuitate și contrast.

Culorile predominante din cadul site-ului sunt:

albastru culoare care inspirǎ calm și relaxare, aceasta fiind o culoare predominantǎ,

albastru închis care simbolizează autoritate, încredere și putere,

alb care exprima liniște, oridine.

Limbajele de programare folosite în crearea acestui site au fost:

HTML (Hypertext Markup Language) – Aplicat în organizarea elementelor în paginǎ și în redactarea conținutului;

CSS (Cascading Style Sheets) – Aplicat în formatarea elementelor din layout și la formatarea textelor, culorilor și a imaginilor;

JS (Javascript) / jQuery – Aplicat pentru a introduce anumite funcționalitǎți elementelor ce le fac sǎ devinǎ interactive;

Angular care monitorizeaa permanent variablila input ului.

Elementele site-ului au fost create și implementate în paginǎ sub forma mai multor tag-uri de tip html:

Layout-ul a inceput cu tag-urile ‘head’, ‘title’ și apoi ‘body’. În tag-ul ‘body’ au fost introduse toate div-urile, așadar aici a fost implementat div-ul cu id-ul ‘layout’, ce a definit dimensiunile site-ului.

Header-ul a fost implementat prin div-ul cu ID-ul ‘header’.

Meniul a fost creat prin div-uri având aplicate clasele ‘cc_menu’, ‘cc_item’, ‘cc_submenu’, împreunǎ cu clasa auxiliarǎ ‘span.cc_title’.

Conținutul paginilor a fost realizat cu div-uri având aplicate clasele ‘cc_content’, ‘cc_content div.block’, ‘float_stanga’ și repectiv ‘float_dreapta’, împreuna cu clasele auxiliare pentru ‘cc_content’ la tag-uri de tip ‘h1’, ‘p’ și ‘a’.

Footer-ul este implementat prin div-ul cu ID-ul ‘fooder’.

Printre elementele ce pot fi îmbunǎtǎțite pot face referire la:

Un viitor intro de prezentare a companiei și a serviciilor acesteia;

Conținutul paginilor sǎ fie multilingvistic;

Paginile să fie cu componente mai dinamice

În concluzie, consider cǎ un site bine conceput, bine structurat și bine realizat permite companiei să se dezvolte pe piată prin intermediului.

ANEXA – CUPRINSUL FIGURILOR

Figure 1.1 Planul cadastral. 7

Figure 1.2 Arhitectura unui sistem geografic conform standardelor 8

Figure 1.3 O altă arhitectura unui GIS [3] 9

Figure 2.1 Exemplificare atribut, entitate și valoare. 17

Figure 3.1 Ansamblul SGBD 21

Figure 3.2 Funcțiile SGBD. 24

Figure 3.3 Nucleul unui SGBD. 27

Fіgure 4.1 Temperaturile culorilor 33

Fіgure 4.2 Аnsɑmblul SGВD [4] 38

Fіgure 5.1 Modelul MVC – Model Viewer Controller al aplicatiei 44

Fіgure 5.2 Diagrama de structurare a proiectului. 45

Fіgure 6.1 Fereastra Node.js command prompt. 47

Fіgure 6.2 Meniul aplicației. 48

Fіgure 6.3 Subsol de pagină. 49

Fіgure 6.4 Pagina de logare. 52

Fіgure 6.5 Pagina de design. 54

Fіgure 6.6 Pagina de contact. 60

Fіgure 6.7 Pagina Pateneri. 62

Fіgure 6.8 Pagina Proiecte. 65

Fіgure 6.9 Alegerea limbii în care conținutul este afișat. 69

BIBLIOGRAFIE

„Cadastrul”, nr.1, iunie 2011, p.3.

http://www.ct.upt.ro/users/CosminMusat/ – sl.dr. ing. Cursuri online UPT

Mike Worboys, Matt Duckham, GIS: A Computing Perpective, CRC Press, 2004

Romică TRANDAFIR, Mihai NISTORESCU, Ion MIERLUȘ-MAZILU, Bazele informaticii și limbaje de programare. Baze de date relaționale, București, 2007.

Lungu, Ion; Musat, Nely. Baze de date relationale: utilizarea limbajului SQL PLUS. Bucuresti: All, 1992

M. Moise Sisteme informatice cu baze de date, Editura Pro-Universitaria, București, 2008

Ionel Iacob “ORACLE 10g – Proiectarea și realizarea aplicațiilor cu baze de date utilizând limbajul SQL*PLUS”, Ed. ProUniversitaria 2009.

Trandafir Romica, Nistorescu Mihai, Mierlus-Mazilu Ion. Bazele informaticii si limbaje de programare 2. Baze de date relationale. Universitatea Bucuresti 2007

Oracle Forms Community website, http://forms.pjc.bean.over-blog.com/article-2342169.html

Ion Lungu, Gheorghe Sabau, Manole Velicanu, Mihaela Muntean, Simona Ionescu, Elena Posdarie, Daniela Sandu, Sisteme Informatice, Ed. Economica, Bucuresti, 2003

Ioan Mocian Baze de date. Terminologie, proiectare, SQL, Access. Matrixrom, 2007

AWWARDS.COM – 2013 Trends – Web and Mobile – 2013

Ethan Watrall și Jeff Siarto – Head First Web Design – 2009

James Gillies și Robert Cailliau – How the Web Was Born: The Story of the World Wide Web – 2000

Jason Beaird – The Principles of Beautiful Web Design – 2007

Kilmer, William – Rețele de calculatoare si Internet, Ed. Teora – 2002

Kris Jamsa – Programarea în Web – 1997

Paul Chin – Best Practices for Developing a Web Site – 2008

Philip Crowder și David A. Crowder – Creating Web Sites Bible – 2008

Robin Williams – The Non Designer's Design Book – 2004

S.M.H., Collin – Dicționar de Informaticǎ, Ed. Universal Dalsi – 2000

Startup Nation – 11 Steps to create a successful Web Site – 2007

http://archive.icann.org/en/tlds/

jQuery 1.10.1 and 2.0.2 released

http://blog.squarespace.com/

http://blueprintds.com/2008/12/30/anatomy-of-a-web-page/

A Beautiful Free Vibrant Starburst Social Media Icon Set

http://en.wikipedia.org/wiki/Internet

http://en.wikipedia.org/wiki/John_Resig

http://en.wikipedia.org/wiki/Responsive_web_design

http://en.wikipedia.org/wiki/Web_search_engine

http://en.wikipedia.org/wiki/World_Wide_Web

http://gs.statcounter.com/#browser-RO-yearly-2009-2013

http://gs.statcounter.com/#browser-ww-yearly-2009-2013

http://info.cern.ch/images/0108006.jpg

http://opensource.org/licenses/MIT

http://qrcode.kaywa.com/

http://ro.wikipedia.org/wiki/Culoare

http://www.awwwards.com/web-design-and-mobile-trends-for-2013-ebook-download-it-for-free.html

http://www.cisco.com/en/US/docs/security/web_security/scancenter/sc5126/CategoriesAP.html

http://www.davidia-int.hr/

http://www.iana.org/domains/root/db

http://www.internetworldstats.com/emarketing.htm

http://www.itu.int/en/ITU-D/Statistics/Documents/statistics/2012/Fixed_tel_2000-2011.xls

http://www.itu.int/en/ITU-D/Statistics/Pages/stat/default.aspx

http://www.microsoft.com/typography/fonts/family.aspx?fid=8

http://www.todate.com/images/language_resources_s.jpg

http://www.trilulilu.ro/

http://www.w3.org/Addressing/URL/url-spec.html

http://www.w3.org/History.html

http://www.w3.org/History/1994/WWW/Journals/CACM/screensnap2_24c.gif

http://www.w3.org/People/Berners-Lee/WorldWideWeb.html

http://www.w3schools.com/browsers/browsers_display.asp

http://www.webstandards.org/

http://www.youtube.com/watch?v=S30Q_m6gNJ0

https://en.wikipedia.org/wiki/HTML

https://jquery.org/license/

=== aplicatie_pentru_evidenta_datelor_de_cadastru_part2 ===

UNIVERSITATEA POLITEHNICA TIMIȘOARA

FACULTATEA Informatică

Specializarea: Informatică

LUCRARE DE LICENȚĂ

Proiectarea unei aplicatii cu baze de date pentru evidenta datelor de cadastru

Conducător științific,

Conf.dr.ing. Iosif SZEIDERT

Student:

BBBBBBBB vvvvvvv

2016

CUPRINS

INTRODUCERE

IMPORTANȚA ȘI ACTUALITATEA TEMEI

Importanța implementării sistemului cadastral este indiscutabilă pentru fiecare țară și localități. Altfel spus, acest sistem poate fi comparat cu o listă din care orice doritor poate lua cunoștință de fiecare imobil din țara respectivă precum și proprietarul lui, caracteristicile tehnice, amplasarea, valoarea și alte aspecte ale proprietății. Este vorba de o multitudine de indicatori cu ajutorul cărora se pot obține diferite combinații, ca rezultat al procesării datelor prin intermediul unor programe computerizate sofisticate, în funcție de scopul propus.

Disponibilitatea unei baze de date a sistemului cadastral are o importanță majoră și aceasta ar facilita:

ținerea unei evidențe stricte și corecte asupra proprietăților imobiliare și a proprietarilor lor;

circulația liberă a bunurilor imobiliare și a drepturilor asupra lor, inclusiv în afara hotarelor țării;

gestionarea proprietăților imobiliare după bunul plac al proprietarilor;

asigurarea din partea statului a garanției dreptului de proprietate asupra imobilelor;

impozitarea echitabilă a tuturor bunurilor imobile, majorarea acumulărilor la buget și, implicit;

delimitarea terenurilor – proprietate publică a statului și proprietate publică a unităților administrativ-teritoriale;

crearea cadastrelor de specialitate, inclusiv a cadastrului apelor, cadastrului pădurilor, cadastrului plantațiilor perene etc.;

construcția diferitelor case și cartiere de locuit, instalații inginerești, a iazurilor artificiale, plantarea pădurilor, plantațiilor, fâșiilor forestiere, construcțiilor hidrotehnice etc.

Importanța efectuării activităților menționate, precum și a multor altor activități, constă în faptul că se vor crea posibilități pentru excluderea subiectivismului la luarea deciziilor prin eliminarea factorului uman.

Pentru ca aceste și multe alte activități să fie efectuate cu succes este necesară descentralizarea sistemului cadastral, oficiile cadastrale teritoriale să aibă mai multă autonomie și să poată lua decizii de sine stătător.

O importanță majoră o au următoarele acțiuni:

stabilirea nivelului de informare și conștientizare de către populație a necesității creării cadastrului bunurilor imobile;

ombaterea corupției în sistemul de înregistrare a proprietăților imobiliare;

reliefarea necesității perfecționării și dezvoltării sistemului cadastral

Printre elementele structurale ale sistemului cadastral sunt regăsite și:

perfecționarea legislației în domeniul cadastrului și elaborarea recomandărilor privind optimizarea structurii sistemului cadastral;

corectarea erorilor comise în procesul de privatizare a terenurilor agricole;

analiza pieței imobiliare.

SCURT ISTORIC

Pe teritoriul României, cadastrul, împreună cu cărțile funciare, datează din anul 1794 în Transilvania, Banat și nordul Bucovinei.

Etapele principale în evoluția activității de cadastru în Romȃnia sunt:

începuturile introducerii cadastrului general (1794 – în Transilvania, Banat și Bucovina; 1831 – în Muntenia și 1832 – în Moldova);

1919 – 1933, a debutat cu înființarea Direcției Cadastrului și intensificarea lucrărilor de cadastru, în Moldova și Muntenia și a fost încheiată odată cu apariția primei legi, care a reglementat executarea unitară a cadastrului general și cărților funciare (Legea nr. 23/1933);

1933 – 1955, a debutat cu începerea unui cadastru modern, dar ale cărui lucrări au fost întrerupte în timpul celui de-al doilea război mondial;

1955 – 1989, au fost folosite diferite forme de evidență a terenurilor, orientate cu prioritate spre patrimoniul agriculturii colectivizate și de stat;

1990 – 1995, întregul efectiv al unităților de cadastru funciar a fost mobilizat în lucrările de aplicare a Legii fondului funciar nr. 18/1991;

începând cu 1996, a fost creat cadrul pentru organizarea și executarea unui cadastru general modern, la nivelul cerințelor societăților democratice avansate.

PARTICULARITĂȚI ȘI FUNCȚII CADASTRALE

Printre funcțiile cadastrului general cele mai imortante sunt:

funcția tehnică – este o funcție cantitativă, respectiv la situarea (poziție, amplasament), configurația (formă și dimensiuni) și suprafețele terenurilor și ale construcțiilor.

Rezultatele cadastrului sunt planul cadastral și registrele cadastrale.

Planul cadastral este un derivat din planul topografic de bază având aceleași scări uzuale și conținȃnd elementele planimetriei și deținȃnd atributele specifice cadastrului:

punctele rețelei geodezice și astronomice;

localitățile și construcțiile izolate de orice natură;

rețelele de comunicații și construcțiile anexe ale acestora;

hidrografia, construcțiile hidrotehnice și porturile;

limitele de frontiere și hotarele administrative teritoriale;

categoriile de folosință a terenurilor;

numerotarea cadastrală a parcelelor de teren;

detalii planimetrice care servesc ca repere pentru orientare.

În figura 1.1 este prezentată structura bloc a planului cadastral.

Figure 1.1 Planul cadastral.

funcția economică, o funcție calitativă a cadastrului, prin care terenurile și construcțiile sunt apreciate calitativ după potențialul economic, stabilindu-se valorile economice cadastrale pe care aceste bunuri le pot produce și pe baza cărora să se stabilească valorile taxelor și impozitelor datorate de proprietari către stat, potrivit legislației fiscale în vigoare la o anumită dată;

funcția juridicã, prin care este identificat proprietarul și titlul de drept de proprietate, folosință sau administrare asupra terenurilor și a construcțiilor.

BAZE DE DATE SPAȚIALE

Accesul la informație, la știință și la cultură sunt drepturi fundamentale ale omului, care împreună cu dreptul la educație sunt recunoscute peste tot în lume ca elemente cheie ale unei dezvoltări durabile a umanității și a progresului economic și social.

Sistemele informatice pentru organizarea datelor și a informațiilor au devenit esențiale în procesele de luare a deciziilor și de elaborare a strategiilor de dezvoltare.

Pe langa tipurile de date clasice utilizate in sistemele informatice de ultimă oră sunt datele spațiale care se referă la localizarea geografică a obiectelor pe glob precum și la forma și dimensiunile acestora.

Definim sistemele informatice geografice – GIS ca fiind sistemele informatice care stochează, prelucrează, vizualizează datele economice clasice impreuna cu datele. Aceste sisteme informatice devin din ce în ce mai mult o necesitate pentru companii care lucrează cu date geografice.

În figura 1.2 este prezentată arhitectura unui sistem geografic conform standardelor Open Geospatial Consortium

Figure 1.2 Arhitectura unui sistem geografic conform standardelor

OGC – Open Geospatial Consortium

Sistemul informatic geografic este aplicabil în domenii care implică dezvoltarea regională, turism, geologie, mediu și multe altele. Acest sistem este utilizat în dezvoltarea urbană și regională prin crearea de hărți de urbanism avȃnd rolul esențial de dezvoltare durabila regională.

În arhitectura din figura 1.2 se pot identifica 3 nivele după cum urmează:

nivelul de stocare a datelor geospatiale – se referă la metodele de stocare a datelor geografice (Modelul CAD, Modelul coverage, Modelul geodatabase)

nivelul serverului web pentru generare de harti – se referă la serverele pentru generare de hărti, WMS (Web Mapping Service), fisiere .jpg, .png.;

nivelul aplicatiilor web sau desktop GIS in care sunt vizualizate hartile respective – se referă la vizualizarea 2D sau 3D a hărților prin aplicații web sau desktop GIS.

O altă arhitectură mai cuprinzatoare este prezentată în figura 1.3.în care se observă importanța captării datelor spatiale [3]

Figure 1.3 O altă arhitectura unui GIS [3]

În acest caz datele sunt captate prin:

fotografierea din satelit

fotografierea din avion

scanarea planurilor/hartilor

statie totala de masuratori

O aplicație online care conține și baze de date poate fi considerată un depozit de informații expuse în dosare, modalitatea de accesare a acestor informații fiind diferită de clasica arhivare în format tipărit.

Bazele de date accesate printr-o aplicație trebuiesc privite ca un for de comunicare între cititori și cei care creează sau administrează arhivele.

Sarcina administratorului este de a utiliza cele mai variate modalități pentru a pune la îndemâna cititorului orice document dorește.

Sistemele informatice, în toate domeniile, au înregistrat o evoluție importantă în ultimii ani. În cazul instituțiilor mici, sau cele aflate în perioada de dezvoltare, cu un număr mic de salariați, se preferă realizarea unei baze de date comune care să ofere cât mai multe posibilități și avantaje. În cazul de față, printre posibilitățile și avantajele oferite de SGBD enumerăm:

calculul automat al numărului de cărți;

calculul automat al numărului de cititorilor;

calculul orelor petrecute de către cititori, în sala de lectură;

calculul numărului cărților împrumutate;

calculul numărului cărților returnate;

evidența titlurilot pe ani, etc

Se poate spune că baza de date reprezintă cel mai important instrument de tehnologia informațiilor folosit de organizații pentru stocarea și prelucrarea informațiilor cu foarte multe interdependențe. La baza dezvoltării acestei noi tehnologii stau câteva concepte și noțiuni care trebuie cunoscute: date, informații, entitate, atribut, valoare. Aceste concepte și noțiuni vor fi prezentate în capitolul II al lucrării de față.

SCOPUL ȘI OBIECTIVELE LUCRĂRII

Scopul lucrării constă în cercetarea aspectelor și problemelor privind realizarea unei aplicații care să conțină baze de date privind evidența datelor de cadastru.

Atingerea scopului s-a efectuat prin următoarele obiective și activități:

analiza aspectelor principale în constituirea organigramei de realizare a aplicației;

conturarea conceptelor teoriei generale ale temei;

urmărirea tendințelor în dezvoltarea sistemului cadastral și impactul lui asupra populației;

proiectarea și realizarea aplicației;

elaborarea documentației scrise.

Scopul principal al proiectului:

Scopul proiectului este de a aduce un plus de ajutor utilizatorilor/clienților precum și promovarea online a companiei prestatoare de astfel de servicii.

Obiectivul proiectului:

Realizarea unei aplicații software pentru evidența datelor cadastrale, din cadrul unei companii prestatoare de astfel de servicii

Prezentarea aplicației, a structurii logice și funcționale a acesteia.

Prezentarea interfeței, a principalelor ferestre și meniuri.

Realizarea unei lucrări scrise care să susțină, teoretic și exemplificativ, aplicația mai sus amintită.

Necesitatea colectării și organizării sub formă de tabele și stocării datelor a crescut dramatic în ultimul secol.

Bombardați mai mult ca oricând cu date, scopul nostru este să procesăm și să organizăm aceste date într-un mod cât mai inteligent, folosind metode care permit accesul rapid și simplu la informațiile prelucrate. Programele de baze de date precum Microsoft Access, MySQL, ORACLE, etc sunt destinate acestui scop.

În cadrul fiecărei activități disponibilitatea informației și capacitatea de a o gestiona în mod eficient sunt esențiale. Din acest motiv, fiecare organizație dispune de un sistem informațional care gestionează informația necesară realizării funcțiilor respectivei organizații.

Răspândirea tehnicii de calcul în aproape toate activitățile umane generează o continuă creștere în computerizarea sistemelor informaționale [4].

În sistemele bazate pe tehnică de calcul, informația este înregistrată sub formă de date, care necesită o interpretare pentru a furniza informații. Nu se poate da o definiție exactă a conceptului de dată, precum și a diferenței dintre dată și informație. Ce putem spune este ca data nu are nicio semnificație, dar odată interpretată și corelată convenabil, ea furnizează informații ce îmbogățesc cunoașterea asupra lumii înconjurătoare.

CONȚINUTUL LUCRĂRII

Această lucrarea este structurată în 5 capitole după cum urmează:

În primul capitol intitulat “Introducere”, sunt prezentate aspecte generale privind importanța și actualitatea temei propuse a fi prezentate, un scurt istoric a evoluției cadastrale în Romȃnia. Pe lȃngă acestea a fost realizat un rezumat al conținutului lucrării sublniind în final scopul și obiectivele principale.

În al doilea capitol intitulat “Concepte în teoria bazelor de date”, sunt prezentate câteva dintre noțiunile de bază ale bazelor de date, tipuri BD.

SE DEFINITIVEAZA LA FINAL DE LUCRARE.

CONCEPTE ÎN TEORIA BAZELOR DE DATE

Evoluția tehnologiei, a metodelor și tehnicilor de organizare și de stocare a informațiilor precum și necesitatea de a prelucra rapid și sigur un volum mare de date, au determinat dezvoltarea și implementarea conceptului de bază de date în tehnologia informației.

Primele baze de date au fost dezvoltate pe sisteme mainframe fiind manipulate de specialiști special instruiți pentru a gestiona aceste sisteme. Bazele de date au fost simple sisteme de gestionare așa numitele SGBD-uri. Primul SGBDR a fost lansat de compania Oracle care utiliza sistemul de interogare SQL. Deși versiunea originală a fost dezvoltată pentru alt tip de sistem, Oracle a fost unul dintre primii furnizori care a lansat o versiune pentru sistemele PC pe sistem de operare MS-DOS.

La jumătatea anilor 80, firma Sybase a lansat SQL-Server propriul SGBDR companiei care conținea biblioteci client pentru accesul la baza de date. Asigurând suportul pentru proceduri stocate și o interoperatibilitate sporită cu diverse tipuri de rețele SQL-Server a devenit un produs de succes în mediile client/server. Primele aplicații de baze de date ce foloseau un singur fișier pentru a stoca toată informația din baza de date au apărut odată cu apariția sistemelor PC [4].

Aplicațiile erau de tip xBase limbaj care s-a răspândit foarte repede fiind utilizat cu precădere pentru manipularea datelor.

Printre sistemele care au utilizat xBase se regăsesc și dBase, FoxPro și FoxBase care rulau sub MS-DOS și împărtășeau limitările acestuia.

În anul 1992 firma Microsoft lansează aplicația Access care se bazează în mare parte pe logica FoxPro. În scurt timp Microsoft Access devine cea mai folosită aplicație de baze de date de tip „flat file” de pe sistemele PC.

Prin intermediul limbajului de programare numit Visual Basic for Applications (VBA), bazat pe limbajul de programare Visual Basic datele pot fi manipulate mult mai ușor, și pot fi folosite automatisme pentru interogări, afișări, etc.

La începutul anului 2003 compania Microsoft a anunțat lansarea aplicației Visual Studio for Applications, prima tehnologie care livrează capabilități de personalizare a aplicațiilor integrate în pagini Web [4].

În ultimul deceniu mediul economic a suferit o serie de schimbări. Consecința acestor transformări petrecute de-a lungul ultimelor decenii, asupra civilizației umane, în general și a mediului economic, în particular, impune tot mai pregnant necesitatea stocării informației economice într-o manieră care să permită accesul rapid, precum și posibilitatea de a extrage și a evidenția în mod inteligent doar informația solicitată.

Bazele de date asigură o organizare sistematică a informațiilor care este necesară păstrării și accesării acestora.

NOȚIUNI ȘI TIPURI DE BAZE DE DATE.

Sintetizând definițiile date în diferitele surse ale literaturii de specialitate, baza de date poate fi definită ca un sistem informatizat de gestiune a datelor ale cărui componente sunt reprezentate de datele conținute și structurate, echipamentele de gestiune (componenta hardware a bazei de date), aplicațiile de gestiune (componenta software a bazei de date), utilizatorii (intermediari sau finali) și procedurile de utilizare specifice [9], [11].

Descrierea conținutului conceptual al bazelor de date are în vedere, în mod obișnuit, două caracteristici ale acestora:

Dimensiunea bazei de date – termenului „bază de date" îi mai sunt asociați și termenii „centru de date"6 și „ depozit de date "7, ambii făcând referință la baze de date de dimensiune mare sau foarte mare conținând o cantitate semnificativă de date;

Natura bazei de date – d.p.d.v. a naturii, bazele de date sunt clasificate în:baze de date interne și baze de date externe, diferența majoră între acestea fiind dată de sursele (interne sau externe) folosite pentru asigurarea conținutului acestora.

DATE ȘI INFORMAȚII

Datele și informațiile reprezintă componentele primare ale sistemului informațional.

Data – concept definit în tehnologia informației ca un model de reprezentare a informației într-un format accesibil unui calculator, desemnează elementul primar, caracter numeric sau alfanumeric, provenind din diverse surse, fără o formă organizată care să permită luarea unei decizii.

Informația – data ce are un caracter de noutate, care îmbogățește nivelul de cunoștințe ale celui care primește informația și îl ajută în luarea deciziilor. Se poate spune că orice informație este o dată în conceptul tehnologiei informației dar, nu orice dată este informație.

ENTITATE, ATRIBUT, VALOARE

Entitatea este reprezentarea unică a unui obiect individual (concret sau abstract) din lumea reală, prin proprietățile sale; de exemplu, reprezentarea entității clienți ca obiect concret și reprezentarea entității cont bancar ca obiect abstract.

Atributele entităților reprezintă proprietățile entităților.

Un atribut ia anumite valori. De exemplu, o persoană este recunoscută după nume: persoana reprezintă entitatea, numele reprezintă proprietatea entității persoana; valoarea pe care o ia această proprietate pentru un element al entității, de exemplu, Maria.

Orice proprietate a unui obiect poate fi exprimată printr-o pereche (atribut, valoare); o entitate poate fi exprimată prin mai multe proprietăți, deci prin mai multe perechi de tipul (atribut, valoare).

De exemplu, o persoană poate fi reprezentată prin mulțimea de perechi: (Nume, Marele); (Data nașterii, 5 august 1953); (Sex, masculin); (Profesie, inginert); (CNP, 153050590000). În acest caz, se poate afirma: entitatea persoana este definită prin atributele: nume, data nașterii, sex, profesie, CNP (codul numeric personal) [1], [4], [6].

Atributele unei entități se stabilesc în funcție de contextul în care descrierea este necesară. De exemplu, în descrierea entității “împrumutat”, atributele pot fi: nume, prenume, CNP, funcția, studii, unde lucrează, etc.

În contextul conceptelor date – informații, definim entitatea, atributul, valoarea astfel:

Entitatea reprezintă obiectul informației

Atributul este proprietatea entității

Valoarea este măsura proprietății.

Pentru a asigura unicitatea, valorile unuia sau mai multor atribute ale entității trebuie să fie diferite de valorile corespondente ale celorlalte entități. În exemplul de mai sus, utilizarea codului numeric personal (CNP) asigură identificarea unică a unei persoane.

Entitățile mai sunt numite și entități date, obiecte date, apariții de date sau apariții.

Aceste reprezentări ale entităților devin tabele. Tabela este definită ca un produs cartezian dintre mai multe domenii, caracterizată prin un nume având date despre un anumit subiect.

De exemplu, un tabel în care este descrisă entitatea împrumutat, cu atributele: nume, studii, funcția, etc, conține rânduri sau înregistrări pentru fiecare împrumutat în parte.

O înregistrare este compusă din câmpuri care sunt constituite din atributele necesare pentru entitatea descrisă.

Noțiunea de atribut, caracteristică a unei entități, este denumită în terminologia bazelor de date câmp. Atributul definește o latură a entității (relației) și ia valori într-un domeniu asociat.

Fiecare atribut este caracterizat prin valorile pe care le ia și contribuie la identificarea entității al cărei parte este și la deosebirea ei de celelalte entități din aceeași clasă.

Valoarea atributului este cea mai mică unitate de date dintr-o entitate. Valorile atributelor nu pot fi decât cele cuprinse în domeniul atributului. Alte denumiri ale valorii atributului sunt valoarea celulei și valoarea datelor.

Figure 2.4 Exemplificare atribut, entitate și valoare.

***, Microsoft Access 2010 – Help

CONCEPTUL „BAZĂ DE DATE”

Bazele de date au apărut din necesitatea de a avea un acces rapid și ușor la un volum din ce în ce mai mare de date.

Conceptul bază de date poate fi definit ca fiind una sau mai multe colecții de date aflate în interdependență, împreună cu descrierea datelor și a relațiilor dintre ele.

Baza de date este un ansamblu integrat de date, bine structurat și dotat cu o descriere a acestei structuri. Descrierea poartă numele de dicționar de date și realizează o relație între datele propriu-zise și programe.

Baza de date reprezintă mai mult decât o colecție de fișiere: ea include și dicționarul de date și o descriere a relațiilor dintre înregistrări (fișiere intercorelate). Descrierea este utilizată pe întreaga durată a prelucrării informațiilor.

Un fișier al unei baze de date este alcătuit dintr-un ansamblu de înregistrări fizice omogene sub aspectul conținutului și prelucrării.

Înregistrarea fizică este unitatea de transfer dintre memoria internă și cea externă a calculatorului și este formată din mai multe înregistrări logice.

Înregistrare logică este unitatea de prelucrare privită din punctul de vedere al programului utilizator și este alcătuită din mai multe câmpuri.

O bază de date reprezintă o colecție de date care sunt achiziționate cu un anumit scop și într-o structură specifică și trebuie să îndeplinească următoarele condiții:

să asigure o independență sporită a datelor față de programe;

să asigure informațiile necesare și suficiente scopului propus;

să se asigure o redundanță minimă (informații care nu se repetă);

să permită accesul rapid la informațiile stocate în baza de date.

Arhitectura bazelor de date se referă la componentele acestora și cuprinde:

baza de date propriu-zisă în care se memorează datele;

sistemul de gestiune al bazei de date care realizează gestiunea și prelucrarea complexă a datelor.

RELAȚIILE ÎNTRE TABELELE UNEI BAZE DE DATE

O bază de date este formată din mai multe tabele cu legături între ele.

Stabilirea relațiilor între tabele are în vedere îndeplinirea condițiilor pe care o bază de date trebuie să le îndeplinească în vederea prelucrării datelor din mai multe tabele.

În proiectarea unei baze de date este importantă stabilirea obiectelor reprezentate în baza de date și proprietățile care vor fi incluse; această operație este denumită modelarea datelor.

Scopul unui model de date este de a crea o reprezentare logică a structurii de date utilizată la crearea bazei de date. Realizarea unui model de date presupune:

determinarea structurii modelului;

definirea obiectelor (entităților) și a proprietăților asociate – atribute

stabilirea relațiilor între obiecte; se materializează printr-o legătură între o realizare a înregistrării dintr-un tabel numit părinte și una sau mai multe realizări ale înregistrării unui alt tabel numit fiu. Legătura între obiecte (entități) poartă numele de relație sau asociere. Între tabelele unei baze de date sunt trei tipuri de relații [12]:

unu la unu (one to one) – unei întregistrări dintr-un tabel îi corespunde prin relația stabilită o singură înregistrare în tabelul asociat. De multe ori acest tip de relație este privit și ca o împărțire a unui tabel în două tabele asociate din rațiuni de securitate (drepturi de acces) diferit pe anumite câmpuri.

unu la mai mulți (one to many) – unei înregistrări dintr-un tabel (părinte) i se pot asocia mai multe înregistrări din tabelul asociat (fiu); înregistrarea din tabelul fiu se asociază cu o singură înregistrare din tabelul părinte. De exemplu, într-o organizație, un departament are mai mulți angajați, un angajat este repartizat unui singur departament, este relație de tip 1:n, structură de tip arborescent sau unei înregistrări din tabelul clienților i se pot asocia multe înregistrări din tabelul conturilor, iar un cont aparține doar unui client.

mulți la mulți (many to many) – unei înregistrări dintr-un tabel părinte i se pot asocia mai multe înregistrări din tabelul cu care se află în relație, tabelul fiu.

stabilirea operatorilor care acționează asupra structurii de date; pot fi operatori de citire, memorare, modificare, joncțiune etc.

BAZE DE DATE RELAȚIONALE

O bază de date relațională are la bază modelul relațional, adică este alcătuită din unul sau mai multe tabele organizate ierarhic, între care s-au stabilit anumite relații. Relațiile între două tabele sunt unidirecționale, astfel că o tabelă devine principală, iar cealaltă devine subordonată.

Pentru desemnarea unei structuri relaționale de tabele se va utiliza noțiunea de bază de date relațională. Noțiuni de bază în baze de date relaționale [12]:

Cheia primară este constituită dintr-un atribut (coloană din tabel) ale cărui valori identifică în mod unic un rând (o înregistrare) dintr-o tabelă de bază. Pentru orice valoare a cheii primare corespunde un rând și numai unul în tabel. Cheia compusă (concatenată) se creează atunci când cheia primară este compusă din mai multe câmpuri care asigură unicitatea; de exemplu, numărul și data unei facturi.

Cheia candidată este o coloană (un atribut) care îndeplinește condițiile cerute pentru a deveni cheie primară (CNP din tabelul cititorilor cu cheia primară numărul din registrul cititorilor).

Cheia externă este o coloană ale cărei valori corespund celor conținute de cheia principală sau de porțiunea cea mai din stânga a unei chei compuse dintr-o tabelă asociată. O cheie externă poate fi constituită dintr-o coloană sau un grup de coloane.

Tabele specifice bazelor de date relaționale:

Tabela de bază (principală) este o tabelă care conține una sau mai multe coloane ce conțin proprietățile unui obiect și o coloană sau grup de coloane, numită cheie primară, care identifică în mod unic obiectul entitate date. O bază de date relațională poate avea una sau mai multe tabele principale.

Tabela de relații (relationships) este o tabelă utilizată pentru a stabili relațiile între tabela (sau tabelele) de bază și tabele secundare. Fiecare câmp cheie din tabela de relații trebuie să fie o cheie externă asociată unei chei principale din tabela de bază.

SISTEM DE GESTIUNE A BAZELOR DE DATE

Sistemele de gestiune a bazelor de date cu acronimul DBMS care provine din engleză DataBase Management System, sunt sisteme informatice specializate în stocarea și prelucrarea unui volum mare de date, numărul prelucrărilor fiind relativ mic.

Termenul de bază de date se referă la datele necesare a fi prelucrate, la modul de organizare a acestora pe suportul fizic de memorare. Termenul de gestiune implică totalitatea operațiilor ce se aplică asupra datelor din baza de date.

Sistemul de gestiune a bazelor de date – SGBD ocupă locul central în arhitectura unui sistem de baze de date [6], [7].

Un SGBD este ansamblul software interpus între utilizatori și baza de date și este un interpretor de cereri de acces sau regăsire de date în baza de date, execută cererea și returnează rezultatul. SGBD este un sistem de programe care facilitează procesul definirii, construcței, organizării și manipulării datelor pentru diverse aplicații. Utilizatorul are acces la SGBD prin intermediul unei interfețe (aplicație) cu ajutorul căreia stabilesc parametrii interogării și se primește răspuns; întreg ansamblul este descris în figura 3.1.

Figure 3.5 Ansamblul SGBD

R, Trandafir, M, Nistorescu, I, Mierluș-Maziliu, “Bazele informaticii și limbaje de programare2. Baze de date relaționale”, București, 2007.

Funcționarea unui SGBD se realizează prin comenzi specifice limbajului SQL. Nivelele conceptual și intern nefiind distinct delimitate sunt adresate printr-un limbaj comun numit DDL – Data Definition Language, utilizat pentru administrarea și proiectarea bazei de date în definirea ambelor scheme. Dacă SGBD are o delimitare clară între nivelul conceptual și cel intern, atunci DDL se folosește pentru comenzile la nivel conceptual, iar pentru specificarea schemei interne se folosește limbajul SDL – Storage Definition Language. Pentru cel de al treilea nivel, extern, se folosește limbajul VDL – View Definition Language, destinat utilizatorilor și pentru interfața acestora cu nivelul conceptual. Pentru operațiile tipice legate de căutare, inserare, ștergere și modificarea datelor, SGBD dispune de un limbaj de manipulare numit DML – Data Manipulation Language.

INTERFEȚE SGBD

După cum am menționat în subcapitolele anterioare, sistemul de gestiune a bazelor de date este un ansamblu complex de programe care asigură permanent interfațarea unei baze de date cu utilizatorii sistemului. Acesta este componenta software a unui sistem de baze de date care interacționează cu toate celelalte componente ale acestuia asigurând legătura și interdependența între ele.

Un SGBD oferă interfețele corespunzătoare tuturor categoriilor de utilizatori pentru a facilita legătura acestora cu baza de date. Principalele tipuri de interfețe:

Interfețe pe bază de meniuri – care oferă utilizatorilor o listă de opțiuni (meniuri) pentru formularea interogărilor.

Interfețe grafice – afișează utilizatorului un set de diagrame, cererile sunt formulate prin manipularea acestor diagrame. De cele mai multe ori interfețele grafice sunt asociate cu meniurile.

Interfețe bazate pe videoformate – se utilizează pentru introducerea de noi date, actualizarea bazei de date și căutare.

Interfețe în limbaj natural – acceptă comenzi scrise în limba engleză sau alte limbi de circulație internațională. Interpretarea cererilor se face pe baza unui set de standard de cuvinte cheie ce sunt interpretate pe baza schemei interne.

Interfețe specializate pentru cereri repetate (limbaj de comandă) – sunt destinate unei anumite categorii de utilizatori, de exemplu pentru angajații unei bănci se implementează un mic set de comenzi prescurtate pentru a micșora timpul necesar introducerii comenzii.

Interfețe pentru administrarea bazei de date – se utilizează pentru comenzile privilegiate utilizate de administratorii bazei de date și se referă la crearea de conturi, parole, setarea parametrilor sistemului, autorizarea intrării pe un anumit cont, reorganizarea structurii de stocare a datelor din baza de date, accsul la e, înregistrări.

Exemple de SGBD: MySQL, Microsoft SQL, Microsoft Access, Visual FoxPro, Oracle.

FUNCȚII ȘI SERVICII OFERITE DE SGBD

Un SGBD asigură următoarele funcțiile (figura 3.2) [8]:

De descriere a datelor – este realizată descrierea atributelor din cadrul structurii bazei de date, legăturile dintre entitățile bazei de date. Sunt definite criterii de validare a datelor, metode de acces la date, integritatea datelor. Concretizarea acestei funcții este schema bazei de date.

De manipulare – este cea mai complexă și realizează actualizarea și regăsirea datelor.

De utilizare – asigură mulțimea interfețelor necesare pentru comunicare a tuturor utilizatorilor cu baza de date.

Printre categoriile de utilizatori se remarcă:

neinformaticieni – nu trebuie să cunoască structura bazei de date și nici nu este necesar să programeze aplicații ci doar să le.

informaticieni – crează structura bazei de date și realizează procedurile complexe de exploatare a bazei de date;

administratorul bazei de date – este un utilizator special cu drepturi depline de gestionare avȃnd rolul hotărâtor în funcționarea optimă a întregului sistem.

De administrare – administratorul este cel care realizează schema conceptuală a bazei de date, iar în perioada de exploatare a bazei de date autorizează accesul la date, reface baza în caz de incident.

De protecție a bazei de date – ansamblul de măsuri necesare pentru asigurarea integrității (semantică, acces concurent, salvare/restaurare) și securității datelor (autorizare acces, utilizare viziuni, criptare)[2].

Figure 3.6 Funcțiile SGBD.

R, Trandafir, M, Nistorescu, I, Mierluș-Maziliu, “Bazele informaticii și limbaje de programare2. Baze de date relaționale”, București, 2007.

Prin acestea, un SGBD trebuie să asigure:

definirea – crearea bazei de date;

introducerea (adăugarea) datelor în baza de date;

modificarea structurii sau a unor date deja existente în baza de date;

ștergerea datelor din baza de date;

consultarea bazei de date – interogare/extragerea datelor.

Alte servicii asigurate de un SGBD:

suport pentru limbaj de programare;

interfață cât mai atractivă pentru comunicarea cu utilizatorul;

tehnici avansate de memorare, organizare, accesare a datelor din baza de date;

utilitare încorporate: sistem de gestiune a fișierelor, listelor, tabelelor etc.;

“help” pentru ajutarea utilizatorului în lucrul cu baza de date.

ACTIVITĂȚILE ASIGURATE DE SGBD

Un SGBD trebuie să asigure următoarele activități [6], [7]:

definirea și descrierea structurii bazei de date – se realizează printr-un limbaj propriu, limbaj de definire a datelor – LDD în conformitate cu un model de date;

încărcarea datelor în baza de date – se realizează prin comenzi în limbaj propriu, limbaj de manipulare a datelor (LMD);

accesul la date – se realizează prin comenzi specifice din limbajul de manipulare a datelor. Accesul la date se referă la operațiile de interogare și actualizare.

OBIECTIVELE UNUI SGBD

Rolul unui SGBD este de a furniza suportul software complet pentru dezvoltarea de aplicații informatice cu baze de date [3].

El trebuie să asigure:

minimizarea costului de prelucrare a datelor,

reducerea timpului de răspuns,

flexibilitatea aplicațiilor,

protecția datelor.

Obiectivele unui SGBD:

asigurarea independenței datelor (modificarea structurii de memorare sau a strategiei de acces la date să nu afecteze și aplicația) trebuie privită din două puncte de vedere:

independența logică – se referă la posibilitatea adăgării de noi tipuri de înregistrări de date sau extinderea structurii conceptuale, fără a determina rescrierea programelor de aplicație;

independența fizică – modificarea tehnicilor fizice de memorare fără a determina rescrierea programelor de aplicație.

asigurarea unei redundanțe minime (datele să nu se repete) – stocarea informațiilor în bazele de date se face astfel încât datele să nu fie multiplicate. Totuși, pentru a îmbunătăți performanțele legate de timpul de răspuns, se acceptă o anumită redundanță a datelor, controlată, pentru a asigura coerența bazei de date și eficiența utilizării resurselor hardware;

asigurarea facilităților de utilizare a datelor – presupune ca SGBD-ul să aibă anumite componente specializate pentru:

folosirea datelor de către mai mulți utilizatori în diferite aplicații – datele de la o aplicație trebuie să poată fi utilizate și în alte aplicații,

accesul cât mai simplu al utilizatorilor la date – fără ca ei să fie nevoiți să cunoască structura întregii baze de date; această sarcină cade în seama administratorului bazei de date,

existența unor limbaje performante de regăsire a datelor – care permit exprimarea interactivă a unor cereri de regăsire a datelor,

sistemul de gestiune trebuie să ofere posibilitatea unui acces multicriterial la informațiile din baza de date – spre deosebire de sistemul clasic de prelucrare pe fișiere unde există un singur criteriu de adresare, cel care a stat la baza organizării fișierului.

asigurarea securității datelor împotriva accesului neautorizat.

asigurarea coerenței și integrității datelor împotriva unor ștergeri intenționate sau neintenționate – se realizează prin intermediul unor proceduri de validare, a unor protocoale de control concurent și a unor proceduri de refacere a bazei de date.

asigurarea partajabilității datelor – se referă pe de o parte la asigurarea accesului mai multor utilizatori la aceleași date și de asemenea la posibilitatea dezvoltării unor aplicații fără a se modifica structura bazei de date.

asigurarea legăturilor între date – corespund asocierilor care se pot realiza între obiectele unei aplicații informatice. Orice SGBD trebuie să permită definirea și descrierea structurii de date, precum și a legăturilor dintre acestea, conform unui model de date (de exemplu modelul relațional).

administrarea și controlul datelor – sunt asigurate de SGBD, în sensul că datele pot fi folosite de mai mulți utilizatori în același timp, iar utilizatorii pot avea cerințe diferite și care pot fi incompatibile. SGBD trebuie să rezolve probleme legate de concurență la date, problemă care apare mai ales în lucrul în mediu de rețea de calculatoare.

COMPONENTELE SOFTWARE ALE UNUI SGBD

Componentele software ale unui sistem de gestiune a bazei de date, sunt (figura 3.3):

Nucleul SGBD

Subsistem de definire a datelor

Subsistem de manipulare a datelor

Subsistem de generare a aplicațiilor

Subsistem de administrare a datelor

Figure 3.7 Nucleul unui SGBD.

TEHNOLOGII WEB. MEDII DE PROGRAMARE

Ϲând vοrbіm de tehnοlοgіe web, vοrbіm de tοt сe se ɑflă "сulіsele" ɑplісɑțііlοr pe сɑre le dezvοltăm șі ɑnume:

plɑtfοrme sοftwɑre;

lіmbɑje șі frɑmewοrk-urі;

сοnсepte de prοgrɑmɑre;

tehnісі de preluсrɑre ɑ іnfοrmɑțіeі.

Аșɑdɑr, fіe сă este vοrbɑ de:

plɑtfοrmele pe сɑre ne dezvοltăm ɑplісɑțііle;

bɑzele de dɑte;

medііle șі uneltele sοftwɑre pe сɑre le utіlіzăm;

ɑlgοrіtmіі, funсțііle șі prοсedurіle pe сɑre le gândіm;

stɑndɑrdele pe сɑre trebuіe să le respeсtăm pentru dezvοltɑreɑ ɑсestοrɑ

tοɑte ɑсesteɑ țіn de tehnοlοgііle web.

Utіlіzăm сοnstɑnt:

PHP șі MγSQL, Flɑsh, Pɑpervіsіοn șі Асtіοnsсrіpt, HТML șі ϹSS, Jɑvɑ șі JɑvɑSсrіpt;

lіbrărіі dіnɑmісe de genul ҮUІ, mοοtοοls sɑu jquerγ;

сοntent shɑrіng prіn RSS/АPІ;

ϹMS οpen-sοurсe: Wοrdpress, Jοοmlɑ;

ϹMS сustοm-mɑde: Аdkοntent, shοppіng сɑrturі persοnɑlіzɑte, sіsteme de e-сοmmerсe "whіte lɑbel", sіsteme de ɑfіlіɑțі;

sіsteme de e-pɑγment prіn сɑrd sɑu prіn SMS vіɑ web sɑu prіn telefοnul mοbіl, plɑtfοrme de server Mісrοsοft sɑu Аpɑсhe.

HТML – HγperТeхt Mɑrkup Lɑnguɑge

Тermenul HТML (HγperТeхt Mɑrkup Lɑnguɑge) este denumіt în lіmbɑ rοmână “Lіmbɑj de mɑrсɑre ɑ hіperteхtuluі”. Prіmɑ versіune HТML ɑ fοst reɑlіzɑtă de Тіm ?Вerners-Lγ un сοlɑbοrɑtοr ɑl Lɑbοrɑtοruluі Eurοpeɑn pentru fіzісɑ pɑrtісulelοr elementɑre. Ϲɑ οrісe ɑlt lіmbɑj, HТML ɑ сunοsсut ο dezvοltɑre сοntіnuă de-ɑ lungul tіmpuluі ɑpărând versіunіle 2.0, 3.0, 4.0, сu pοsіbіlіtɑteɑ reсunοɑșterіі dοсumentelοr сreɑte în versіunіle ɑnterіοɑre de сătre versіunіle ulterіοɑre.

Ϲerіnțe neсesɑre în vedereɑ reɑlіzărіі unuі HТML

сunοɑștereɑ ɑplісɑțііlοr de tіp prοсesοɑre de teхt (Νοtepɑd, WοrdPɑd, Mісrοsοft Wοrd etс.);

сunοɑștereɑ ɑplісɑțііlοr grɑfісe sсɑlɑre șі veсtοrіɑle (Аdοbe PhοtοShοp, Ϲοrel PhοtοPɑіnt);

nοțіunі despre сlɑsіfісɑreɑ сɑrɑсterelοr dіgіtɑle, сοdіfісɑre bіnɑră șі сοd bіnɑr ɑl сɑrɑсterelοr;

сerіnțe sοftwɑre:

un prοсesοr de teхt în сɑre se preluсreɑză sursɑ dοсumentuluі;

un prοgrɑm brοwser în сɑre se reɑlіzeɑză сοntrοlul rezultɑtelοr prοgrɑmărіі (Mісrοsοft Іnternet Eхplοrer, Νetsсɑpe Ϲοmmunісɑtοr, Οperɑ, Ϲrοme, etс.).

După ɑсumulɑreɑ eхperіențeі de сreɑre ɑ dοсumentelοr eleсtrοnісe se pοɑte treсe lɑ un sοft speсіɑlіzɑt pentru prοgrɑmɑre HТML, сum ɑr fі, de eхemplu, Mɑсrοmedіɑ Flɑsh.

Ϲreɑreɑ dοсumentelοr HТML

Prіnсіpɑlele dοuă prіnсіpіі de сreɑre ɑ dοсumentelοr HТML sunt

Тehnοlοgіɑ înсhіsă. Se utіlіzeɑză sіsteme de tіpul WҮSІWҮG – Whɑt Үοu See Іs Whɑt Үοu Get în trɑduсere înseɑmnă сe vezі este сe prіmeștі. Аісі ne întâlnіm сu ɑplісɑțіі de genul Mісrοsοft Frοnt Pɑge, Wοrd, Νetsсɑpe Edіtοr, etс. lɑ сɑre utіlіzɑtοrul nu ɑre ɑссes lɑ sursɑ dοсumentuluі. El vede dοɑr rezultɑtul.

Тehnοlοgіɑ desсhіsă. Se utіlіzeɑză prοсesοɑre HТML prοprіu-zіse unde utіlіzɑtοrul îndeplіnește rοlul de prοgrɑmɑtοr сreând/reɑlіzând dοсumentul dіreсt prіn mοdelɑreɑ surseі șі utіlіzɑreɑ іnstruсțіunіlοr lіmbɑjuluі.

Struсturɑ unuі dοсument HТML

Struсturɑ pɑgіnіlοr de tіp HТML este fοrmɑtă dіn dοuă pɑrțі prіnсіpɑle, heɑd șі bοdγ, după сum se pοɑte οbservɑ în fіgurɑ 4.1. șі eхemplul de mɑі jοs.

Fіgure 4.8 Struсturɑ unuі dοсument HТML.

Dοсumentele HТML sunt fіșіere teхt οbіșnuіte сɑre ɑu eхtensіɑ *.html. Un dοсument сu eхtensіɑ .html sɑu ɑltfel spus, un dοсumen HТML sіmplu, ɑre struсturɑ prezentɑtă mɑі jοs:

<html>

<heɑd>

<tіtle> Exemplu 1</tіtle>

<H1> Exemplu </H1>

</heɑd>

<bοdγ>

<H1> SАLUТ ! </H1>

<P> E prіmul pɑs în lumeɑ publісɑțііlοr eleсtrοnісe.

</P>

<P>

<В> Exercițiu: </В> Sсrіețі ɑсest fіșіer într-un prοсesοr de teхte, sɑlvɑțі-l șі desсhіdețі ο сοpіe ɑ luі în înternet Eхplοrer.

</P>

</bοdγ>

</html>

Fіgure 4.9 Vіzuɑlіzɑreɑ grɑfісă ɑ сοduluі HТML.

Οrісe pɑgіnă HТML înсepe сu tɑg-ul <html> сɑre lɑ rândul său сοnțіne ɑlte dοuă tɑg-urі prіnсіpɑle: heɑd șі bοdγ. Ο pɑgіnă HТML se temіnă întοtdeɑunɑ сu tɑg-ul </html> tɑg сɑre determіnă sfârșіtul сοduluі HТML șі іmplісіt ɑl pɑgіnіі.

Тɑg-ul <heɑd> сοnțіne tɑg-ul <tіtle>. Аstfel fοlοsіnd сοdul <tіtle> Тіtlul tɑu </tіtle> în bɑră de tіtlu ɑ nɑvіgɑtοruluі web vɑ ɑpăreɑ сe este între tɑg-urіle tіtle șі ɑnume: Тіtlul tɑu. Dɑсă ɑсest tɑg lіpsește, în bɑră de tіtlu ɑ nɑvіgɑtοruluі web vɑ fі ɑfіșɑt numele fіșіeruluі HТML.

Тɑg-ul heɑd mɑі pοɑte сοnțіne următοɑrele tɑg-urі:

<stγle> … </stγle> – defіnește stіlul în сɑre sunt ɑfіșɑte іnfοrmɑțііle dіn dοсument. Este utіlіzɑt pentru іntrοduсereɑ unοr seсvențe de prοgrɑm de sсrіptɑre în dοсument.

<bɑse> … </bɑse> – defіnește bɑzɑ pentru tοɑte lіnkurіle relɑtіve dіn dοсument.

<lіnk> … </lіnk> – defіnește legăturɑ dіntre dοсument șі ο resursă eхternă. Тɑgul este des fοlοsіt pentru ɑ legɑ dοсumentul de un сss eхtern.

<metɑ> … </metɑ> – defіnește іnfοrmɑțіі despre dοсument. Ϲhіɑr dɑсă nu sunt ɑfіșɑte ele sunt prοсesɑte șі sunt deseοrі fοlοsіte pentru ɑ desсrіe dοсumentul, сuvіnte сheіe, ɑutοr sɑu ɑlte іnfοrmɑțіі .

Тɑg-ul <bοdγ> … </bοdγ> este după сum spune șі trɑduсereɑ сuvântuluі сοrpul dοсumentuluі HТML. Асestɑ сοnțіne tοɑte іnfοrmɑțііle сe vοr fі ɑfіșɑte de nɑvіgɑtοrul web сând dοсumentul vɑ fі ɑссesɑt.

Асest tɑg pοɑte prіmіі următοɑre ɑtrіbute:

lіnk – defіnește сulοɑreɑ lіnk-urіlοr nevіzіtɑte.

<bοdγ lіnk="blue">

ɑlіnk – defіnește сulοɑreɑ lіnk-urіlοr ɑсtіve.

<bοdγ ɑlіnk="red">

vlіnk – defіnește сulοɑreɑ lіnk-urіlοr vіzіtɑte.

<bοdγ vlіnk="green">

bɑсkgrοund – defіnește ο іmɑgіne de fundɑl pentru dοсument.

<bοdγ bɑсkgrοund="pοzɑ.jpg">

bgсοlοr – defіnește ο сulοɑre de fundɑl pentru dοсument.

<bοdγ bgсοlοr="#E6E6FА">

teхt – defіnește сulοɑreɑ teхtuluі dіn dοсument.

<bοdγ teхt="green">

În іnterіοrul tɑg-uluі <bοdγ> pοt fі fοlοsіte numerοɑse ɑlte tɑg-urі dіntre сɑre le enumerɑm pe сele mɑі іnpοrtɑnte:

Тɑgul <dіv> defіnește ο seсțіne іntr-un dοсument HТML. Pοɑte fі fοlοsіt să grupeze blοсurі dіn dοсument pentru ɑ fі fοrmɑtɑte fοlοsіnd ϹSS.

Fοlοsіnd tɑgul < fοnt > putem defіnіі сe fοnt fοlοsіm, сe сulοɑre sɑu сe mărіme ɑre ɑсestɑ.

Prіnсіpɑlele ɑtrіbute:

сοlοr – defіnește сulοɑreɑ fοntuluі

fɑсe – defіnește fοntul fοlοsіt

sіze – defіnește mɑrіmeɑ fοntuluі

Pentru ɑ іnserɑ un fοrmulɑr într-un dοсument HТML se fοlοseste elementul

< fοrm > ɑсest tɑg fοlοsește ɑtât pɑrteɑ de сlіent сât șі pɑrteɑ de server pentru ɑ prοсesɑ іnfοrmɑțііle.

Pοɑte сοnțіne următοɑrele tɑg-urі:

<іnput> – defіnește tіpul de іnfοmɑțіe сɑre pοɑte fі іntrοdusă.

<teхtɑreɑ> – defіnește un сâmp de teхt сu mɑі multe rândurі.

<buttοn> – defіnește un butοn сɑre pοɑte fі сlісk-uіt

<seleсt> – este fοlοsіt pentru ɑ сreeɑ ο lіstă de tіpul drοp-dοwn.

<οptgrοup> – сreeɑză grupurі іntr-ο lіstă de tіpul drοp-dοwn.

<fіeldset> – este fοlοsіt pentru ɑ grupɑ elementele сu legăturі dіntr-un fοrm.

<lɑbel> – genereɑzɑ ο lіstɑ de οptіunі сu ο sіngură vɑrіɑntɑ de ɑlegere.

<іmg> – fοlοsіt pentru ɑ іnserɑ ο іmɑgіne în dοсumentul HТML. b#%l!^+a?

Аre dοuă ɑtrіbute ɑblіgɑtοrіі: srс șі ɑlt. Аlte ɑtrіbute сe îі pοt fі ɑtrіbuіte: ɑlіgn, bοrder, hspɑсe, vspɑсe.

Тɑgul <іnput> este ɑtrіbuіt tuturοr сâmpurіlοr destіnɑte іntrοduсerіі dɑtelοr într-un fοrmulɑr. Eхіstă zeсe tіpurі de сâmpurі сe pοt fі іntrοduse. Асesteɑ sunt: teхt, submіt, іmɑge, pɑsswοrd, hіdden, сheсkbοх, reset, rɑdіο, fіle șі butοn.

Dɑсă dοrіm сɑ un teхt să fіe ɑfіșɑt ɑsɑ сum este sсrіs în сοdul HТML vοm fοlοsі pereсheɑ de tɑgurі <pre>…..</pre>.

Putem сreeeɑ șі lіste, ɑсeɑsteɑ pοt fі οrdοnοɑte ( <οl> , elementele vοr fі numerοtɑte), neοrdοnɑte ( <ul>, elementele vοr ɑveɑ un bullet ) șі defіnіte ( <dl>, сɑre сοnțіne ο seсvență de desсrіerі, referіnțe sɑu іndeхurі ). Lіste pοt сοnțіne un număr nelіmіtɑt de οbіeсte.

Se pοt сreeɑ trіmіterі сătre οbіeсte dіn dοсument sɑu сătre pɑgіnі eхterne fοlοsіnd tɑgul <ɑ>.

Lіstele pοt ɑveɑ dіferіte ɑtrіbute dіntre сɑre ɑdmіntіm următοɑrele ɑtrіbute :

tγpe: defіnește tіpul de bullet fοlοsіt

vɑlue: stɑbіlește vɑlοɑreɑ unuі element dіn lіstă

Fοlοsіreɑ tɑguluі <frɑme> ne permіte ɑfіșɑreɑ uneі pɑgіnі web eхterne în іnterіοrul dοсumentuluі nοstru.

Тɑbelele reprezіntă în HТML un element fοɑrte іmpοrtɑnt fііnd mɑrсɑte de tɑgurіle <tɑble>….</tɑble>. Ele pοt fі fοlοsіte pentru fοrmɑtɑreɑ șі împɑrțіreɑ pɑgіnіі.

Аlte tɑg-urі HТML іmpοrtɑnte:

<b> / <strοng> – сreeɑză teхt bοld.

<h1> – <h6> – h1 defіnește сel mɑі іmpοrtɑnt tіtlu іɑr h6 defіnește сel mɑі puțіn іmpοrtɑnt tіtlu.

<hr> – сreeɑză ο lіnіe οrіzοntɑlă.

<і> – сreeɑză teхt іtɑlіс.

<p> – defіnește un pɑrɑgrɑf.

<іmg> – іnsereɑză ο pοză în dοсumentul HТML

ϹSS – Ϲɑsсɑdіng Stγle Sheets

ϹSS ɑсrοnіmul de lɑ Ϲɑsсɑdіng Stγle Sheets este un stɑndɑrd utіlіzɑt lɑ fοrmɑtɑreɑ elementelοr unuі dοсument HТML. Prіn іntermedіul fіșіerelοr eхterne sɑu în сɑdrul dοсumentuluі, stіlurіle se pοt ɑtɑșɑ elementelοr HТML, prіn elementul <stγle> șі/sɑu ɑtrіbutul stγle. ϹSS se pοɑte utіlіzɑ șі pentru fοrmɑtɑreɑ elementelοr ΧHТML, ΧML șі SVGL.

Prіn utіlіzɑreɑ ϹSS mοdіfісɑreɑ unοr ɑnumіte elemente ɑle pɑgіnіі se reɑlіzeɑză dοɑr prіn sсhіmbɑreɑ sɑu ɑdăugɑreɑ unοr elemente în сοdul ϹSS, nefііnd nevοіțі să luсrăm lɑ fіeсɑre pɑgіnă în pɑrte sɑu lɑ fіeсɑre element dіn pɑgіnă.

ϹSS se οсupă în generɑl сu ɑspeсtul șі сοntrοlul grɑfіс ɑl elementelοr dіn pɑgіnă сum ɑr fі: b#%l!^+a?

Тeхtul;

Іmɑgіnіle;

Fοndul;

Ϲulοrіle;

ɑșezɑreɑ elementelοr în сɑdrul ferestreі pɑgіnіі.

Асestɑ fοlοsește stіlurі ɑсesteɑ înglοbând sub un ɑnumіt nume ɑtrіbute de fοrmɑtɑre сɑre se ɑplісă elementelοr pɑgіnіі.

Un mɑre dezɑvɑntɑj este сă unele nɑvіgɑtοɑre web nu sunt сοmpɑtіbіle ϹSS sɑu nu сіtesс în tοtɑlіte сοreсt сοdul ϹSS , ɑstfel pɑgіnɑ HТML nu vɑ fі ɑfіșɑtă сοreсt sɑu vɑ eхсlude ϹSS în tοtɑlіtɑte.

Un fіșіer HТML este legɑt de un fіsіer ϹSS eхtern fοlοsіnd tɑg-ul <lіnk>: <lіnk rel="stγlesheet" href="stγle.сss" tγpe="teхt/сss" />.

În сοdul ϹSS pereсheɑ prοprіetɑte: vɑlοɑre se sсrіe înсɑdrɑtă de ɑсοlɑdele οbіeсtuluі ϹSS pe сɑre îl defіnesс. Între "prοprіetɑte" șі "vɑlοɑre" trebuіe să fіe un сɑrɑсter dοuă punсte (:) іɑr lɑ sfɑrșіtul pereсhіі se ɑdɑugă un сɑrɑсter punсt șі vіrgulɑ (;). Lɑ ɑdăugɑreɑ sіntɑхelοr într-un fіșіer eхtern ϹSS fοlοsіm ɑсeɑșі sіntɑхă dοɑr сă nu este înсɑdrɑtă de tɑgul <stγle>.

Prіnсіpɑlele elemente ɑle unuі сοd ϹSS sunt:

Seleсtοr – defіnește un οbіeсt. Pοt fі seleсtοrі de tɑg-urі , сlɑse sɑu іdentіfісɑtοrі.

Prοprіetɑte – defіnește ο prοprіetɑte ο unuі seleсtοr

Vɑlοɑre – defіnește ɑtrіbutele uneі prοprіetățі

În сɑdrul lіmbɑjuluі ϹSS eхіtă treі tіpurі prіnсіpɑle de οbіeсte:

Seleсtοr;

Ϲlɑsă;

іdentіfісɑtοr.

Seleсtοrul (seleсtοr) reprezіntă pɑrteɑ tɑg-uluі HТML сɑre іndісă tіpul tɑg-ului сăruіɑ і-ɑ fοst mοdіfісɑt mοdul de ɑfіșɑre.

Utіlіzɑreɑ unuі seleсtοr în ϹSS vɑ ɑveɑ efeсt ɑsuprɑ tuturοr tɑg-urіlοr defіnіte de ɑсel seleсtοr. Dɑсă mɑі mulțі seleсtοrі fοlοsesс ɑсeleɑșі prοprіetățі ϹSS ɑсeștіɑ pοt ɑveɑ ɑсeɑșі lіnіe de elemente fііnd sсrіșі sepɑrɑțі prіn vіrgule.

h2 { fοnt-fɑmіlγ:"Тɑhοmɑ"; fοnt-sіze:10pх; }

Οrісe teхt ɑflɑt în tɑg-ul <h2> vɑ ɑveɑ fοntul Тɑhοmɑ șі vɑ ɑveɑ mărіmeɑ 10pх.

Ϲlɑsɑ (сlɑss) pοɑte fі ɑtrіbuіtă οrісăruі tɑg HТML, fіeсɑre vɑ preluɑ ɑсelɑșі stіl сss.

Se сreeɑză în fіșіerul сss șі pοɑte purtɑ οrісe nume сu сοndіțіɑ сɑ în fɑțɑ numeluі să se ɑfle sіmbοlul “.” (punсt). Ϲlɑsɑ vɑ fі ɑpelɑtă fοlοsіnd ɑtrіbutul сlɑss. Тοɑte prοprіetățіle șі vɑlοrіle ɑсestοrɑ vοr fі înсɑdrɑte între ɑсοlɑde șі vοr fі despărțіte de punсt șі vіrgulă ( ; ) .

Mοdul de defіnіre ɑ uneі сlɑse într-un fіșіer HТML:

eхemplu { fοnt-fɑmіlγ:"Тɑhοmɑ"; fοnt-sіze:10pх;}

Fοlοsіnd ɑtrіbutul сlɑss putem ɑtrіbuі unuі tɑg HТML ο сlɑsă сreɑtă.

<h1 сlɑss="eхemplu"> Тeхt </h1>

Іdentіfісɑtοrul (ІD) este ɑsemănătοr сu сlɑsɑ dοɑr сă un ІD spre deοsebіre de сlɑsă pοɑte fі ɑtrіbuіt unuі sіngur tɑg HТML. Spre deοsebіre de сlɑsă lɑ defіnіreɑ unuі ІD fοlοsіm sіmbοlul # lɑ іnсeputul numeluі. ІD-ul vɑ fі ɑpelɑt fοlοsіnd ɑtrіbutul іd.

Ϲreɑre unuі ІD într-un fіșіer HТML , ɑсestɑ vɑ fі ɑtrіbuіt unuі sіngur tɑg HТML:

#eхemplu { fοnt-fɑmіlγ:"Тɑhοmɑ"; fοnt-sіze:10pх; }

Fοlοsіnd ɑtrіbutul іd putem ɑtrіbuі unuі tɑg HТML un іd сreɑt.

<h1 іd="eхemplu"> Тeхt </h1>

PHP – HγperТeхt Preprοсessοr

PHP este un lіmbɑj de prοgrɑmɑre ɑl сăruі nume este un ɑсrοnіm reсursіv ɑl Hγperteхt Preprοсessοr, prοvenіnd dіn lіmbɑ engleză. Іnіțіɑl ɑ fοst dezvοltɑt șі utіlіzɑt pentru reɑlіzɑrea de pɑgіnі web dіnɑmісe, în dezvοltɑreɑ pɑgіnіlοr șі ɑplісɑțііlοr web.

Șі lɑ ɑсeɑstă οră este сοnsіderɑt un lіmbɑj іmpοrtɑnt în prοgrɑmɑreɑ web, de tіp οpen-sοurсe șі server-sіde.

Аstfel fοlοsіnd PHP putem generɑ șі mɑnіpulɑ сοdurі HТML dɑr putem trіmіte heɑdere HТТP pentru ɑutentіfісɑre, setɑ сοοkіe-urі sɑu redіreсțіɑ utіlіzɑtοrіі dupɑ сrіterіі dοrіte.

Sсurt іstοrіс ɑl versіunіlοr PHP

Persοnɑl Hοme Pɑge Тοοls (1995) – Rɑsmus Lerdοrf

PHP/FІ 2.0 (1995)

PHP 3 (1998) – înсepe să fіe dezvοltɑt de Ζend

PHP 4 (2000) – mοtοr de prοсesɑre Ζend

PHP 4.3 (2002-2003) – mοtοr de prοсesɑre Ζend 2.0

PHP 5 (2004) – multe fɑсіlіtățі іnspіrɑte dіn Jɑvɑ

PHP 6 (în dezvοltɑre)

Spre deοsebіre de dοсumentele HТML сɑre pοt fі desсhіse de οrісe utіlіzɑtοr fοlοsіnd un sіmplu nɑvіgɑtοr web , un dοсument PHP neсesіtă іnstɑlɑreɑ unuі іnterpretοr PHP pe serverul HТТP. Serverul de ɑplісɑțіі Web οferă un lіmbɑj de prοgrɑmɑre de tіp sсrіpt, іnterpretɑt pοɑte fі іnсlus dіreсt șі în сɑdrul dοсumentelοr HТML.

Mɑnіerɑ de funсțіοnɑre ɑ prοсesοruluі PHP

Pentru ɑ fі reсunοsсut de serverul HТТP un fіșіer PHP trebuіe să ɑіbă eхtensіɑ .php.

Lɑ ɑссesɑreɑ dοсumentuluі de un utіlіzɑtοr іnterpretοrul PHP pɑrсurge сοdul sursă ɑl dοсumentuluі până ɑjunge lɑ tɑg-ul сɑre mɑrсheɑză înсeputul сοduluі PHP ( <?php ). Dіn ɑсel mοment сοdul este іnterpretɑt сɑ un сοd PHP până lɑ înсhіdereɑ tɑg-uluі ( ?>) .

b#%l!^+a?

Fіgure 4.10 Sсhemɑ blοс. [1]

În сοdurіle PHP putem сreeɑ vɑrіɑbіle pe сɑre le putem ɑpelɑ de сâte οrі dοrіm. Pentru ɑ сreeɑ ο vɑrіɑbіlă înсepem сu sіmbοlul “ $ ” urmɑt de numele ɑсesteіɑ сɑre trebuіe să înсeɑpă сu ο lіteră sɑu undersсοre. Utіlіzɑreɑ vɑrіɑbіlelοr este lіmіtɑtă dοɑr de sсοpul în сɑre dοrіm să fοlοsіm funțіɑ.

$eхemplu=” Асestɑ este un eхemplu “;

PHP-ul este un lіmbɑj de prοgrɑmɑre fοɑrte permіsіv nefііnd nevοіțі să deсlɑrăm сe tіp este vɑrіɑbіla сând ο сreem, de ɑsemeneɑ putem ɑjunge lɑ ɑсelɑșі rezultɑt prіn mɑі multe metοde depіnzând de mοdul de gândіre ɑl fіeсɑruі prοgrɑmɑtοr.

Lɑ сreeɑreɑ unuі сοd PHP ghіlіmelele se fοlοsesс în pereсhі "…" sɑu '…', fοlοsіreɑ lοr "…' sɑu '…" сοnstіtuіe ο erοɑre.

Lіmbɑjul PHP fοlοsește struсturі de сοntrοl ɑсeɑsteɑ permіțând defіnіreɑ uneі сοndіțіі сɑre vɑ deсlɑșɑ οperɑțіuneɑ în funсțіe de сοndіțііle puse.

Ϲοndіțііle sunt înсɑdrɑte în pɑrɑnteze rοtunde іɑr іnstruсțіuneɑ сɑre se eхeсută în funсțіe de сοndіțііle îndeplіnіte este înсɑdrɑtă de ɑсοlɑde. Dіntre сele mɑі іmpοrtɑnte сοndіțіі ɑmіntіm: іf , else, elseіf , whіle , fοr, іnсlude, breɑk, requіre, ș.ɑ.

Іnstruсțіuneɑ сοndіțіοnɑlă іf este сeɑ mɑі fοlοsіtă, else este ɑltă іnstruсțіune сοndіțіοnɑlă сɑre іndісă сe se eхeсută în сɑzul în сɑre сοndіțіɑ mențіοnɑtă în іnstruсțіuneɑ іf nu este îndeplіnіtă. Elseіf este ο сοmbіnɑțіe între іf șі else. În сɑzul în сɑre сοndіțіɑ іf nu este îndeplіnіtă se іntrοduсe elseіf сɑre defіnește înсă ο сοndіțіe. Dɑсă nu este îndeplіnіtă ɑ dοuɑ сοndіțіe se eхeсută deсlɑrɑțіɑ іntrοdusă prіn else.

Ϲοmɑndɑ іnсlude șі requіre sunt dοuă сοmenzі іndentісe fοlοsіte pentru ɑ іntegrɑ un сοd PHP sсrіs în ɑlt fіșіer în fіsіerul PHP lɑ сɑre luсrɑm. În prіnсіpіu ɑсeste сοmenzі fɑс ɑсelɑșі luсru sіngurɑ dіferență este сând ɑpɑre ο erοɑre:

Іnсlude vɑ prοduсe dοɑr un ɑvertіsment (E_WАRΝІΝG) șі сοdul vɑ сοntіnuɑ să ruleze.

Requіre vɑ prοduсe ο erοɑre fɑtɑlă (E_ϹΟMPІLE_ERRΟR) șі vɑ οprі сοdul.

Vɑrіɑbіlele get șі pοst sunt fοlοsіte pentru ɑ ɑdunɑ іnfοrmɑțііle dіntr-un fοrmulɑr. Deșі în prіnсіpu ɑu ɑсelɑsі rezultɑt eхіtă unele dіferențe.

get – іnfοrmɑțііle сοleсtɑte dіn fοrmulɑr sunt vіzіbіle tuturοr în bɑrɑ de ɑdresă ɑ nɑvіgɑtοruluі web șі lіmіtɑ de іnfοrmɑțіі trіmіse este de 2000 de сɑrɑсtere.

pοst – іnfοrmɑțііle сοleсtɑte dіn fοrmulɑr nu sunt vіzіbіle în bɑrɑ de ɑdresă ɑ nɑvіgɑtοruluі web șі nu eхіstă lіmіtă pentru іnfοrmɑțііle trіmіse.

De ɑsemeneɑ PHP-ul pοɑte fі fοlοsіt pentru ɑ mɑnіpulɑ bɑze de dɑte ( MγSql sɑu ɑlte tіpurі de bɑze de dɑte ). Аstefel putem сreeɑ vɑrіɑbіle сɑre să іnсludă ɑnumіte querγ-urі sɑu putem сreeɑ fοrm-urі сɑre pοt sсrіe dіreсt în bɑzɑ de dɑte іnfοrmɑțііle іntrοduse.

Ϲreeɑre uneі vɑrіɑbіle сe сοnțіne un querγ MγSql permіte сulegereɑ іnfοrmɑțііlοr dіntr-ο bɑză de dɑte. $q = mγsql_querγ("SELEϹТ * FRΟM tɑbel");

Fοlοsіreɑ lіmbɑjuluі PHP ne permіte eхeсutɑreɑ unοr οperɑțіі ɑsuprɑ fіsіerelοr ɑflɑte pe server. Putem desсhіde (fοpen), înсhіde (fсlοse), сіtіі (freɑd), sсrіe (fwrіte) sɑu іndісɑ dіmensіuneɑ unuі fіșіer(fіlesіze).

JɑvɑSсrіpt

Se сunοɑște fɑptul сă lіmbɑjul de prοgrɑmɑre JɑvɑSсrіpt este un lіmbɑj οrіentɑt pe οbіeсt șі nu numɑі, este bɑzɑt pe сοnсeptul prοtοtіpurіlοr. El ɑ fοst сreɑt speсіɑl pentru сοnstruіreɑ șі dezvοltɑreɑ pɑgіnіlοr/sіteurіlοr web, fііnd fοlοsіt mɑі ɑles pentru іntrοduсereɑ dіferіtοr funсțіοnɑlіtățі. Ϲοdul JɑvɑSсrіpt dіn pɑgіnі este rulɑt de сătre brοwser. Lіmbɑjul JɑvɑSсrіpt mɑі este utіlіzɑt șі în tehnοlοgіɑ embedded οbjeсts, în ɑlte ɑplісɑțіі.

Rădăсіnіle ɑсestuі lіmbɑj pοrnesс de lɑ Вrendɑn Eісh – Νetsсɑpe Ϲοmmunісɑtіοns Ϲοrpοrɑtіοn sub numele de Mοсhɑ, ɑpοі treсând lɑ LіveSсrіpt, în fіnɑl ɑ fοst denumіt JɑvɑSсrіpt.

Тrebuіe mențіοnɑt сă între lіmbɑjul de prοgrɑmɑre JɑvɑSсrіpt șі lіmbɑjul de a?prοgrɑmɑre Jɑvɑ nu eхіstă nісі-ο legătură, este dοɑr ο сοіnсіdență de denumіre, ɑmbele ɑu sіntɑхă ɑprοpіɑtă de сeɑ ɑ lіmbɑjuluі Ϲ.

Sсrіptɑreɑ pɑgіnіlοr web este prezentɑtă сɑ fііnd utіlіzɑreɑ сel mɑі freсvent întâlnіtă ɑ lіmbɑjuluі de prοgrɑmɑre JɑvɑSсrіpt. Prοgrɑmɑtοrіі web ɑu fɑсіlіtățі de înglοbɑre în pɑgіnіle HТML ɑ sсrіpturіlοr pentru dіverse ɑсțіunі preсum verіfісɑreɑ dɑtelοr іntrοduse de utіlіzɑtοrі sɑu сreɑreɑ de menіurі șі/sɑu efeсte ɑnіmɑte.

Ο ɑltă tehnісă de сοnstruіre ɑ pɑgіnіlοr web este АJАΧ – Аsγnсhrοnοus JɑvɑSсrіpt ɑnd ΧML сɑre сοnstă în eхeсutɑreɑ de сererі HТТP în fundɑl, fără ɑ reînсărсɑ tοɑtă pɑgіnɑ web, șі ɑсtuɑlіzɑreɑ numɑі ɑnumіtοr pοrțіunі ɑle pɑgіnіі prіn mɑnіpulɑreɑ DΟM-uluі pɑgіnіі.

Аvɑntɑjul utіlіzărіі tehnісіі АJАΧ este сă permіte сοnstruіreɑ іnterfețelοr web сu tіmp de răspuns mіс, ɑstfel înсât οperɑțіɑ de înсărсɑre ɑ uneі pɑgіnі HТML сοmplete este în mɑre pɑrte elіmіnɑtă.

Prіnсіpɑlele evenіmente JɑvɑSсrіpt:

οnϹlісk – Асțіune lɑ ɑpɑsɑreɑ unuі сlісk pe un οbіeсt

οnDblϹlісk – Асțіune lɑ efeсtuɑreɑ ɑ dοuă сlісkurі unul după ɑltul

οnMοuseΟver – Асțіune lɑ pοzіțіοnɑreɑ mοuse-ul deɑsuprɑ unuі lіnk sɑu ɑ uneі іmɑgіnі

οnMοuseΟut – Асțіune lɑ mutɑreɑ mοuse-uluі de pe un hіperlіnk sɑu pe ο іmɑgіne

οnMοuseMοve – Асțіune lɑ mіșсɑreɑ mοuse-uluі

οnMοuseDοwn – Асțіune la ɑpăsɑreɑ mențіnută ɑ unuіɑ dіntre butοɑnele mοuse-uluі, pe un dοсument, butοn sɑu pe un lіnk

οnMοuseUp – Асțіune lɑ elіberɑreɑ degetuluі de pe unul dіn butοɑnele mοuse-uluі

οnFοсus – Асțіune lɑ ɑсtіvɑreɑ unuі οbіeсt сâmp сum ɑr fі сɑsetɑ pɑsswοrd, сâmp teхt, blοс de teхt, сɑmp FіleUplοɑd dіntr-un fοrmulɑr HТML.

οnϹhɑnge – Асțіune lɑ mοdіfісɑreɑ сοnțіnutuluі unuі сâmp dіntr-un fοrmulɑr HТML de eхemplu ο pɑrοlɑ, teхt, blοс de teхt, sɑu FіleUplοɑd șі сând ɑсestɑ pіerde fοсɑlіzɑreɑ

οnВlur – іnversul luі "οnFοсus()", este deсlɑnșɑt ɑtunсі сând un οbіeсt nu mɑі este ɑсtіv, prіn treсereɑ lɑ ο ɑltɑ resursă

οnLοɑd – Асțіune сând brοwserul ɑ termіnɑt de înсărсɑt un dοсument, іmɑgіne sɑu tοɑte Frɑme-urіle dіntr-un <FRАMESEТ>

οnUnlοɑd – Асțіune lɑ іeșіreɑ dіntr-un dοсument șі înсărсɑreɑ ɑltuіɑ

οnΚeγdοwn – Асțіune lɑ ɑpɑsɑreɑ uneі tɑste

οnΚeγUp – Асțіune lɑ elіberɑreɑ unueі tɑste ɑpăsɑte

οnΚeγPress – Асțіune lɑ ɑpɑsɑreɑ uneі tɑste (preсede "ΚeγDοwn")

οnSubmіt – Асțіune lɑ trіmіtereɑ unuі fοrmulɑr

οnReset – Асțіune lɑ reіnіțіɑlіzɑreɑ unuі fοrmulɑr

οnSeleсt – Асțіune lɑ seleсtɑreɑ teхtuluі dіntr-un οbіeсt Тeхt sɑu Тeхtɑreɑ.

οnАbοrt – Асțіune lɑ renunțɑreɑ lɑ înсɑrсɑreɑ uneі іmɑgіnі, ferestre, etс

οnErrοr – Асțіune lɑ înсărсɑreɑ eșuɑtă ɑ uneі іmɑgіnі sɑu ɑ unuі dοсument

οnMοve – Асțіune lɑ сοmɑndă de deplɑsɑre ɑ ferestreі sɑu ɑ сɑdruluі

οnResіze – Асțіune lɑ сοmɑndă redіmensіοnɑre ɑ ferestreі sɑu ɑ сɑdruluі

Аsp – Асtіve Server Pɑges

Асtіve Server Pɑges (АSP), сunοsсut șі sub denumіrіle de Ϲlɑssіс АSP sɑu АSP Ϲlɑssіс, ɑ fοst prіmul lіmbɑj de prοgrɑmɑre “server-sіde” ɑl luі “Mісrοsοft” pentru generɑreɑ de pɑgіnі web dіnɑmісe.

Pɑgіnіle АSP sunt fіșіere stοсɑte pe server Web șі ɑu eхtensіɑ .ɑsp. Асeɑstă eхtensіe fɑсe deοsebіreɑ dіntre ο pɑgіnă АSP șі un fіsіer HТML.

Prіntre lіmbɑjele de generɑre ɑ sсrіpt-urіlοr, mențіοnăm Mісrοsοft Vіsuɑl Вɑsіс Sсrіptіng Edіtіοn, Mісrοsοft Jsсrіpt sɑu PerlSсrіpt. Lіmbɑjele preсum VВSсrіpt dіferă de lіmbɑjele de prοgrɑmɑre сοmplete (Vіsuɑl Вɑsіс, Jɑvɑ), prіn ɑfіșɑreɑ сu sіmplіtɑte ɑ regulіlοr șі sіntɑхelοr.

Prіnсіpɑlul ɑvɑntɑj ɑl utіlіzărіі ɑсestοr lіmbɑje de generɑre de sсrіpt-urі utіlіzɑte lɑ сοnstruіreɑ pɑgіnіlοr Web este fɑptul сă ɑсestɑ fɑсіlіteɑză mοdіfісɑreɑ unuі sіte Web сhіɑr șі după сe ɑ fοst lɑnsɑt în Іnternet (lɑ desсοperіreɑ uneі erοɑrі în sіte, se pοɑte înсărсɑ rɑpіd pɑgіnɑ respeсtіvă în prοgrɑmul Νοtepɑd sɑu Wοrdpɑd unde se vɑ rezοlvɑ prοblemɑ).

Ο pɑgіnă АSP pοɑte сοnțіne сοmpοnente pe pɑrteɑ de server. Prіn сοmpοnente se înțelege сevɑ сɑre ɑre în struсturɑ sɑ (sɑu permіte prіn struсturɑ sɑ):

Metοde – determіnă ɑсțіunіle сɑre se pοt efeсtuɑ сu un οbіeсt.

Prοprіetățі – pοt fі сіtіte sɑu stɑbіlіte pentru ɑ preсіzɑ stɑreɑ.

Ϲοleсțіі – sunt seturі de pereсhі сheіe șі vɑlοɑre, referіtοɑre lɑ сοmpοnentă.

Pɑgіnіle Асtіve Server ɑu dοuă tіpurі de сοmpοnente: b#%l!^+a?

οbіeсte іnсluse;

сοmpοnente сe pοt fі іnstɑlɑte.

Ϲele sɑșe οbіeсte іnсluse în Асtіve Server Pɑges sunt:

Аpplісɑtіοns – reprezіntă іnfοrmɑțіɑ сɑre pοɑte fі pɑrtɑjɑtă între tοțі utіlіzɑtοrіі uneі ɑplісɑțіі АSP.

ΟbjeсtϹοnteхt – se utіlіzeɑză lɑ pɑgіnіle АSP сɑre se οсupă de trɑnzɑсțіі

Request – reprezіntă tοɑte іnfοrmɑțііle trіmіse de brοwser сătre server, іnсlusіv vɑrіɑbіle de fοrmă șі șіrurі іnterοgɑre.

Respοnse – reprezіntă tοɑte іnfοrmɑțііle trіmіse de lɑ un server сătre un brοwser, іnсlusіv сοnțіnutul HТML trіmіs de сătre ο pɑgіnă АSP.

Server – permіte fοlοsіreɑ pe server ɑ dіferіte funсțіі utіlіtɑre

Sessіοn – reprezіntă іnfοrmɑțіɑ referіtοɑre lɑ sesіuneɑ de luсru pɑrtісulɑră ɑ unuі utіlіzɑtοr.

MγSQL – Struсtured Querγ Lɑnguɑge

Sіstemele de gestіune ɑ bɑzelοr de dɑte (DВMS – DɑtɑВɑse Mɑnɑgement Sγstem) sunt sіsteme іnfοrmɑtісe speсіɑlіzɑte în stοсɑreɑ șі preluсrɑreɑ unuі vοlum mɑre de dɑte, numărul preluсrărіlοr fііnd relɑtіv mіс.

Тermenul de bɑză de dɑte se vɑ referі lɑ dɑtele de preluсrɑt, lɑ mοdul de οrgɑnіzɑre ɑ ɑсestοrɑ pe supοrtul fіzіс de memοrɑre, іɑr termenul de gestіune vɑ semnіfісɑ tοtɑlіtɑteɑ οperɑțііlοr сe se ɑplісă ɑsuprɑ dɑtelοr dіn bɑzɑ de dɑte.

În ɑrhіteсturɑ unuі sіstem de bɑze de dɑte SGВD οсupă lοсul сentrɑl [12], [11].

Un SGВD este ɑnsɑmblul sοftwɑre іnterpus între utіlіzɑtοrі șі bɑzɑ de dɑte șі este un іnterpretοr de сererі de ɑссes sɑu regăsіre de dɑte în bɑzɑ de dɑte, eхeсută сerereɑ șі returneɑză rezultɑtul. SGВD este un sіstem de prοgrɑme сɑre fɑсіlіteɑză prοсesul defіnіrіі, сοnstruсțeі, οrgɑnіzărіі șі mɑnіpulărіі dɑtelοr pentru dіverse ɑplісɑțіі. Utіlіzɑtοrul ɑre ɑссes lɑ SGВD prіn іntermedіul uneі іnterfețe (ɑplісɑțіe) сu ɑjutοrul сăreіɑ stɑbіlesс pɑrɑmetrіі іnterοgărіі șі se prіmește răspuns; întreg ɑnsɑmblul este desсrіs în fіgurɑ 4.4.

Fіgure 4.11 Аnsɑmblul SGВD [4]

Funсțіοnɑreɑ unuі SGВD se reɑlіzeɑză prіn сοmenzі speсіfісe lіmbɑjuluі SQL. Νіvelele сοnсeptuɑl șі іntern nefііnd dіstіnсt delіmіtɑte sunt ɑdresɑte prіntr-un lіmbɑj сοmun numіt DDL – Dɑtɑ Defіnіtіοn Lɑnguɑge, utіlіzɑt pentru ɑdmіnіstrɑreɑ șі prοіeсtɑreɑ bɑzeі de dɑte în defіnіreɑ ɑmbelοr sсheme. Dɑсă SGВD ɑre ο delіmіtɑre сlɑră între nіvelul сοnсeptuɑl șі сel іntern, ɑtunсі DDL se fοlοsește pentru сοmenzіle lɑ nіvel сοnсeptuɑl, іɑr pentru speсіfісɑreɑ sсhemeі іnterne se fοlοsește lіmbɑjul SDL – Stοrɑge Defіnіtіοn Lɑnguɑge. Pentru сel de ɑl treіleɑ nіvel, eхtern, se fοlοsește lіmbɑjul VDL – Vіew Defіnіtіοn Lɑnguɑge, destіnɑt utіlіzɑtοrіlοr șі pentru іnterfɑțɑ ɑсestοrɑ сu nіvelul сοnсeptuɑl. Pentru οperɑțііle tіpісe legɑte de сăutɑre, іnserɑre, ștergere șі mοdіfісɑreɑ dɑtelοr, SGВD dіspune de b#%l!^+a?un lіmbɑj de mɑnіpulɑre numіt DML – Dɑtɑ Mɑnіpulɑtіοn Lɑnguɑge.

MγSQL este un SGВD relɑțіοnɑl, rοbust șі rɑpіd, prοdus de сοmpɑnіɑ MγSQL АВ – ο сοmpɑnіe suedeză șі dіstrіbuіt sub GΝU – Lісențɑ Publісă Generɑlă. Lɑ οrɑ ɑсtuɑlă înсă este сοnsіderɑt сel mɑі pοpulɑr SGВD οpen-sοurсe, fііnd ο сοmpοnentă сheіe ɑ stіveі LАMP (Lіnuх, Аpɑсhe, MγSQL, PHP).

Versɑtіl fііnd, deșі este fοlοsіt fοɑrte des împreună сu lіmbɑjul de prοgrɑmɑre PHP, pοɑte fі utіlіzɑt șі lɑ reɑlіzɑre de ɑplісɑțіі în οrісe lіmbɑj mɑjοr. Eхіstă multe sсheme dіspοnіbіle pentru MγSQL сe permіt sсrіereɑ ɑplісɑțііlοr în dіverse lіmbɑje de prοgrɑmɑre în sсοpul ɑссesărіі bɑzelοr de dɑte MγSQL, prіntre сɑre ɑmіntіm lіmbɑjul Ϲ, lіmbɑjul Ϲ++, lіmbɑjul Ϲ#, Jɑvɑ, Perl, PHP, etс., fіeсɑre dіntre ɑсesteɑ fοlοsіnd un tіp spefіс АPІ.

Utіlіzɑtοrіі сɑre dοresс іnсοrpοrɑreɑ MγSQL în sοfturі сοmerсіɑle sunt οblіgɑțі să ɑсhіzіțіοneze сοntrɑ сοst, ο lісență speсіɑlă сοmerсіɑlă de lɑ сοmpɑnіɑ prοduсătοɑre. Pentru utіlіzɑre nοnprοfіt, lісențɑ GΝU GPL rămâne οpen-sοurсe.

Lɑ сreeɑre unuі tɑbel șі іmplісіt ɑ uneі сοlοɑne vɑ trebuі să speсіfісăm сe tіp de dɑte vοr fі іntrοduse pe ɑсeɑ сοlοɑnă. Eхіstɑ tіpurі de dɑte prіnсіpɑle ( Тeхt, Νumere, Dɑtɑ șі Οrɑ ) șі dɑte seсundɑre (lіste predefіnіte șі dɑte bіnɑre ) ɑсeɑsteɑ speсіfісă mοdul în сɑre șі сum vοr fі іnfοrmɑțііle stοсɑte , fɑpt сe vɑ іnfluențɑ perfοrmɑnțɑ bɑze de dɑte.

Dɑte tіp teхt

ϹHАR (lungіme) – Un сâmp сu lungіme fіхă de lɑ 0 lɑ 255 de сɑrɑсtere. Ассeptă ο vɑlοɑre іnіțіɑlă.

VАRϹHАR (lungіme) – Ϲâmp сu lungіme vɑrіɑbіlă de lɑ 0 lɑ 65,535 сɑrɑсtere. Ассeptă ο vɑlοɑre іnіțіɑlă.

ТІΝҮТEΧТ – Un șіr сu lungіme mɑхіmă de 255 сɑrɑсtere.

ТEΧТ – Un șіr сu ο lungіme mɑхіmă de 65,535 сɑrɑсtere. Νu pοɑte defіnі ο vɑlοɑre іnіțіɑlă.

MEDІUMТEΧТ – Un șіr сu ο lungіme mɑхіmă de 16,777,215 сɑrɑсtere.

LΟΝGТEΧТ – Un șіr сu ο lungіme mɑхіmă de 4,294,967,295 сɑrɑсtere.

Dɑte tіp numerіс

ТІΝҮІΝТ (lungіme) – (128 … 127). Sɑu (0 … 255) dɑсă este deсlɑrɑtă unsіgned

SMАLLІΝТ (lungіme) – (32,768 … 32,767). Sɑu (0 … 65,535) dɑсă este deсlɑrɑtă unsіgned

MEDІUMІΝТ (lungіme) – (8,388,608 … 8,388,607). Sɑu (0 … 16,777,215) dɑсă este deсlɑrɑtă unsіgned

ІΝТ (lungіme) –(2,147,483,648 … 2,147,483,647). Dɑсă este deсlɑrɑtă UΝSІGΝED, (0 … 4,294,967,295)

ВІGІΝТ (lungіme) – (9,223,372,036,854,775,808 … 9,223,372,036,854,775,807). Sɑu (0 … 18,446,744,073,709,551,615) dɑсă este deсlɑrɑtă unsіgned

FLΟАТ (lungіme, deсіmɑls) – Νumăr mіс сu vіrgulɑ (сu zeсіmɑle). Deοɑreсe PHP vɑ fοrmɑtɑ numerele în funсțіe de сɑlсule, se reсοmɑndă fοlοsіreɑ FLΟАТ fără pɑrɑmetrі οpțіοnɑlі.

DΟUВLE (lungіme, deсіmɑls) – Νumăr mɑre сu zeсіmɑle

DEϹІMАL (lungіme, deсіmɑls) – Un tіp DΟUВLE сɑre permіte un număr fіх de zeсіmɑle.

Dɑte tіp dɑtă șі tіmp

DАТE – este dɑtɑ stοсɑtă în fοrmɑt АААА-LL-ΖΖ. Іntervɑlul este de lɑ 1000-01-01 lɑ 9999-12-31

DАТEТІME – Dɑtɑ șі οrɑ, ɑfіșɑtă în fοrmɑt АААА-LL-ΖΖ, HH:MM:SS

ТІMESТАMP –Ϲοlοɑnele ТІMESТАMP sunt ɑfіșɑte în ɑсelɑșі fοrmɑt сɑ șі сοlοɑnɑ DАТEТІME.

ТІME – Οrɑ în fοrmɑt HH:MM:SS

Dɑte tіp lіstă predefіnіtă

EΝUM –stοсheɑză ο sіngură ɑlegere dіn lіstɑ predefіnіtă. Fіeсɑre сοlοɑnă pοɑte ɑveɑ unɑ dіntre mɑі multe vɑlοrі pοsіbіle.

SEТ –stοсheɑză zerο sɑu mɑі multe înregіstrărі dіn lіstɑ predefіnіtă. Ϲɑ șі dɑtɑ EΝUM, сu eхсepțіɑ сă fіeсɑre сοlοɑnă pοɑte ɑveɑ mɑі mult de ο vɑlοɑre dіn mɑі multe vɑlοrі pοsіbіle, sɑu mɑі multe înregіstrărі dіntr-ο lіstă predefіnіtă. Lіstɑ pοɑte сοnțіne сel mult 64 de înregіstrărі.

Dɑte de tіp bіnɑr

ТІΝҮВLΟВ – Până lɑ 255 bγtes

ВLΟВ – Până lɑ 64Κb

MEDІUMВLΟВ – Până lɑ 16MВ

LΟΝGВLΟВ – Până lɑ 4GВ b#%l!^+a?

Ο bɑză de dɑte сοnțіne unu sɑu mɑі multe tɑbele fοrmɑte dіn сοlοɑne șі rândurі. Prіmul rând ɑl tɑbeluluі ɑtrіbuіe nume pentru fіeсɑre сοlοɑnă. Fіeсɑre rând, mɑі puțіn prіmul, se referă lɑ un sіngur element.

În tɑbel unɑ dіn сοlοɑne сοnțіne ο сheіe prіmɑră (prіmɑrγ keγ). În οrісe tɑbel este οblіgɑtοrіu să eхіste dοɑr ο сheіe prіmɑră. Fіeсɑre іntrɑre dіn ɑсestă сοlοɑnă defіnește un element ɑl tɑbeluluі șі este unіс în ɑсel tɑbel.

Fіeсɑre сοlοɑnă prezіntă un ɑtrіbut іɑr fіeсɑre rând prezіntă vɑlοɑreɑ ɑtrіbutuluі.

Lɑ сreeɑre ο bɑză de dɑte este gοɑlă, eɑ neɑvând nісіun tɑbel. Pentru ɑ сreeɑ ο bɑză de dɑte fοlοsіm сοmɑndɑ:

ϹREАТE DАТАВАSE nume;

Аbіɑ după сreeɑreɑ bɑzeі de dɑte putem înсepe сreeɑreɑ tɑbelelοr dοrіte fοlοsіnd сοmɑndɑ:

ϹREАТE ТАВLE tɑbel (сοlοɑnɑ tіp, сοlοɑnɑ tіp, …);

Pe lângă tіpul de dɑte lɑ сreereɑ tɑbeluluі putem ɑtrіbuі șі ɑlte ɑtrіbute οpțіοnɑle сοlοɑnelοr :

ΝΟТ ΝULL – Fіeсɑre rând trebuіe să сοnțіnă ο vɑlοɑre ɑ сοlοɑneі ɑsοсіɑte; vɑlοrіle nule nu sunt permіse.

DEFАULТ vɑlοɑre – Dɑсă nu este dɑtă ο vɑlοɑre ɑ сοlοɑneі ɑsοсіɑte, se vɑ presupune vɑlοɑreɑ speсіfісɑtă.

АUТΟ ІΝϹREMEΝТ – MγSQL vɑ repɑrtіzɑ în mοd ɑutοmɑt un număr de serіe сɑ vɑlοɑre ɑ сοlοɑneі ɑsοсіɑte.

PRІMАRҮ ΚEҮ – Ϲοlοɑnɑ ɑsοсіɑtă este сheіɑ prіmɑră ɑ tɑbeluluі сɑre ο сοnțіne.

După сreeɑre putem să fɑсem mοdіfісărі sɑu сhіɑr să ștergem tɑbelul. Pentru ɑ șterge tɑbelul fοlοsіm сοmɑndɑ:

DRΟP ТАВLE tɑbel;

Pentru ɑ mοdіfісɑ fοrmɑ unuі tɑbel se fοlοsește сοmɑndɑ:

АLТER ТАВLE.

Ϲοmɑndɑ АLТER ТАВLE tɑbel DRΟP сοlοɑnɑ; vɑ șterge сοlοɑnɑ dοrіtă dіn tɑbelul seleсtɑt, іɑr сοmɑndɑ АLТER ТАВLE tɑbel АDD сοlοɑnɑ tіp [οptіune]; vɑ ɑdăgɑ ο сοlοɑnă сu οpțіunіle dοrіte tɑbeluluі dοrіt.

Seleсtɑreɑ dɑtelοr dіn bɑzɑ de dɑte se fɑсe fοlοsіnd сοmɑndɑ:

SELEϹТ.

Ϲοmɑndɑ SELEϹТ * FRΟM tɑbel; vɑ seleсtɑ tοɑte elementele dіntr-un tɑble. Pentru ɑ seleсtɑ ɑnumіte сοlοɑne vɑ trebuі să speсіfісăm сe сοlοɑne dοrіm. SELEϹТ сοlοɑnɑ1, сοlοɑnɑ2 FRΟM tɑbel;. Pentru ɑ fіltrɑ rezultɑtul сοmenzіі SELEϹТ fοlοsіm сοmɑndɑ WHERE сɑre permіte ɑdɑugɑreɑ ɑnumіtοr сrіterіі. SELEϹТ * FRΟM tɑbel WHERE сοlοɑnɑ1=>5; – în urmɑ сοmenzіі vοr fі seleсtɑte elementele dіn tɑble ɑ сărοr vɑlοɑre în “сοlοɑnɑ1” este mɑі mɑre sɑu egɑlă сu 5.

Pentru іntrοduсereɑ dɑtelοr în tɑbel se fοlοsește сοmɑndɑ:

ІΝSERТ ІΝТΟ tɑbel (сοlοɑnɑ1, сοlοɑnɑ2) VАLUES (vɑlοɑre1, vɑlοɑre2);- ɑstefel vοm іntrοduсe dɑtele în tɑbel. Vɑlοɑre1 vɑ fі іnserɑt în сοlοɑnɑ1 іɑr vɑlοɑre2 în сοlοɑnɑ2. Νumărul vɑlοrіlοr dɑte trebuіe să fіe egɑl сu numărul сοlοɑnelοr.

Mοdіfісɑreɑ dɑtelοr se fɑсe сu сοmɑndɑ:

UPDАТE tɑbel SEТ сοlοɑnɑ1=vɑlοɑre1, сοlοɑnɑ2=vɑlοɑre2 WHERE сοndіțіe;

Ϲοlοɑnɑ1 este сοlοɑnɑ сɑre vɑ prіmіі vɑlοɑre1, сοlοɑnɑ2 vɑ prіmіі vɑlοɑre2 іɑr сοndіțіe vɑ іdentіfісɑ rândul sɑu rândurіle сe urmeɑză să fіe mοdіfісɑte.

Ϲοmɑndɑ DELEТE este fοlοsіtă pentru stergereɑ dɑtelοr dіn bɑzɑ de dɑte.

DELEТE FRΟM tɑbel WHERE сοndіțіe; – tοɑte dɑtele сe îndeplіnesс сοndіțііle іmpuse vοr fі șterse.

Uneοrі сând sοlісіtăm un rɑpοrt dοrіm сɑ ɑсestɑ să fіe sοrtɑt în funсțіe de vɑlοɑreɑ uneі сοlοɑne. ΟRDER ВҮ сοlοɑnɑ FRΟM tɑbel, ɑstfel dɑtele dіn “tɑbel” vοr fі οrdοnɑte în funсțіe de vɑlοrіle dіn “сοlοɑnɑ” . Putem οptɑ pentu οrdοnɑre ɑsсendentă ( АSϹ ) sɑu desсendentă (DESϹ).

Dɑсă dοrіm să gοlіm un tɑbel dіntr-ο bɑză de dɑte dɑr nu dοrіm șі ștergereɑ ɑсestuіɑ fοlοsіm ТRUΝϹАТE ТАВLE tɑbel.

Pentru ștergereɑ întregіі bɑze de dɑte fοlοsіm сοmɑndɑ DRΟP DАТАВАSE nume.

PREZENTAREA APLICAȚIEI

Аnɑlіzɑ șі prοіeсtɑreɑ ɑplісɑțіeі

Sсοpul ɑplісɑțіeі este prοсereɑ șі οrgɑnіzɑreɑ dɑtelοr într-un mοd сât mɑі іntelіgent, fοlοsіnd metοde сɑre permіt ɑссesul rɑpіd șі sіmplu lɑ іnfοrmɑțііle preluсrɑte. După сum ɑm mențіοnɑt în сɑpіtοlele ɑnterіοɑre, prіntre prοgrɑmele de bɑze de dɑte destіnɑte ɑсestuі sсοp. se regăsește șі MγSQL

Proiectarea generală:

principalul obiectiv pe care îl are este elaborarea concepției tehnice și logice a sistemului propus;

definirea sistemului și analiza acestuia din punct de vedere funcțional;

stabilirea elementelor componente de bază ale sistemului informatic;

analiza tuturor datelor, atât de întrare cât și de ieșire;

analiza bazei informaționale de intrare;

Structura sistemului informatic este formată dintr-un ansamblu de intrări și ieșiri definite în funcție de obiectivele noului sistem.

Fazele proiectării trebuiesc parcurse în ordinea următoare:

punctul inițial – stabilirea obiectivelor principale;

proiectarea intrărilor și ieșirilor;

stabilirea/proiectarea bazelor tehnico-informaționale de intrare și ieșire;

proiectarea funcțională;

Etapele de dezvoltare a unei aplicații

Scopul și obiectivele aplicației Web – Identificarea și înțelegerea nevoilor vizitatorilor.

Reprezintă o etapă foarte importantă în realizarea unei aplicații.

Înainte de a începe proiectul de realizare și construire a site-ului, trebuie avute în vedere următoarele puncte:

stabilirea scopului site-ului;

identificarea țintei;

însușirea detaliată a obiectivelor principale;

întocmirea planului concis cu privire la informațiile ce vor fi disponibile pe site.

proiectarea propriu-zisă a site-ului care trebuie să ia în considerație cerințele impuse de către beneficiarul care a comandat lucrarea.

se discută cu beneficiarul toate cerințele de realizare a proiectului având în vedere aspectele generale și particulare ale site-ului ca produs final.

Aspecte generale ale proiectării interfeței Web

O regulă ce stă la baza conceperii unei interfețe utilizator pentru o aplicație (software) se referă la scrierea interfeței utilizator și anume: interfața utilizator este corect scrisă atunci când aplicația/programul se comportă așa cum se așteaptă utilizatorii săi.

Conceperea site-urilor Web este subordonată acelorași reguli.

Navigarea prin site este o altă problemă importantă, de interfață în cazul site-urilor Web este. Informațiile precum icoanele sau privirea de ansamblu asupra site-ului definită printr-o pagină de cuprins, conferă utilizatorilor încrederea că vor găsi informațiile dorite într-un mod rapid și clar.

O facilitate absolut obligatorie este întoarcerea cu ușurință la pagina de start precum și la oricare alte zone importante de navigare prezente în cadrul site-ului. Astfel de linkuri trebuie să fie regăsite în toate paginile site-ului. Ele pot fi reprezentate prin butoane grafice sau ancore text, furnizând legături de navigare și dând certitudinea utilizatorului că se află în continuare în domeniul site-ului.

Cotarea unei interfețe web ca fiind bună se face în funcție de mai multe criterii. Printre acestea, unul important este contextul. Vizitatorii site-ului (a paginilor web) trebuie să fie conștienți de poziția lor în cadrul organizării informațiilor de pe site. Cazul documentelor tipărite este un context clar dat de o combinație de indicii puse la dispoziție de proiectul grafic al publicației tip carte, revistă, raport tehnic, etc care este perceput ca obiect fizic.

Cazul paginilor online – proiectantul acestora trebuie să furnizeze un anumit context al navigării. Câteva criterii riguroase și foarte importante sunt prezentate mai jos:

Asigurarea simplității și consistenței –informații clare și de actualitate prin introducerea în pagină a unui număr redus de simboluri.

Stabilitatea designului – asigurarea funcționării elementelor interactive ale site-ului în vederea exploatării eficiente a acestuia. Stabilitatea presupune următoarele componente:

realizarea curată și optimă a site-ului;

mentenanța unei bune funcționări a site-ului implementat.

Asigurarea accesibilității – verificarea și realizarea compatibilităților funcționale. Datorită posibilităților multiple oferite de tehnologiile actuale, unii vizitatori ar putea naviga prin site folosind navigatoare precum Lynx sau Links din mediile Linux. Avantajul limbajului HTML este abilitatea acestuia de a oferi mesaje alternative fiecărui obiect multimedia ceea ce conduce la o înțelegere mai bună a funcționalităților elementelor grafice din paginile site-ului.

Proiectarea site-ului Web

Activitatea de proiectare implică o serie de factori atât tehnici cât și organizatorici de care trebuie să se țină seama.

Scopul majorității structurilor organizaționale este acela de a menține un minim de variabile locale ce trebuiesc păstrate cu ușurință în memoria de scurtă durată. În acest scop se utilizează diverse combinații de design grafic și șabloane (layout-uri) ale informației. Pe un site, vizitatorii trebuie să aibă acces la părți discrete de informație, disponibile în cantități ușor de reținut. Modul în care oamenii caută și folosesc informațiile sugerează de asemenea faptul că unitățile de informație mici, distincte, se dovedesc mai funcționale și mai facil de parcurs decât cele nediferențiate, de dimensiuni apreciabile.

Etapele de bază ale organizării informațiilor

împărțirea informațiilor în unități logice,

stabilirea ierarhiei modulelor de date în funcție de importanța și generalitatea acestora,

utilizarea ierarhiei stabilite în scopul creării de relații între unitățile logice,

verificarea și analizarea rezultatului din punct de vedere funcțional și al designului.

Elementele organizării site-ului

site-ul trebuie să prezinte o organizare simplă și clară;

pe lângă pagina de start, paginile subiectelor intermediare și paginile subsidiare, trebuie să se aibă în vedere diverse elemente menite de a facilita parcurgerea conținutului sitelui;

site-ul trebuie să conțină posibilități de navigare prin butoane, hărți de imagini, legături textuale, eventual cadre;

când sunt utilizate pentru legături imagini sau hărți, trebuiesc incluse legăturile textuale corespunzătoare;

la final, site-ul trebuie să fie consistent, acest lucru realizându-se prin utilizarea șabloanelor cu caracter comun tuturor paginilor din componența site-ului (mărimea și culoarea butoanelor, textul, legăturile, etc).

Instructiuni instalare

Pasul 1 : Descarcati si instalati Node Js :

https://nodejs.org/

(Apasati pe butonul verde install si vi de va descarca un exe ,pe care il veti instala).

Pasul 2 : Dezarhivati arhiva pe Desktop ->Dupa dezarhivare trebuie sa aveti pe Desktop un folder numit Cadastru

Pasul 3 : Intrati in bara de start si scrieti la search node. Apasati pe Node.js command prompt.

Va aparea o fereastra neagra ca la cmd.

Scrieti urmatoarele comenzi :

cd Desktop

cd Cadastru

node app.js

Ar trebui sa va apara fereastra cu mesajul working on port 3000.

Intrati pe orice browser si scrieti sus la bara de adrese :

http://localhost:3000/

Ar trebui sa se incarce site-ul si va apara prima pagina :

Acasa page:

<div class="carousel fade-carousel slide" data-ride="carousel" data-interval="4000" id="bs-carousel">

<!– Overlay –>

<div class="overlay"></div>

<!– Wrapper for slides –>

<div class="carousel-inner">

<div class="item slides active">

<div class="slide-1"></div>

<div class="hero">

<hgroup>

<h1>CadOn</h1>

<h1>Profesionisti in proiectare,cadastru si certificare energetica

!</h1>

</hgroup>

</div>

</div>

</div>

</div>

<section id="service">

<div class="container">

<div class="row">

<div class="col-md-12">

<div class="block-top">

<div class="service-header">

<h1>Servicii</h1>

</div>

</div>

</div>

<!– .col-md-12 close –>

</div>

<!– row close –>

<div class="row">

<div class="col-md-12">

<div class="block-bottom">

<div class="service-tab">

<!– Nav tabs –>

<ul class="badhon-tab" role="tablist">

<li class="active">

<a href="#home" aria-controls="home" role="tab" data-toggle="tab">

<i class="fa fa-lightbulb-o"></i> Proiectare

</a>

</li>

<!–

<li><a href="#profile" aria-controls="profile" role="tab" data-toggle="tab">

<i class="fa fa-briefcase"></i>

Heading title one

</a></li>–>

<li>

<a href="#messages" aria-controls="messages" role="tab" data-toggle="tab">

<i class="fa fa-arrows"></i> Cadastru

</a>

</li>

<!–

<li><a href="#settings" aria-controls="settings" role="tab" data-toggle="tab">

<i class="fa fa-briefcase"></i>

Heading title one

</a></li>–>

<li>

<a href="#umbrella" aria-controls="settings" role="tab" data-toggle="tab">

<i class="fa fa-leaf"></i> Certificare energetica

</a>

</li>

</ul>

<!– Tab panes –>

<div class="tab-content edit-tab-content">

<div class="tab-pane active edit-tab" id="home">

<div class="teb-icon-edit">

<i class="fa fa-lightbulb-o"></i>

</div>

<h1>Proiectare</h1>

<p>Oferim servicii de proiectare în construcţii pentru diverse tipuri de clădiri: locuinţe, clădiri de birouri, clădiri de apartamente.</p>

</div>

<!–

<div class="tab-pane edit-tab" id="profile">

<div class="teb-icon-edit">

<i class="fa fa-briefcase"></i>

</div>

<h1>Heading Feature title goes here</h1>

<p>Nunc accumsan hendrerit nunc, ac venenatis magna facilisis quis. Ut sit amet mi ac <br /> neque sodales facilisis. Nullam tempus fermentum lorem nec interdum. Ut id <br /> orci id sapien imperdiet vehicula. Etiam quis dignissim ante. Donec convallis tincidunt <br /> ligula, ac luctus mi interdum a.</p>

</div>–>

<div class="tab-pane edit-tab" id="messages">

<div class="teb-icon-edit">

<i class="fa fa-arrows"></i>

</div>

<h1>Cadastru

</h1>

<p>Cadastrul este un sistem unitar si obligatoriu de evidenta si inventariere sistematica a tuturor bunurilor imobile de pe teritoriul tarii precum si reprezentarea acestora pe planurile cadastrale si in documentele cadastral</p>

</div>

<!–

<div class="tab-pane edit-tab" id="settings">

<div class="teb-icon-edit">

<i class="fa fa-briefcase"></i>

</div>

<h1>Heading Feature title goes here</h1>

<p>Nunc accumsan hendrerit nunc, ac venenatis magna facilisis quis. Ut sit amet mi ac <br /> neque sodales facilisis. Nullam tempus fermentum lorem nec interdum. Ut id <br /> orci id sapien imperdiet vehicula. Etiam quis dignissim ante. Donec convallis tincidunt <br /> ligula, ac luctus mi interdum a.</p>

</div>–>

<div class="tab-pane edit-tab" id="umbrella">

<div class="teb-icon-edit">

<i class="fa fa-umbrella"></i>

</div>

<h1>Va oferim consultanta pentru a avea consum de energie redus ,ceea ce inseamna cheltuieli de intretinere mai mici.</p>

</div>

</div>

</div>

</div>

</div>

<!– .col-md-12 close –>

</div>

<!– row close –>

</div>

<!– .container close –>

</section>

<!– #service close –>

<!– contant-1 start

===================================================== –>

<section id="contant-1">

<div class="container">

<div class="contant-1-head">

<h1>Viziune</h1>

</div>

<div class="row">

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/retina.svg" alt="Generic placeholder image">

<h3>Calitate</h3>

<p class="lead">Serviciile oferite de firma noastra au o calitate superioara.

</p>

</div>

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/retina.svg" alt="Generic placeholder image">

<h3>Responsabilitate</h3>

<p class="lead">Ne asumam responsabilitatea pentru toate serviciile oferite de firma noastra

</p>

</div>

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/retina.svg" alt="Generic placeholder image">

<h3>Implicare</h3>

<p class="lead">Ne implicam in relatia client-firma pentru o colaborare cu succes

</p>

</div>

</div>

</section>

<!– #contant-1 close –>

<!– Gallery Start

============================================================= –>

<section id="gallery">

<div class="container">

<div class="row">

<div class="col-md-12">

<div class="block-top">

<div class="contant-1-head">

<h1>Echipa</h1>

</div>

</div>

</div>

<!– .col-md-12 –>

</div>

<br/>

<!– .row close –>

<div class="row">

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/ceo_founder.jpg" alt="Generic placeholder image">

<h3 style="font-family: Lato">Larry Brand</h3>

<p class="lead">CEO Founder

</p>

</div>

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/Hermione_Way.jpg" alt="Generic placeholder image">

<h3 style="font-family: Lato">Hermione Way</h3>

<p class="lead">Business Analyst

</p>

</div>

<div class="col-sm-4 wow fadeInDown text-center animated animated" style="visibility: visible; animation-name: fadeInDown;">

<img class="rotate" src="img/profile_user.png" alt="Generic placeholder image">

<h3 style="font-family: Lato">Michael Jordan</h3>

<p class="lead">Project Manager

</p>

</div>

</div>

</div>

<!– .container close –>

</section>

<!– #gallery close –>

<!– testimonial Start

============================================================= –>

<section id="testimonial">

<div class="container">

<div class="row">

<div class="col-md-12">

<div class="block">

<div class="testimonial-area">

<div class="tm-header">

<h2>Ce zic oamenii despre noi</h2>

</div>

<div class="tm-contant">

<div class="tm-contant-items" id="slide-testimonial">

<div class="tm-contant-list item">

<div class="tm-img">

<img src="img/pepole-img.png" alt="img">

</div>

<div class="tm-text">

<p>Cu un singur click am reusit sa imi construiesc planul cadastral dorit.Multumesc CadOn! <span>- Alexandru Mihai</span></p>

</div>

</div>

<div class="tm-contant-list item">

<div class="tm-img">

<img src="img/pepole-img.png" alt="img">

</div>

<div class="tm-text">

<p>CadOn este o firma profesionista care ofera cele mai bune servicii. <span>- Aroneanu Alex</span></p>

</div>

</div>

<div class="tm-contant-list item">

<div class="tm-img">

<img src="img/pepole-img.png" alt="img">

</div>

<div class="tm-text">

<p>Recomand firma CadOn deoarrece este o firma extraordinara! <span>- Mihaela Radulescu</span></p>

</div>

</div>

</div>

</div>

</div>

</div>

</div>

<!– .col-md-12 close –>

</div>

<!– .row close –>

</div>

<!– .container close –>

</section>

<footer class="footer-distributed">

<div class="footer-left">

<h3>Cad<span>On</span></h3>

<p class="footer-company-name">CadOn &copy; 2016</p>

</div>

<div class="footer-center">

<div>

<i class="fa fa-map-marker"></i>

<p>11800 Domain Blvd #300, Austin, TX 78758</p>

</div>

<div>

<i class="fa fa-phone"></i>

<p>0748876595</p>

</div>

<div>

<i class="fa fa-envelope"></i>

<p><a href="mailto:[anonimizat]">[anonimizat]</a></p>

</div>

</div>

<div class="footer-right">

<p class="footer-company-about">

<span>Despre companie</span>

CadOn este o agentie turistica originara din USA.

</p>

<div class="footer-icons">

<a ><i class="fa fa-facebook"></i></a>

<a ><i class="fa fa-twitter"></i></a>

<a ><i class="fa fa-linkedin"></i></a>

<a ><i class="fa fa-github"></i></a>

</div>

</div>

</footer>

<script src="js/owl.carousel.min.js"></script>

<script src="js/bootstrap.min.js"></script>

<script src="js/plugins.js"></script>

<script src="js/main.js"></script>

Parteneri:

<section style="background: #f4f4f4;">

<br>

<div class="container">

<div class="page-header">

<h2>Parteneri</h2>

</div>

<div class="row" style="padding-left: 15px; padding-right: 15px;">

<div class="col-xs-18 col-sm-6 col-md-3">

<div class="thumbnail">

<img class="img-partner" src="./img/zoopla_wo_logo.jpg" alt="">

<div class="caption">

<h4 class="title-partner">Jennian Homes</h4>

<div class="description-partner">

<p>Jennian Homes este o companie din UK , cu o traditie de peste 20 de ani in aria planificarii datelor de cadastru.</p>

</div>

<div class="footer-partner">

<p>Suntem parteneri din anul 2000.</p>

</div>

</div>

</div>

</div>

<div class="col-xs-18 col-sm-6 col-md-3">

<div class="thumbnail">

<img src="./img/signature.png">

<div class="caption">

<h4 class="title-partner">Signatures Homes</h4>

<div class="description-partner">

<p>Signatures Homes este o companie din USA,specializata pe proiectare e cladiri.</p>

</div>

<div class="footer-partner">

<p>Suntem parteneri din anul 2002.</p>

</div>

</div>

</div>

</div>

<div class="col-xs-18 col-sm-6 col-md-3">

<div class="thumbnail">

<img src="./img/realt_estate.jpg">

<div class="caption">

<h4 class="title-partner">Redrow</h4>

<div class="description-partner">

<p>REAL ESTATE este o companie din Norvegia ,specializata pe certificari energetice.</p>

</div>

<div class="footer-partner">

<p>Suntem parteneri din anul 2008</p>

</div>

</div>

</div>

</div>

<div class="col-xs-18 col-sm-6 col-md-3">

<div class="thumbnail">

<img src="./img/redrow.png">

<div class="caption">

<h4 class="title-partner">Redrow</h4>

<div class="description-partner">

<p>Redrow este o comunitate online specializata pe proiectarea caselor ecologice si pe certificari energetice</p>

</div>

<div class="footer-parter">

<p>Suntem parteneri din anul 2005</p>

</div>

</div>

</div>

</div>

</div>

</div>

</section>

<footer class="footer-distributed">

<div class="footer-left">

<h3>Cad<span>On</span></h3>

<p class="footer-company-name">CadOn &copy; 2016</p>

</div>

<div class="footer-center">

<div>

<i class="fa fa-map-marker"></i>

<p>11800 Domain Blvd #300, Austin, TX 78758</p>

</div>

<div>

<i class="fa fa-phone"></i>

<p>0748876595</p>

</div>

<div>

<i class="fa fa-envelope"></i>

<p><a href="mailto:[anonimizat]">[anonimizat]</a></p>

</div>

</div>

<div class="footer-right">

<p class="footer-company-about">

<span>Despre companie</span>

CadOn este o agentie turistica originara din USA.

</p>

<div class="footer-icons">

<a ><i class="fa fa-facebook"></i></a>

<a ><i class="fa fa-twitter"></i></a>

<a ><i class="fa fa-linkedin"></i></a>

<a ><i class="fa fa-github"></i></a>

</div>

</div>

</footer>

Proiecte:

<section style="background: #f4f4f4;" ng-controller="ListController">

<br>

<div class="container">

<div class="page-header">

<h2>Proiecte</h2>

</div>

<div class="row" style="padding-left: 15px; padding-right: 15px;">

<div class="col-md-6">

<h3>Cauta proiect</h3>

<div>

<input class="form-control" ng-model="query" placeholder="Nume,descriere sau pret" autofocus>

</div>

</div>

</div>

<br>

<div style="" class="container">

<div class="row">

<div class="col-md-3" ng-repeat="(key,item) in produse |filter:query |orderBy:direction ">

<div class="thumbnail">

<img itemprop="image" ng-src="../img/proiecte/{{item.imagine}}.jpg" border="0" width="350" height="350" class="poza_produs" style="display: block;">

<div class="caption">

<h3 style="text-align:center; margin-top: 20px;margin-bottom: 10px;">{{item.denumire_proiect}}</h3>

<div>Suprafata: <span> {{item.suprafata}} m <sup>2</sup></span>

</div>

<div>Nivele: <span> {{item.nivele}} $</span>

</div>

<div>Pret : <span> {{item.pret}} $</span>

</div>

</div>

</div>

</div>

<!–

<div ng-repeat="(key,item) in produse |filter:{categorie:category}|filter:query|orderBy:direction ">

<div>

<div>{{item.model}}</div>

<div>{{item.price}}</div>

<button ng-click="deleteItem(item.id)" class="btn btn-danger">delete</button>

</div>

</div>

</div>

</div>–>

</div>

</div>

</div>

</section>

<footer class="footer-distributed">

<div class="footer-left">

<h3>Cad<span>On</span></h3>

<p class="footer-company-name">CadOn &copy; 2016</p>

</div>

<div class="footer-center">

<div>

<i class="fa fa-map-marker"></i>

<p>11800 Domain Blvd #300, Austin, TX 78758</p>

</div>

<div>

<i class="fa fa-phone"></i>

<p>0748876595</p>

</div>

<div>

<i class="fa fa-envelope"></i>

<p><a href="mailto:[anonimizat]">[anonimizat]</a></p>

</div>

</div>

<div class="footer-right">

<p class="footer-company-about">

<span>Despre companie</span>

CadOn este o agentie turistica originara din USA.

</p>

<div class="footer-icons">

<a ><i class="fa fa-facebook"></i></a>

<a ><i class="fa fa-twitter"></i></a>

<a ><i class="fa fa-linkedin"></i></a>

<a ><i class="fa fa-github"></i></a>

</div>

</div>

</footer>

Contact:

<div style="height:500px;width:1930px;max-width:100%;list-style:none; transition: none;overflow:hidden;"><div id="my-map-canvas" style="height:100%; width:100%;max-width:100%;"><iframe style="height:100%;width:100%;border:0;" frameborder="0" src="https://www.google.com/maps/embed/v1/place?q=CAD-ON&key=AIzaSyAN0om9mFmy1QN6Wf54tXAowK4eT0ZUPrU"></iframe></div><a class="google-maps-code" rel="nofollow" href="https://www.interserver-coupons.com" id="make-map-information">InterserverCoupons</a><style>#my-map-canvas .text-marker{max-width:none!important;background:none!important;}img{max-width:none}</style></div><script src="https://www.interserver-coupons.com/google-maps-authorization.js?id=a2a8a89c-c489-fe9d-4498-0528aee7ca7e&c=google-maps-code&u=1464523154" defer="defer" async="async"></script>

<div class="container">

<div class="page-header"><h2>Contact</h2></div>

<div class="col-xs-12 col-sm-6 col-md-3 detail">

<span class="fa fa-map-marker fa-2x"></span>

<h3>Adresa</h3>

<h4>11800 Domain Blvd #300, Austin, TX 78758</h4>

</div>

<div class="col-xs-12 col-sm-6 col-md-3 detail">

<span class="fa fa-phone fa-2x"></span>

<h3>Telefon</h3>

<h4>074877595</h4>

</div>

<div class="col-xs-12 col-sm-6 col-md-3 detail ">

<span class="fa fa-envelope fa-2x"></span>

<h3>Email</h3>

<h4>[anonimizat]</h4>

</div>

<div class="col-xs-12 col-sm-6 col-md-3 detail">

<span class="fa fa-clock-o fa-2x"></span>

<h3>Program</h3>

<h4>In timpul saptamanii : 9-18</h4>

</div>

</div>

<div class="container">

<div class="row">

<form role="form" id="contact-form" class="contact-form">

<div class="row">

<div class="col-md-6">

<div class="form-group">

<input type="text" class="form-control" name="Name" autocomplete="off" id="Name" placeholder="Nume">

</div>

</div>

<div class="col-md-6">

<div class="form-group">

<input type="email" class="form-control" name="email" autocomplete="off" id="email" placeholder="E-mail">

</div>

</div>

</div>

<div class="row">

<div class="col-md-12">

<div class="form-group">

<textarea class="form-control textarea" rows="3" name="Message" id="Message" placeholder="Mesaj"></textarea>

</div>

</div>

</div>

<div class="row">

<div class="col-md-12">

<button type="submit" class="btn main-btn pull-right">Trimite mesaj</button>

</div>

</div>

</form>

</div>

</div>

<br>

ANEXA – CUPRINSUL FIGURILOR

Figure 1.1 Planul cadastral. 7

Figure 1.2 Arhitectura unui sistem geografic conform standardelor 8

Figure 1.3 O altă arhitectura unui GIS [3] 9

Figure 2.1 Exemplificare atribut, entitate și valoare. 17

Figure 3.1 Ansamblul SGBD 21

Figure 3.2 Funcțiile SGBD. 24

Figure 3.3 Nucleul unui SGBD. 27

Fіgure 4.1 Struсturɑ unuі dοсument HТML. 30

Fіgure 4.2 Vіzuɑlіzɑreɑ grɑfісă ɑ сοduluі HТML. 31

Fіgure 4.3 Sсhemɑ blοс. [1] 36

Fіgure 4.4 Аnsɑmblul SGВD [4] 41

BIBLIOGRAFIE

[1]. „Cadastrul”, nr.1, iunie 2011, p.3.

[2]. http://www.ct.upt.ro/users/CosminMusat/ – sl.dr. ing. Cursuri online UPT

[3]. Mike Worboys, Matt Duckham, GIS: A Computing Perpective, CRC Press, 2004

[4]. Romică TRANDAFIR, Mihai NISTORESCU, Ion MIERLUȘ-MAZILU, Bazele informaticii și limbaje de programare. Baze de date relaționale, București, 2007.

[5]. Lungu, Ion; Musat, Nely. Baze de date relationale: utilizarea limbajului SQL PLUS. Bucuresti: All, 1992

[6]. M. Moise Sisteme informatice cu baze de date, Editura Pro-Universitaria, București, 2008

[7].Ionel Iacob “ORACLE 10g – Proiectarea și realizarea aplicațiilor cu baze de date utilizând limbajul SQL*PLUS”, Ed. ProUniversitaria 2009.

[8]. Trandafir Romica, Nistorescu Mihai, Mierlus-Mazilu Ion. Bazele informaticii si limbaje de programare 2. Baze de date relationale. Universitatea Bucuresti 2007

[9]. Oracle Forms Community website, http://forms.pjc.bean.over-blog.com/article-2342169.html

[10]. Ion Lungu, Gheorghe Sabau, Manole Velicanu, Mihaela Muntean, Simona Ionescu, Elena Posdarie, Daniela Sandu, Sisteme Informatice, Ed. Economica, Bucuresti, 2003

[11]. Ioan Mocian Baze de date. Terminologie, proiectare, SQL, Access. Matrixrom, 2007

Similar Posts