De programare web este de programare de calculator , care permite editarea de site - uri web . Permite crearea de aplicații, destinate a fi implementate pe Internet sau în Intranet . Aceste aplicații web constau din pagini web care pot lua diferite forme, cum ar fi:
Pentru un utilizator de Internet care folosește o adresă URL , pagina web corespunzătoare, fie ea statică sau dinamică, constă din cod „partea clientului” ( HTML , CSS , Javascript etc.) care este interpretat de browserul său ( Google Chrome , Firefox ,. ..) producerea unei interfețe cu utilizatorul . Acest cod, care este returnat de un server web , poate sau nu a fost generat prin calculul „partea serverului”, prin anumite limbaje de programare, care pot apela la baze de date , API-uri etc.
Există diferite tehnologii și diferite limbi care permit site - uri web prin intermediul construi servere de web , prin urmare , care pot fi clasificate în funcție de două principii: programare limbi pe client parte , sau pe serverul parte . Această distincție este făcută pentru a separa limbile „partea serverului” al căror cod este executat pe serverul web înainte de a ajunge în browserul utilizatorului, de limbile „partea clientului” a căror execuție nu necesită calcul pe web. dar, numai după descărcarea paginii, o interpretare de către browserul utilizatorului.
Atunci când un vizitator solicită o pagină tastând o adresă sau o adresă URL , serverul web trimite înapoi conținutul paginii solicitate, cel mai adesea în HTML , Javascript sau XML .
Apoi, browserul web interpretează conținutul returnat, utilizând sau nu pluginuri, care interpretează anumite obiecte.
Programarea „partea clientului” (sau dezvoltare web front-end ) constă în producerea de cod (HTML, CSS , Javascript, ...) care va fi interpretat de un browser web (sau o fereastră, pentru software desktop sau aplicații mobile) și va fi produce o redare vizuală: o interfață cu utilizatorul ( UI ) și anumite elemente din care va permite navigarea, link-uri, cu alte pagini ( UX ).
Orice pagină web include o bază de limbaj HTML sau XHTML . Este un limbaj de marcare care definește practic structura paginii web (titluri, tabele, paragrafe, liste etc.).
Inițial, este un limbaj care permite crearea de hyperlinkuri , și anume legături dintr-un document în altul sau dintr-un loc dintr-un document în alt loc din același document ( identificator de fragment ).
Acest limbaj a definit inițial doar structura paginii, dar foarte rapid au fost adăugate balize (sau etichete ) care s-au ocupat de specificarea caracteristicilor paginii web (ierarhizarea conținutului, atribute date etichetelor etc.).
De la versiunea 4, HTML a fost însoțit de CSS, care sunt stiluri care se ocupă de formatarea și animația paginii.
XHTML este o evoluție a HTML bazată pe XML .
Inserarea obiectelor în HTMLPentru a face o pagină web mai dinamică în HTML, este posibil să inserați obiecte, folosind, de exemplu, etichetele <object>, <img>, <applet> sau <script>.
PozeUn prim tip de obiect sunt imaginile care sunt integrate în pagina web. Imaginile sunt, în general, statice, cu excepția gifurilor animate .
Portabilitate În măsura în care ne limităm la formate de fișiere standard pentru web (.gif, .jpg sau. Jpeg și. Png ), imaginile sunt, fără îndoială, unul dintre cele mai multiplate obiecte de pe web: majoritatea browserelor web pot afișa imagini. Configurare Imaginile digitale devin un mediu foarte „larg public” și sunt destul de ușor de implementat într-un site web folosind eticheta img. MultimediaIntegrarea documentelor multimedia ( sunet sau video ).
Configurare Odată ce fișierul audio sau video a fost produs, plasarea în pagina HTML poate fi realizată, în HTML5 , prin etichete <audio> sau <video>. Performanţă Fișierele multimedia sunt adesea grele și, prin urmare, durează mult timp pentru descărcare. Acestea pot reduce performanța (timpul de încărcare) al paginii web. Cu toate acestea, există tehnologii care permit redarea în flux . Până la începutul anilor 2010Animație flash
Flash ( de la Adobe Systems - Macromedia ) este un program care vă permite să creați animații într - un relativ ușor de proprietate vector format . Programul generează un fișier cu extensia .fla care este fișierul de lucru și care va fi „compilat” într-un fișier cu extensia .swf. Swift este un alt program care generează fișiere swf în afara sferei Macromedia .
Într-o pagină web, o animație Flash (fișier cu extensia .swf) poate fi integrată ca parte a paginii (o reclamă, un meniu, ...) sau întreaga pagină poate fi în flash, dar va exista întotdeauna un schelet HTML .
Flash permite crearea de animații de calitate, permite o anumită interacțiune cu utilizatorul datorită limbajului de programare ActionScript (derivat din ECMAScript ca JavaScript ). Cele mai recente versiuni ale Flash permit, de asemenea, interfața cu o bază de date.
Adobe Flash Player va fi întrerupt oficial în decembrie 2020, precum și asistența sa în browserele web.
Applet Java (applet)
De asemenea, este posibil să creați programe mici cu interfață într-un limbaj de programare precum Java . Aceste programe mici se numesc applet-uri sau applet-uri . Sunt complet autonome, dar posibil configurabile și pot fi integrate într-o pagină web. Acestea sunt descărcate cu pagina web și executate de computerul client.
Codul este independent de platformă datorită mașinii virtuale Java .
ActiveX
ActiveX este o soluție de creare a aplicațiilor dezvoltată de Microsoft . Principiile de lucru sunt foarte asemănătoare cu modul în care funcționează applet-urile. Vezi și Modelul obiectelor componente
Limitări ale HTMLO pagină web creată în HTML este complet statică și oferă puține posibilități de interacțiune cu vizitatorul. Fiecare pagină trebuie creată în prealabil și trebuie actualizată manual.
HTML este multiplataforma. Toate browserele web recunosc limbajul HTML de bază, doar anumite etichete sau atribute sunt specifice anumitor browsere. CSS, chiar dacă sunt standardizate de W3C , nu sunt întotdeauna recunoscute în același mod de diferite browsere web.
ConfigurareHTML are avantajul de a fi ușor de configurat și nu necesită abilități tehnice foarte avansate. Paginile sale sunt prelucrate foarte ușor și rapid de către server.
XML ( limbaj de marcare extins )Limbaj de marcare XML poate fi , de asemenea , baza pentru o pagină web. Fișierul XML va conține conținutul paginii web.
Acest fișier poate fi legat de un fișier XSL (Foi de stil XML) care va formata datele din fișierul XML.
De cele mai multe ori, pagina web nu se va baza pe un fișier XML nativ, dar va fi generată dinamic de unul dintre limbajele de programare web de mai jos.
CSS (foi de stil în cascadă) este un limbaj de programare pentru formatarea unei pagini web. HTML și CSS sunt complementare.
Programarea din partea clientului utilizează limbaje de scriptare. Spre deosebire de limbajele de programare de pe server, aceste limbaje nu sunt compilate. Acestea sunt interpretate de browserul web al vizitatorului.
Limbajele scriptului sunt utilizate inițial în cazul validării formularului (câmpuri obligatorii, calcule mici etc.) și la crearea animațiilor pe browserul utilizatorului (meniuri derulante, reîmprospătarea conținutului fără reîncărcarea paginii, ... ). Cu toate acestea, astăzi permit mult mai multe lucruri de făcut, cum ar fi crearea de jocuri video (API Canvas), crearea de medii sonore (API Web Audio), comunicare în timp real (API RTC) etc.
De la mijlocul anilor 2010, programarea script-ului a devenit foarte obișnuită pentru dezvoltarea de aplicații web complete odată cu sosirea platformelor software și a cadrelor open-source bazate pe JavaScript , bine documentate și recomandate pe scară largă de comunitatea dezvoltatorilor, cum ar fi Node.js program , dar și cadrele și bibliotecile Vue.js (independent), ReactJS (Facebook) sau AngularJS (Google).
Din punct de vedere istoric, există mai multe limbaje de scriptare:
Când un vizitator solicită (sau solicită ) încărcarea unei adrese URL în browserul său, un apel (cel mai adesea prin HTTP sau HTTPS ) se efectuează pe serverul web care găzduiește site-ul corespunzător. Serverul web va identifica apoi scriptul (scripturile) (scrise într-o limbă „partea serverului”) corespunzătoare acestei adrese URL și va solicita executarea acestora. Executarea va avea ca rezultat conținut HTML, care va fi apoi trimis ca răspuns către vizitator, citibil de browserul său.
Prin urmare, programarea „partea serverului” constă în producerea unui cod a cărui executare, calcul și recuperare a datelor externe ( baze de date , API etc.) va avea ca rezultat conținut care va fi trimis clientului. Acest conținut poate fi cod „partea clientului”.
Este posibil să configurați un server web utilizând programul Node.js , expunând adresele URL, în special prin Express.js , unui proiect de cod dezvoltat în Javascript.
PHPPHP ( PHP: Hypertext Preprocessor ) este un limbaj de script interpretat pe partea serverului. Codul PHP este citit de server și interpretat pentru a produce o pagină HTML (sau alte tipuri de fișiere precum imagini sau documente PDF) de fiecare dată când pagina este solicitată. Acest limbaj a fost creat inițial ca parte a software-ului Open Source . Mulți dezvoltatori au profitat de Open Source pentru a dezvolta numeroase module gata de utilizare care ar putea fi configurate după bunul plac.
Modulele de server PHP sunt implementate pe serverele Apache și Unix, dar PHP poate fi implementat pe alte platforme prin CGI.
Sintaxa este relativ simplu, dintr - o bază de C .
Cadruri notabile: Symfony , Laravel
PitonDjango : cadru open-source utilizat pe scară largă pentru construirea și implementarea unei aplicații de pe server în Python .
RubinRuby on Rails : cadru open-source utilizat pe scară largă pentru construirea și implementarea unei aplicații de pe server în Ruby .
JavaEste posibil să se dezvolte un site web „partea serverului” în C ++, în special cu cadre precum Wt sau CppCMS de exemplu.
Tehnologii MicrosoftColdFusion este o tehnologie dinamică de creare a paginilor dezvoltată de Macromedia . Paginile aplicației sunt pagini web care conțin instrucțiuni de programare scrise utilizând un limbaj propriu, CFML ( ColdFusion Markup Language ). CFML este un limbaj simplu bazat pe etichete a căror sintaxă este similară cu cea a HTML, dar interpretată de server.
Fiecare dintre aceste limbi, pentru a face posibilă crearea de pagini al căror conținut și date sunt construite dinamic în funcție de utilizarea utilizatorilor sau a altor parametri externi, pot apela la una sau mai multe baze de date .
Există mai multe tipuri: dBase, filePro, Firebird / InterBase, FrontBase, IBM DB2, Cloudscape, Informix, Ingres, EDBC, Enterprise Access, Mssql, MySQL , PostgreSQL , SQLite, SQLite3, SQLSRV, Sybase.
Ajax ( Asynchronous JavaScript And XML ) este o tehnologie, cu avantajele și dezavantajele sale, care combină mai multe elemente:
Această tehnologie face posibilă efectuarea unei cereri HTTP asincrone (în paralel) de la un client la serverul web (efectuați o acțiune, actualizați informații etc.). Serverul returnează resursa solicitată, care poate conține informații sau cod pentru a actualiza pagina HTML.