vineri, 16 decembrie 2016

S12:

O aplicație web este un program care rulează într-o arhitectură client-server folosind tehnologiile deschise World Wide Web.
Ele înlocuiesc modelele în care atât serverul cât și clientul rulează tehnologii proprietar, mentenanța aplicațiilor de pe partea de client fiind prea complexă, costisitoare și susceptibilă la erori. În schimb, omniprezența browserelor web și comoditatea de a le folosi drept client conduce la eliminarea acestei mari probleme.
Astfel, au evoluat și pe partea de server serverele de aplicații, iar pe lângă limbajele de programare au apărut frameworkuri și tehnologii dedicate programării acestora.
Webul a apărut la început cu scopul de a distribui documente, inițial în cadrul său apărând protocolul HTTP și formatul HTML.
Prima dezvoltare în direcția folosirii unui server web a fost apariția CGI(en) la începutul anilor 1990. CGI permitea rularea unor scripturi pe server, care să genereze un răspuns dinamic în format HTML.
Pasul următor a fost transformarea acestor documente HTML în interfețe dinamice cu utilizatorul, prin crearea de către Netscape a limbajului JavaScript, care este dedicat scriptării comportamentului browserului și introducerea de elemente dinamice; tot în acea perioadă, Sun a asociat limbajului Java capabilitatea de a rula mici aplicații scrise în acest limbaj și denumite appleți într-un plugin al browserului, iar Macromedia a inventat Flash, o tehnologie ce făcea posibil același lucru. În ultimii ani ai secolului al XX-lea, funcționalitatea limbajului JavaScript a fost extinsă semnificativ prin introducerea API-ului XmlHttpRequest, prin care se putea programa efectuarea și procesarea răspunsurilor la mici cereri HTTP dintr-o pagină web, fără a reîncărca întreaga pagină. Inițial, datele acestor mici cereri erau transferate de la client la server predominant în format XML, ceea ce a dus la denumirea de AJAX (Advanced JavaScript And XML), deși ulterior, pe măsură ce limbajele de programare server-side au introdus suportul, a început să fie preferat standardul JSON (obiecte JavaScript serializate).
Pe partea de server, CGI a fost urmat de apariția specificației Java Servlet, inclusă apoi în Java Enterprise Edition, ceea ce a făcut ca Java să devină limbaj de programare dominant în cadrul aplicațiilor web pe partea de server. Alte limbaje de programare dedicate programării server-side au fost ASP (dezvoltat de Microsoft) și PHP (proiect open-source), și apoi Ruby.
Anii 2010 au adus o mult-așteptată extindere a standardului HTML, cu HTML5, care impune browserelor implementarea internă a multor funcționalități care până atunci fuseseră apanajul exclusiv al pluginurilor dezvoltate de terți, iar dezvoltarea explozivă a smartphone-urilor a dus mai întâi la o lipsă de browsere web cu funcționalități similare celor pentru calculatoare și deci la dezvoltarea de aplicații client dedicate fiecărei aplicații web.
Tehnologii Folosite in Web Design
Adobe Photoshop CS3
Este un program utilizat in prelucrari generale de imagini in format electronic, grafica pentru tipar, video si web.  Printre multe altele pune la dispozitie instrumente web pentru optimizarea si previzualizarea imaginilor dinamice sau statice, realizarea imaginilor rollover,  imagini care isi schimba aspectul la trecerea cu mouse-ul peste,  precum si pentru realizarea de GIF-uri animate.
Corel DRAW
Este un editor grafic vectorial precum Adobe Illustrator. Este utilizat de designerii de grafica si web design si a fost creat pentru a rula pe platforme Microsoft Windows.  Permite crearea imaginilor vectoriale si nu numai.
Tehnologii Folosite in Dezvoltarea Aplicatiilor Web
In dezvoltarea paginilor si a aplicatiilor web  folosim cele mai frecvent utilizate tehnologii  in acest domeniul: PHP & MySQL si ASP .NET. Alegerea tehnologiei folosite se face in functie de complexitatea aplicatiei si de preferintele clientului.
PHP & MySQL
PHP este un limbaj de programare web server-side, ceea ce inseamna ca ruleaza pe un server,  permitand dezvoltatorilor web sa creeze site-uri dinamice si aplicatii web-based software ce interactioneaza cu utilizatorii si baze de date.  In utilizarea  acestui limbaj cel mai comun si mai des folosit server este Serverul Apache.  Pentru stocarea datelor in baze de date folosim MySQL  care este cel mai des utilizat server de baze de date open source. Se caracterizeaza prin  flexibilitate, stabilitate, fiabilitate si viteza in prelucrarea datelor stocate. MySQL foloseste Structured Query Language (SQL), limbajul  cel mai frecvent folosit pentru adaugarea, accesarea si prelucrarea datelor in bazele de date.
ASP.NET
ASP.NET este un framework dezvoltat si comercializat de Microsoft pentru a permite dezvoltatorilor web sa construiasca pagini web dinamice si interactive, aplicatii si servicii web. ASP.NET este construit pe limbajul comun Runtime (CLR), care permite dezvoltatorilor sa scrie cod ASP.NET folosind orice limbaj acceptat .NET.  Aceasta tehnologie  este o tehnologie puternica ce permite dezvoltatorilor sa dezvolte aplicatii web care sa lucreze cu baze de date,  fiind deseori utilizata in aplicatii complexe si de mare amploare.  Fiind o tehnologie Microsoft se caracterizeaza prin rapiditatea cu care se dezvolta precum si prin viteza  prin care paginile web se incarca in browser.  Aceasta din urma se datoreaza faptului ca este un limbaj in care codul este compilat in "limbajul masina" inainte ca utilizatorul sa ajunga in pagina web.
Ambele tehnologii detaliate mai sus interactioneaza in dezvoltarea aplicatiilor web si procesul de creare site-uri cu alte limbaje precum:  Html, Css,  XML, JavaScript, Ajax, jQuery, Flash, ActionScript.
Html
Denumirea vine de la HyperText Markup Language si se defineste ca fiind un limbaj de formatare si structurare a documentelor  web utilizand o varietate de etichete si atribute. 
Css
Cascading Style Sheets (CSS) este un limbaj „style sheet” folosit pentru a descrie aspectul si formatarea unui document scris intr-un limbaj markup.  Aplicarea sa cea mai comuna este in paginile web scrise in HTML si XHTML, insa poate fi aplicat la orice tip de document XML.
XML
Acest limbaj  a fost conceput pentru a inlocui limbajul HTML, care a fost considerat prea limitat in elemente si atribute. XML  este tot mai mult folosit pentru schimbul de date si configurarea lor.  Cea mai des folosita forma a XML-urilor in interactiunea cu utilizatorul este crearea  RSS feed-urilor pentru aplicatiile web dezvoltate.
JavaScript
JavaScript este un limbaj de programare creat de Netscape, serveste la dezvoltarea aplicatiilor web si de cele mai multe ori ruleaza ca o aplicatie client-side care ruleaza intr-un browser web.
Dezvoltatorii web utilizeaza  JavaScript in site-uri si aplicatii web pentru a efectua sarcini suplimentare pe care limbajul HTML nu le poate efectua. De exemplu poate efectua meniuri interactive sau poate detecta intrarile de la tastatura a utilizatorilor. Si pentru ca este un limbaj client-side, functiile JavaScript si calculele se  executa repede, deoarece  informatiile nu trebuie sa navigheze pe Internet.
Desi au denumire similara JavaScript si limbajul de programare Java au foarte  putine elemente  in comun.
Ajax si jQuery
AJAX se defineste ca fiind o grupare de tehnici de dezvoltare web care accesorizeaza limbajul
JavaScript si care permite paginilor web sa fie mai interactive si sa se comporte ca aplicatii locale (client-side).  Altfel spus,  AJAX permite unei pagini web preluarea de date de pe server fara a reincarca toata pagina.
JQuery este o librarie JavaScript opensource, utilizata de dezvoltatorii web pentru a efectua interactiuni Ajax in paginile web.
Flash
Flash -ul este o tehnologie multimedia care permite dezvoltatorilor web sa includa animatii simple si complexe precum si continut interactiv in site-urile si aplicatiile pe care le dezvolta. O animatie in format de fisier Flash utilizeaza extensia .swf. Flash-urile pot contine deasemenea  sunete si video. Un web site poate folosi partial fisiere flash integrate in continutul html al paginilor sale sau poate fi realizat in totalitate in flash.
ActionScript
ActionScript este limbajul de programare care este folosit in Adobe Flash si care este utilizat in principal pentru  controlul Movie Clips, butoane, text, sunete si video in Flash.  Este asemanator cu limbajul JavaScript amintit mai sus si este folosit in realizarea flash-urilor dinamice, complexe care necesita mai mult decat o simpla animatie.
Tehnologii Folosite in Dezvoltare Software (Aplicatii Desktop)
C#
C# este un limbaj de programare simplu, modern, orientat pe obiecte, compatibil cu platforma Microsoft .NET. Sintaxa acestuia este similara cu cea a limbajelor  C, C++, insa, spre deosebire de acestea, limbajul C# simplifica mult scrierea de programe pentru sistemul de operare Windows.  C# furnizeaza gestiune automata de memorie, lucru pe care C si C++ nu il fac.
WPF
WPF (Windows Presentation Foundation)  reprezinta un limbaj ce permite realizarea de interfete grafice avansate pentru aplicatiile Windows. Initial a fost lansat ca parte integranta din .NET 3.0 si este construit direct pe platforma Direct X, care furnizeaza accelerare hardware si efecte grafice moderne: transparente, gradienti, transformari. WPF furnizeaza un model de programare consistent, care separa interfata grafica de logica de programare.
WCF
WCF reprezinta ultima platforma lansata de Microsoft, ce permite unei aplicatii sa expuna servicii care pot fi consumate de alte aplicatii. WCF reprezinta un limbaj de programare unificat, care combina cele mai avansate functionalitati ale Serviciilor Web XML, .NET Remoting, MSMQ si COM+. Datorita acestui aspect, WCF asigura interoperabilitate intre servicii.
Silverlight
Silverlight  furnizeaza platforma necesara pentru a realiza aplicatii media de inalta calitate pentru web. Aceasta ruleaza pe majoritatea browser-elor existente: Internet Explorer, Mozilla Firefox, Apple Safari, Opera. Pentru a putea rula in browser o aplicatie Silverlight este necesara instalarea plugin-ului de Silverlight, lucru care este realizat destul de rapid, data fiind dimensiunea mica a acestuia.