Tehnici web
-
Upload
vizdoaga-daniel -
Category
Documents
-
view
54 -
download
0
description
Transcript of Tehnici web
Twitter Bootstrap
Twitter Bootstrap este un framework pentru design HTML/CSS și Javascript prin
încapsularea unor funcționalități din jQuery. De asemenea, este un framework care are ca
principală sarcină oferirea elementelor necesare pentru realizarea unui produs finisat într-un timp
scurt. Ca proiect open-source, inițiat de echipa de dezvoltare de la Twitter, a prins foarte repede
în comunitatea online, avînd un trend exponențial pe mai multe direcții. Astfel, nu doar că a
ajuns la versiunea 3 și că este printre cele mai populare proiecte open-source pe GitHub, dar în
același timp librăria a declanșat dezvoltarea unor terțe librării și extensii care au ca scop
completarea și rafinarea unui pachet întreg de resurse necesare în jurul acestui framework.
Printre aceste resurse pot fi menţionate:
Template-uri de Twitter Bootstrap (licențe libere sau comerciale);
Fonturi noi;
Elemente și componente UI;
Alte elemente estetice utile (săgeţi, librării pentru grafice, generatoare
template-uri, etc)
Twitter Bootstrap mai oferă încă o facilitate, care nu este deloc ușor de trecut cu vederea:
plaja de compatibilitate cu marile web browser-e este foarte bună, incluzînd și Internet Explorer
11. Iar la nivelul dispozitivelor mobile, acestea sunt suportate prin implementarea unui CSS
responsive.
În privința suportului pentru device-uri mobile, Twitter Bootstrap nu poate înlocui un
framework destinat exclusiv acestora, cum ar fi jQuery Mobile, care e construit și definit ca un
framework web optimizat pentru smartphones și tablete, pe cînd Twitter Bootstrap oferă doar
suport pentru acestea prin crearea de layout-uri responsive în funcție de device-ul care îl
accesează.
La baza dezvoltării continue a framework-ului Twitter Bootstrap este pre-procesorul
LESS, ales datorită vitezei de compilare a codului (de 6 ori mai rapid ca SASS), și a eleganței și
utilizării JavaScript-ului. Ca rezultat, oferă unui dezvoltator posibilitatea ajustării design-ului
prin definirea/setarea unui set de variabile/parametri și recompilarea surselor LESS rezultînd un
nou set de fişiere de stil (CSS).
LESS, nu este singur pre-procesor de CSS disponibil, existînd în momentul de față mai
multe pre-procesoare printre care s-au remarcat printre dezvoltatorii de front-end: LESS, SASS
și SCSS. Folosirea acestora aduce o valoare adăugată oricărui framework de front-end. Însă
modul lor de funcționare este asemănător, fiecare încercînd să ofere dezvoltatorului ușurință în a
scrie un cod de calitate, și dezvolta un produs finit. Browser-ul web fiind capabil să interpreteze
doar fișiere de stiluri CSS, codul scris pentru aceste pre-pocesoare este compilat generînd un set
de stiluri CSS interpretabile de broswere.
Aceste pre-procesoare au apărut ca o necesitate în urma limitărilor pe care le implică
folosirea stilurilor CSS (lipsa variabilelor, și a facilității de refolosire a stilurilor în mai multe
selecții CSS). Deși la prima vedere, folosirea acestor pre-procesoare ar putea fi considerată ca o
muncă adițională în realizarea unei aplicații sau pagini web, una dintre avantajele majore este
cîștigarea de timp în dezvoltare, alături de un cod mai curat (DRY = Don"t Repeat Yourself), un
fișier de CSS mai curat și ușor de întreţinut.
Ca urmare a succesului şi popularității cîştigate de acest framework HTML/CSS, au
apărut comunităţi şi pagini web cu scop declarat de a oferi (gratis şi/sau comercial), pachete de
interfețe utilizator complete şi gata de integrat în aplicații din diverse domenii.
Unul dintre cele mai populare, bootstrap oferă template-uri pe categorii:
Administrare şi Dashboard;
Pagini de prezentare;
Pagini Business şi Corporate;
Portofoliu şi Galerii Foto.
Pe lîngă acest serviciu comercial există multe altele care oferă template-uri complete sub
o licență gratuită, unul dintre acestea fiind Bootmetro, replică stilul Metro Style, oferit de noul
Windows 8. (http://aozora.github.com/bootmetro/).
La utilizarea pachetului Twitter Bootstrap, pe lîngă posibilitatea de a-ți construi singur
pachetul folosind funcțiile pre-procesorului LESS local instalat, se poate utiliza şi personalizarea
pachetului prin definirea de variabile, parametri şi chiar plugin-uri necesare înainte de a
downloada acest pachet de pe site-ul care îl găzduiește. Acest lucru se poate traduce în
personalizarea şi micșorarea pachetului expus utilizatorului final, rezultînd o viteză mai mare de
încărcarea a paginii web.
Pe lîngă plugin-urile puse la dispoziție de către echipa din spatele acestui pachet, există
numeroase site-uri care complementează cu diverse extensii, de la reprezentări grafice ale unor
informații utile, pînă la extinderea unor widget-uri clasice la un nivel superior.
Pentru integrarea acestora, Twitter Bootstrap oferă două metode, una dintre acestea, fiind
interesantă pentru ca nu cere cunoştinţe de Javascript pentru utilizare. Metoda aceasta foloseşte
doar cod HTML cu atribute speciale atașate tag-urilor existent pentru declanșarea unor
funcționalități Javascript.
O altă tendință este folosirea unui font în reprezentarea icoanelor pentru anumite acțiuni
și reprezentarea de informații auxiliare pentru informații prezentate. Unul dintre acestea:
FontAwesome, este chiar definit ca fiind un font iconic dezvoltat pentru a fi folosit împreună cu
framework-ul Twitter Bootstrap. Dar nu este singurul, el fiind complementat de cîteva font-uri
din aceeași categorie.
Un exemplu este Socialico, care oferă un set de caractere destinat reprezentării iconițelor
celor mai populare rețele de socializare.
E o metodă nouă de prezentare a informațiilor de tip icoane, care vine şi cu multe
avantaje precum: scalabilitatea reprezentării fără pierderea calității (font-ul fiind reprezentat
vectorial), o amprentă mai mică (dimensiune mai mică a fișierelor), mai puțină muncă de
Photoshop şi bineînțeles de creare/modificare stiluri CSS; dar şi cu cîteva dezavantaje: o limitare
în privința numărului de icoane disponibile în fiecare font, și chiar o mică problemă de SEO
(google bot nu poate să interpreteze litera "x" care e randată pentru user în broswer-ul web ca
fiind icoană reprezentînd acțiunea de Login).
Pachetul Twitter Bootstrap este independent de tehnologia server side folosită, ceea ce îl
face atractiv pentru web designeri și dezvoltatori web, indiferent de limbajul de programare
utilizat.
Folosirea acestui pachet de UI, împreună cu un framework de tip MVC avansat, care pe
lîngă funcționalitatea standard, și un design arhitectural oferă şi un generator de module de tip
CRUD (Create/Remove/Update/Delete și altele dacă se intervine) ar fi un caz complet de
implementare de tip Rapid Aplication Development (RAD) cu rezultate și privind experiența
user-ului.
Limbajul de marcare HTML
HyperText Markup Language (HTML) este un limbaj de marcare utilizat pentru crearea
paginilor web ce pot fi afișate într-un browser (sau navigator). Scopul HTML este mai degrabă
prezentarea informațiilor – paragrafe, fonturi, tabele ș.a.m.d. – decît descrierea semanticii
documentului.
HTML este o formă de marcare orientată către prezentarea documentelor text pe o
singura pagină, utilizînd un software de redare specializat, numit agent utilizator HTML, cel mai
bun exemplu de astfel de software fiind browserul web. HTML furnizează mijloacele prin care
conținutul unui document poate fi adnotat cu diverse tipuri de metadate și indicații de redare.
Indicațiile de redare pot varia de la decorațiuni minore ale textului, cum ar fi specificarea faptului
că un anumit cuvînt trebuie subliniat sau că o imagine trebuie introdusă, pînă la scripturi
sofisticate, hărți de imagini și formulare. Metadatele pot include informații despre titlul și autorul
documentului, informații structurale despre cum este împărțit documentul în diferite segmente,
paragrafe, liste, titluri etc. și informații cruciale care permit ca documentul să poată fi legat de
alte documente pentru a forma astfel hiperlink-uri (sau web-ul).
HTML este un format text proiectat pentru a putea fi citit și editat de oameni utilizînd un
editor de text simplu. Totuși scrierea și modificarea paginilor în acest fel solicită cunoștințe
solide de HTML și este consumatoare de timp. Editoarele grafice (de tip WYSIWYG) cum ar fi
Macromedia Dreamweaver, Adobe GoLive sau Microsoft FrontPage permit ca paginile web sa
fie tratate asemănător cu documetele Word, dar cu observația că aceste programe generează un
cod HTML care este de multe ori de proastă calitate.
HTML se poate genera direct utilizînd tehnologii de codare din partea serverului cum ar
fi PHP, JSP sau ASP. Multe aplicații ca sistemele de gestionare a conținutului, wiki-uri și
forumuri web generează pagini HTML.
HTML este de asemenea utilizat în e-mail. Majoritatea aplicațiilor de e-mail folosesc un
editor HTML încorporat pentru compunerea e-mail-urilor și un motor de prezentare a e-mail-
urilor de acest tip. Folosirea e-mail-urilor HTML este un subiect controversat și multe liste de
mail le blochează intenționat. HTML este prescurtarea de la Hyper Text Mark-up Language si
este codul care sta la baza paginilor web.
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 />.
Navigatorul web interpretează aceste etichete afișînd rezultatul pe ecran. HTML-ul este un
limbaj care nu face deosebire între litere majuscule și minuscule.
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.sabot-design.md este afișată pagina www.
sabot-design.md /index.html.
Toate paginile HTML încep și se termină cu etichetele <html> și </html>. În interiorul
acestor etichete găsim perechile <head>, </head> și <body>, </body>. <head> conține titlul
paginii între etichetele <title> și </title>, descrieri de tip <meta>, stiluri pentru formatarea
textului, script-uri și legături către fisiere externe (de exemplu script-uri, fișiere de tip CSS sau
favicon). Etichetele de tip meta conțin cuvinte cheie, descrierea paginii, date despre autor,
informații utile motoarelor de căutare.
HTML5 este a cincea revizuire a standardului HTML (creat în 1990 și standardizat ca
HTML4 din 1997) și din octombrie 2011 este în curs de dezvoltare. Obiectivele sale principale
au fost acelea de a îmbunătăți limbajul cu un suport pentru cele mai recente apariții multimedia
în același timp menținîndul ușor de citit de oameni și bine înțeles de computere și device-uri
(browsere web, parsere, etc.). HTML5 își propune să însumeze nu numai HTML4, dar și
XHTML1 și DOM2HTML (îndeosebi JavaScript).
Urmărind predecesorii săi imediați HTML 4.01 și XHTML 1.1, HTML5 este un răspuns
la observația că HTML și XHTML utilizate în comun pe World Wide Web sunt un amestec de
caracteristici introduse de specificații diferite, împreuna cu acestea mai sunt și caracteristicile
diferite aduse de software, de browsere, și multe erori de sintaxă în documnentele web existente.
Astfle, HTML5 devine o încercare de a defini un singur limbaj de marcare care poate fi scris în
oricare dintre sintaxele HTML sau/și XHTML. Acesta include modele detaliate de prelucrare
pentru a încuraja mai multe implementări interoperabile; extinde, îmbunătățește și raționalizează
disponibilitățile pentru documentele web și introduce marcarea și aplicații API pentru aplicații
web complexe. Din aceste motive, HTML5 este un posibil candidat pentru aplicațiile de
platforme mobile. Multe caracteristici ale HTML5 au fost create din considerarea că va trebui să
devină capabil să ruleze pe dispozitive cum ar fi smart-phonurile sau tabletele.
În special, HTML5 aduce multe noi caracteristici sintactice. Acestea cuprind elemente ca
<video>, <audio>, <header> și <canvas> elemente HTML, precum și integrarea conținutului
SVG care a înlocuiește utilizarea tag-ului generic <object>. Aceste noutăți sunt proiectate pentru
a facilita includerea și manipularea în web a conținuturilor multimedia și grafice fără a fi nevoie
să se recurgă la proprietățile de plugin și API. Alte noi elemente ca <section>, <article>,
<header>, și <nav> sunt proiectate să îmbunătățească conținutul semantic al documentelor. Noi
atribute au fost introduse în același scop, în același timp unele elemente și atribute au fost
îndepărtate. Unele elemente ca <a>, <cite> și <menu> au fost schimbate, redefinite și
standardizate. API-urile și DOM-urile sunt certitudini și sunt părți fundamentale în specificațiile
HTML5. HTML5, de asemenea, definește in cîteva detalii prelucrările necesare pentru
documentele invalide, astfel încît sintaxa erorilor va fi tratată uniform de toate browserele
cunoscute
CSS
CSS (Cascading Style Sheets) este un standard pentru formatarea elementelor unui
document HTML. Stilurile se pot atașa elementelor HTML prin intermediul unor fișiere externe
sau în cadrul documentului, prin elementul <style> și/sau atributul style. CSS se poate utiliza și
pentru formatarea elementelor XHTML, XML și SVGL.
Sunt mai multe versiuni ale acestui standard, uștima din ele fiind CSS3. CSS3 reprezintă
un upgrade ce aduce cîteva atribute noi și ajută la dezvoltarea noilor concepte in webdesign.
Unele dintre cele mai importante segmente (module) noi adăugate acestui standard pentru
formatarea elementelor HTML aduc un plus considerabil in dezvoltarea activități webdesign.
Mai jos sunt prezente in listă cele mai importante modulele adăugate in CSS3:
Selectors;
Box Model;
Backgrounds and Borders;
Image Values and Replaced Content;
Text Effects;
2D/3D Transformations;
Animations;
Multiple Column Layout;
User Interface.
Deși au apărut unele deficiente de compatibilitate între browsere, majoritatea
proprietăților CSS3 au fost implementate cu succes în variantele browserelor noi.
Acum CSS3 oferă posibilitatea de a crea borduri cu colțurile rotunjite fară a folosi
elemente grafice de fundal așa cum se folosea anterior acestui upgrade.
Proprietatea CSS3 border-radius definește prin valorile exprimate în pixeli cît de rotunjite
vor fi colțurile unui element HTML sau unei imagini. Fiecare colț poate avea o altă valoare
exprimată în pixeli diferită de un alt colț al aceluiași element. Prin urmare putem folosi pana la 4
valori diferite atribuite unui element HTML sau imagine.
JavaScript
JavaScript (JS) este un limbaj de programare orientat obiect bazat pe conceptul
prototipurilor. Este folosit mai ales pentru introducerea unor funcționalități în paginile web,
codul Javascript din aceste pagini fiind rulat de către browser. Limbajul este binecunoscut pentru
folosirea sa în construirea siturilor web, dar este folosit și pentru acesul la obiecte încastrate
(embedded objects) în alte aplicații. A fost dezvoltat inițial de către Brendan Eich de la Netscape
Communications Corporation sub numele de Mocha, apoi LiveScript, și denumit în final
JavaScript.
În ciuda numelui și a unor similarități în sintaxă, între JavaScript și limbajul Java nu
există nicio legătură. Ca și Java, JavaScript are o sintaxă apropiată de cea a limbajului C, dar are
mai multe în comun cu limbajul Self decît cu Java.
Schimbarea numelui din LiveScript în JavaScript s-a făcut cam în același timp în care
Netscape încorpora suport pentru tehnologia Java în browserul web Netscape Navigator.
Microsoft a implementat limbajul JavaScript sub numele de JScript, cu o serie de
modificări și extensii față de implementarea Netscape. Pe platforma Windows, JScript este unul
din limbajele executabile de către Windows Script și, deci, poate fi folosit pentru scriptarea
aplicațiilor ce suportă Windows Script, de exemplu Internet Explorer, sau chiar sistemul de
operare Windows. Asociația ECMA a standardizat limbajul JavaScript/JScript sub numele
ECMAScript (standardul ECMA-262).
Cea mai des întîlnită utilizare a JavaScript este în scriptarea paginilor web. Programatorii
web pot îngloba în paginile HTML script-uri pentru diverse activități cum ar fi verificarea
datelor introduse de utilizatori sau crearea de meniuri și alte efecte animate.
Browserele rețin în memorie o reprezentare a unei pagini web sub forma unui arbore de
obiecte și pun la dispoziție aceste obiecte script-urilor JavaScript, care le pot citi și manipula.
Arborele de obiecte poartă numele de Document Object Model sau DOM. Există un standard
W3C pentru DOM-ul pe care trebuie să îl pună la dispoziție un browser, ceea ce oferă premiza
scrierii de script-uri portabile, care să funcționeze pe toate browserele. În practică, însă,
standardul W3C pentru DOM este incomplet implementat. Deși tendința browserelor este de a se
alinia standardului W3C, unele din acestea încă prezintă incompatibilități majore, cum este cazul
Internet Explorer.
O tehnică de construire a paginilor web tot mai întîlnită în ultimul timp este AJAX,
abreviere de la „Asynchronous JavaScript and XML”. Această tehnică constă în executarea de
cereri HTTP în fundal, fără a reîncărca toată pagina web, și actualizarea numai anumitor porțiuni
ale paginii prin manipularea DOM-ului paginii. Tehnica AJAX permite construirea unor interfețe
web cu timp de răspuns mic, întrucît operația (costisitoare ca timp) de încărcare a unei pagini
HTML complete este în mare parte eliminată.
JavaScript oferă un tip de date Boolean cu valorile true și false. Operatorul returnează
șirul "boolean" pentru aceste tipuri de primitive. Atunci cînd este utilizat într-un context logic, 0 ,
-0 , null , NaN , undefined , iar șir vid ( "" ) evaluează în false din cauza constrîngerii automate.
Cînd conversia de tip este necesară, JavaScript convertește String, Number, Boolean, sau
operanzilor obiect, după cum urmează:
Șir de caractere este convertit la o valoare număr. JavaScript încearcă să transforme
literal șir de caractere numeric, la o valoare tip de număr. În primul rînd, o valoare de
matematică este derivat din literal șir de caractere numeric. Apoi, această valoare este
rotunjită la cea mai apropiată valoare tip de număr;
Dacă unul dintre operanzi este un Boolean, operand Boolean este convertit la 1 dacă
este true sau la 0, dacă este false;
Dacă un obiect este comparat cu un număr sau un șir de caractere, JavaScript încearcă
să se întoarcă valoarea implicită pentru obiect. Un obiect este convertit la un șir de
caractere sau o valoare numerică, folosind .valueOf() sau .toString() metode de
obiect. Dacă acest lucru nu reușește, o eroare de execuție este generată.
Unii experți folosesc termenii "true" și "false" pentru a descrie modul în care valorile de
diferite tipuri, se comportă atunci cînd a evaluat într-un context logic, în special în ceea ce
privește cazurile de margine. Operatorii logici binare a returnat o valoare booleană în primele
versiuni de JavaScript, dar acum se vor întoarce unul dintre operanzi loc.
Operandul stîng este returnat în cazul în care acesta poate fi evaluat ca: false , în cazul de
asociere ( a && b ) , sau true , în cazul de disjuncției ( a || b ) , în caz contrar dreptul de-operand
este returnat. O expresie poate fi în mod explicit exprimate la un primitiv de booleană: dublarea
logic operatorul negație ( !! ) , folosind Boolean() funcția, sau folosind operatorul condițional.
Limbajul PHP
PHP este un limbaj de programare. Numele PHP provine din limba engleză și este un
acronim recursiv : Php: Hypertext Preprocessor. Folosit inițial pentru a produce pagini web
dinamice, este folosit pe scară largă în dezvoltarea paginilor și aplicațiilor web. Se folosește în
principal înglobat în codul HTML, dar începînd de la versiunea 4.3.0 se poate folosi și în mod
„linie de comandă” (CLI), permițînd crearea de aplicații independente. Este unul din cele mai
importante limbaje de programare web open-source și server-side, existînd versiuni disponibile
pentru majoritatea web serverelor și pentru toate sistemele de operare. Conform statisticilor este
instalat pe 20 de milioane de situri web și pe 1 milion de servere web. Este disponibil sub
Licenṭa PHP ṣi Free Software Foundation îl consideră a fi un software liber.
Inițial, limbajul a fost dezvoltat de inventatorul său, Rasmus Lerdorf. Odată cu creșterea
numărului de utilizatori, dezvoltarea a fost preluată de o nouă entitate, numită The PHP Group
(Grupul PHP).
PHP însemna inițial Personal Home Page. PHP a fost început în 1994 ca o extensie a
limbajului server-side Perl, și apoi ca o serie de CGI-uri compilate de către Rasmus Lerdorf,
pentru a genera un curriculum vitae și pentru a urmări numărul de vizitatori ai unui site. Apoi a
evoluat în PHP/FI 2.0, dar proiectul open-source a început să ia amploare după ce Zeev Suraski
și Andi Gutmans, de la Technion au lansat o nouă versiune a interpretorului PHP în vara anului
1998, această versiune primind numele de PHP 3.0. Tot ei au schimbat și numele în acronimul
recursiv de acum, pînă atunci PHP fiind cunoscut ca Personal Home Page Tools. Apoi Suraski și
Gutmans au rescris baza limbajului, producînd astfel și Zend Engine în 1999. În mai 2000 a fost
lansat PHP 4.0, avînd la bază Zend Engine 1.0.
Pe 13 iulie 2004 a fost lansat PHP 5, cu Zend Engine II, ce a adus și o orientare obiect
mai pronunțată și suportînd mai multe caracteristici ale acestui tip de programare.
PHP 5 aduce mai multe noutăți față de versiunea 4:
Suport îmbunătățit pentru OOP;
Introduce extensia PDO - PHP Data Objects, care definește o modalitate facilă
și consistentă de accesare a diferitelor baze de date;
Imbunătățiri de performanță;
Suport îmbunătățit pentru MySQL și MSSQL;
Suport nativ pentru SQLite;
Suport SOAP integrat;
Iteratori pentru date;
Controlul erorilor prin tratarea de excepții.
La sfîrșitul lui 2007 doar versiunea 5.x mai era întreținută, deoarece în data de 13 iulie
2007 (exact la 3 ani după lansarea PHP5), PHP Group a anunțat că PHP4 va fi scos din uz pe 31
decembrie 2007, deși prognozează că anumite upgrade-uri de securitate se vor oferi pînă pe 8
august 2008. Dezvoltarea la PHP 6 începuse deja în decembrie 2007 și urmează să fie oferit
odată cu scoaterea din uz a PHP4.
PHP 6 are următoarea agendă de îmbunătățiri și modificări:
îmbunătățirea suportului pentru Unicode;
suport pentru int pe 64 biți;
taguri tip ASP sunt retrase definitive;
XMLReader, XMLWriter, Fileinfo vor face parte din distribuția principal;
funcția ereg() nu mai este disponibilă;
erorile tip E_STRICT sunt incluse în E_ALL;
adăugarea instrucțiunii goto permite salturi la un alt bloc de comenzi;
namespace, import, și goto devin cuvinte rezervate;
foreach va suporta array multi dimensional: foreach($a as $b => list($c, $d));
opțiunea safe_mode a fost înlăturată;
operatorul and a fost înlăturat;
funcția microtime() returnează un float;
zend.ze1_compatibility_mode a fost înlăturat.
PHP-ul este unul din cele mai folosite limbaje de programare server-side, conform unui
studiu efectuat de Netcraft în aprilie 2002, apărînd pe 9 din cele 37 milioane de domenii
cercetate în studiu. De asemenea, există un grafic al creșterii folosirii PHP-ului pe site-ul oficial.
Popularitatea de care se bucură acest limbaj de programare se datorează următoarelor
caracteristici:
- Familiaritatea: sintaxa limbajului este foarte ușoară combinînd sintaxele unora din cele
mai populare limbaje Perl sau C;
- Simplitatea: sintaxa limbajului este destul de liberă. Nu este nevoie de includere de
biblioteci sau de directive de compilare, codul PHP inclus într-un document executîndu-
se între marcajele speciale;
- Eficiența: PHP-ul se folosește de mecanisme de alocare a resurselor, foarte necesare unui
mediu multiutilizator, așa cum este web-ul;
- Securitate: PHP-ul pune la dispoziția programatorului un set flexibil și eficient de măsuri
de siguranță;
- Flexibilitate: fiind apărut din necesitatea dezvoltării web-ului, PHP a fost modularizat
pentru a ține pasul cu dezvoltarea diferitelor tehnologii. Nefiind legat de un anumit server
web, PHP-ul a fost integrat pentru numeroasele servere web existente: Apache, IIS, Zeus,
server, etc.;
- Gratuitate: este probabil cea mai importantă caracteristică a PHP-ului. Dezvoltarea
PHP-ului sub licența open-source a determinat adaptarea rapidă a PHP-ului la nevoile
web-ului, eficientizarea și securizarea codului.
PHP este simplu de utilizat, fiind un limbaj de programare structurat, ca și C-ul, Perl-ul
sau începînd de la versiunea 5 chiar Java, sintaxa limbajului fiind o combinație a celor trei.
Datorită modularității sale poate fi folosit și pentru a dezvolta aplicații de sine stătătorare, de
exemplu în combinație cu PHP-GTK sau poate fi folosit ca Perl sau Python în linia de comandă.
Probabil una din cele mai importante facilități ale limbajului este conlucrarea cu majoritatea
bazelor de date relaționale, de la MySQL și pînă la Oracle, trecînd prin MS Sql Server,
PostgreSQL, sau DB2.
PHP poate rula pe majoritatea sistemelor de operare, de la UNIX, Windows, sau Mac OS
X și poate interacționa cu majoritatea serverelor web. Codul PHP este interpretat de serverul
WEB și generează un cod HTML care va fi văzut de utilizator (clientului -browserului- fiindu-i
transmis numai cod HTML).
PHP foloseste extensii specifice pentru fișierele
sale: .php, .php3, .ph3, .php4, .inc, .phtml. Aceste fișiere sunt interpretate de catre serverul web
iar rezultatul este trimis în formă de text sau cod HTML către browser-ul clientului.
MySQL
MySQL este un sistem de gestiune a bazelor de date relaționale, produs de compania
suedeza MySQL AB și distribuit sub Licența Publică Generală GNU. Este cel mai popular
SGBD open-source la ora actuală, fiind o componentă cheie a stivei LAMP (Linux, Apache,
MySQL, PHP).
Deși este folosit foarte des împreună cu limbajul de programare PHP, cu MySQL se pot
construi aplicații în orice limbaj major. Există multe scheme API disponibile pentru MySQL ce
permit scrierea aplicațiilor în numeroase limbaje de programare pentru accesarea bazelor de date
MySQL, cum are fi: C, C++, C#, Java, Perl, PHP, Python, FreeBasic, etc., fiecare dintre acestea
folosind un tip specific API. O interfață de tip ODBC denumită MyODBC permite altor limbaje
de programare ce folosesc această interfață, să interacționeze cu bazele de date MySQL cum ar fi
ASP sau Visual Basic. În sprijinul acestor limbaje de programare, unele companii produc
componente de tip COM/COM+ sau .NET (pentru Windows) prin intermediul cărora
respectivele limbaje să poată folosi acest SGBD mult mai ușor decît prin intermediul sistemului
ODBC. Aceste componente pot fi gratuite (ca de exemplu MyVBQL) sau comerciale.
Licența GNU GPL nu permite încorporarea MySQL în softuri comerciale; cei care doresc
să facă acest lucru pot achiziționa, contra cost, o licență comercială de la compania producătoare,
MySQL AB.
MySQL este componentă integrată a platformelor LAMP sau WAMP (Linux/Windows-
Apache-MySQL-PHP/Perl/Python). Popularitatea sa ca aplicație web este strîns legată de cea a
PHP-ului care este adesea combinat cu MySQL și denumit Duo-ul Dinamic. În multe cărți de
specialitate este precizat faptul ca MySQL este mult mai ușor de invățat și folosit decît multe din
aplicațiile de gestiune a bazelor de date, ca exemplu comanda de ieșire fiind una simplă și
evidentă: „exit” sau „quit”.
Pentru a administra bazele de date MySQL se poate folosi modul linie de comandă sau,
prin descărcare de pe internet, o interfață grafică: MySQL Administrator și MySQL Query
Browser. Un alt instrument de management al acestor baze de date este aplicația gratuită, scrisă
în PHP, phpMyAdmin.
MySQL poate fi rulat pe multe dintre platformele software existente: AIX, FreeBSD,
GNU/Linux, Mac OS X, NetBSD, Solaris, SunOS, Windows 9x/NT/2000/XP/Vista.
Baze de date
O bază de date, uneori numită și bancă de date (abreviat BD), reprezintă o modalitate de
stocare a unor informații și date pe un suport extern (un dispozitiv de stocare), cu posibilitatea
extinderii ușoare și a regăsirii rapide a acestora. La prima vedere sarcina poate părea banală.
Totuși, în condițiile în care este vorba de a lucra cu milioane de elemente, fiecare putând consta
din mari cantități de date care trebuie accesate simultan prin Internet de către mii de utilizatori
răspândiți pe întreg globul; și în condițiile când disponibilitatea aplicației și datelor trebuie să fie
permanentă (de ex. pentru a nu pierde ocazia de a încheia afaceri), soluțiile bune nu sunt de loc
simple.
De obicei o bază de date este memorată într-unul sau mai multe fișiere. Bazele de date
sunt manipulate cu ajutorul sistemelor de gestiune a bazelor de date.
Cel mai răspândit tip de baze de date este cel relațional, în care datele sunt memorate în
tabele. Pe lânga tabele, o bază de date relațională mai poate conține: indecși, proceduri stocate,
declanșatori, utilizatori și grupuri de utilizatori, tipuri de date, mecanisme de securitate și de
gestiune a tranzacțiilor etc. Alte tipuri de baze de date sunt modelul ierarhic, modelul orientat pe
obiecte și, mai nou, modelul XML.
Baze de date importante:
Scientific and Technical Network;
Zentralblatt MATH;
MRLookup;
ABC-CLIO;
SPIRES;
ArXiv;
BDD;
Didactics of Mathematics;
Jahrbuch Database;
J-EAST;
Audiostreet;
Bazele de date ale proiectelor Wiki, inclusiv Wikipedia.
Sistemele de gestiune a bazelor de date (în engleză: "database management system"),
abreviat SGBD, reprezintă totalitatea programelor utilizate pentru crearea, interogarea și
întreținerea unei baze de date. Include două categorii de module: module care sunt comune cu
cele ale sistemelor de operare ale calculatoarelor și module cu funcții specifice bazei de date.
Subsistemele monitor conțin programele de control al perifericelor și sistemul de gestiune a
fișierelor. Subsistemele externe sunt alcătuite din procesorul de definiție și programul de
administrare. Alături de acestea există programe de descriere a bazei de date și cereri de
prelucrare.Între utilizator și sistem există două interfețe: definirea bazei de date și utilizarea bazei
de date. Definirea unei baze de date se execută sub controlul procesorului de definiție (PD),
capabil să prelucreze programe de descriere, formulate folosind limbaje specializate cunoscute
sub denumirea de limbaje de definiție a datelor (LDD).