Aplicatie Web Pentru Oportunitati de Angajare Si Recrutare
CUPRINS
INTRODUCERE ÎN APLICAȚIILE WEB
O aplicație web este o colecție de pagini interconectate, care are scopul de a oferi utilizatorilor o anumită funcționalitate. Aceasta rulează într-un browser web care interpretează codul limbajului de programare utilizat și suportat .
Aplicațiile web sunt foarte populare deoarece implică prezența browser-elor web, care sunt omniprezente, dar și datorită avantajului că un browser web este și client. Un alt secret al popularității lor este capacitatea de actualizare și mentenanță fără necesitatea distribuirii și instalării de software pe mii de calculatoare client.
Istoric
Inițial, Web-ul era o simplă colecție de pagini statice, documente, etc. care puteau fi consultate sau descărcate.
Următorul pas in evoluția sa a fost includerea unei metode pentru a permite dinamismul conținutului afișat in paginile web, generat sau calculat la cererea datelor. Această metodă era cunoscută ca CGI (Common Gateway Interface) și definea un mecanism prin care puteau fi transmise informațiile între server-ul HTTP și programele externe. CGI-urile sunt înca utilizate la scară largă deoarece sunt simple și suportate de cele mai multe servere web. De asemenea, oferă libertatea de a alege limbajul de programare în care se dezvoltă.
Schema operațională a CGI-urilor avea un punct slab: de fiecare dată când primea o solicitare, server-ul web lansa un proces de rulare a programului CGI. În plus, deoarece cele mai multe CGI-uri erau scrise într-un limbaj interpretat (ex. PERL, Python) sau într-un limbaj care necesita un mediu run-time (ex. VisualBasic, Java), mașina server avea o sarcină grea dacă web-ul avea mai multe accesări CGI.
Astfel, au început sa se dezvolte alternative la CGI pentru a rezolva această problemă serioasă de performanță. Au fost concepute doua soluții principale. În primul rând, sistemele au fost concepute pentru a executa module care erau mai integrate cu server-ul așa încât să se prevină instanțierea și executarea unor multitudini de programe. Cea de-a doua soluție a fost să se doteze server-ul cu un interpretor de limbaje de programare ( RXML, PHP, VBScript), permițând includerea paginilor în cod pentru ca server-ul să le poată executa, astfel reducând timpul de răspuns.
Toate aplicațiile web foloseau una dintre soluțiile de mai sus, dar cele mai comune și răspândite erau cele care le combinau, adică un limbaj de programare integrat care permite server-ului să interpreteze comenzi din paginile HTML și un sistem pentru executarea programelor mai strâns legată de server, care nu are problemele de performanță ale CGI.
Există mai multe implementări populare de scripting, mai mult sau mai puțin folosite și în ziua de azi:
PERL – era un limbaj foarte utilizat pentru web și este mai este folosit chiar și in zilele noastre de catre unele site-uri;
Python – un limbaj de programare care încă este foarte popular;
PHP – limbaj de programare orientat-web care, la început, era un script Perl CGI. Este poate cel mai utilizat limbaj de script-ing din lume, cu peste 19 milioane de domenii pe internet, găzduite pe servere cu PHP instalat;
ASP – un protocol teoretic generic creat de Microsoft pentru a conține și a rula limbaje de script-ing in paginile HTML;
ColdFusion – este un framework creat de Adobe și încă are un număr mare de utilizatori; potrivit Adobe, 75 din cele 100 de companii Fortune folosesc ColdFusion;
ASP și ASP.NET – sunt framework-uri pentru pagini web dinamice create de Microsoft. ASP.NET se folosește, de obicei, împreună cu Visual Basic și C# ;
JSP – controlează conținuturile paginilor web prin intermediul servlet-urilor, mici programe specificate în conținutul paginilor web , care ruleaza pe serverul web pentru a modifica pagina înainte de a fi trimisă la utilizatorul care a solicitat-o; este în competiție cu ASP.
Ruby on Rails – este un framework complet contruit în jurul limbajului de script-ing Ruby . Ruby on Rails a fost adoptat altor limbaje cu versiuni framework, cum sunt Django (Python) , CakePHP (PHP), Symfony (PHP) și multe altele.
Caracteristici ale utilizabilității
Scopul fundamental al tuturor aplicațiilor web este de a facilita finalizarea uneia sau a mai multor sarcini. Spre deosebire de vizitatorii site-urilor tradiționale, utilizatorii de aplicații web invariabil au obiective specifice, sarcini și anumite așteptări în minte. Fiecare caracteristică a aplicației web poate reprezenta un spectru de posibilități cu diferite efecte asupra utilității.
Există trei factori comuni care afectează utilitatea sistemului interactiv: utilizatorii, sarcinile, tehnologia și contextul.
Utilizatorii
Părțile interesate de o aplicație web pot fi clasificate după utilizatorii afectați de interfața web: utilizatori primari, utilizatori secundari, comunități de utilizatori, utilizatori în calitate de cumpărători și utilizatori surogat.
Utilizatorii primari a unei aplicații web pot fi examinați in funcție de competența lor care se va schimba de-a lungul timpului: începători, intermediari și experți. Această competență poate fi examinată din trei perspective: cunoștințe despre subiect, aptitudini de utilizare a calculatorului si experiența cu aplicațiile web. Dacă începătorii reprezintă o categorie importantă de utilizatori pentru aplicație, atunci ușurința de utilizare va fi un factor important în dezvoltarea sa, în timp ce un expert poate pune mai mult accent pe utilizarea eficientă.
Loialitatea utilizatorilor la o aplicație web este o importantă caracteristică. Spectrul de bază a loialității este discreționară sau obligatorie.
Accesibilitatea este o alta caracteristică importantă a unei aplicații web. Accesibilitatea se concentrează și pe oameni cu dizabilități. O aplicație web trebuie să ia în calcul tehnologii de asistare și respectare a conținutului web privind accesibilitatea. Această caracteristică poate avea efect și asupra altor caracteristici , ca de exemplu impactul stilurilor de interacțiune și suport pentru diferite dispozitive de intrare și afișare.
Estetica unei interfețe web poate avea un impact asupra acceptării utilizatorului. Urmatoarele măsuri sunt cele care au impact asupra esteticii: echilibru, simetrie, secvență, coeziune, unitate, proporție, simplitate, densitate,regularitate, economie, omogenitate și ritm.
Sarcinile
Deshpande a propus urmatoarea taxonomie de categorii a aplicațiilor web: informațional, interactiv, tranzacțional, flux de lucru, medii de lucru colaborative, comunități online, portaluri web, servicii web. Aplicațiile de tip tranzacțional sunt frecvent întâlnite în aplicații e-commerce și pot fi împărțite în: tip de tranzacție, tipul site-ului, tip de furnizor si tip de produs.
Stilurile de interacțiune care pot fi implementate pe o aplicație web sunt constrânse de aspectele tehnologice. Acestea oferă diferite niveluri de utilizare și sprijină diferite tipuri de utilizatori. Caracteristicile design-ului interfeței pot fi reprezentate de:
structură – descrie organizarea informațiilor prezentate de aplicația web;
navigare – permite explorarea spațiului informațional prezentat;
prezentarea – descrie stilurile interacționale folosite pentru prezentarea informațiilor și comportamenutl aplicației web.
Tehnologia
Tehnologiile utilizate pentru implementarea aplicațiilor dau gradul de utilizabilitate, prin arhitectura dezvoltată cu acestea. Dezvoltarea de aplicații web se poate realiza pentru intranet sau pentru rețele de internet. Arhitectura poate fi tailor-made sau ready-made și este implementată sau configurată in-house sau outsourced . Aceasta caracteristică a aplicației poate avea impact asupra ușurinței prin care aplicația poate satisface dinamic nevoile deținătorului site-ului și vizitatorilor săi.
Mediul web oferă diverse carateristici care au impact asupra utilizabilității aplicației web. Variabilele de sistem sunt o caracteristică ce include afișajul vizual, capacitățile dispozitivului, limitări de dispozitive de intrare și viteze de transmisie pe internet. Dispozitivele variate utilizate pentru accesarea unei aplicații web pot solicita luarea in calcul a mai multor proprietăți legate de utilizabilitate. Spre exemplu, un dispozitiv cu ecran mic, cum este telefonul mobil, are probleme la scroll când accesează o aplicație web , în comparație cu un laptop.
Caracteristicile tehnologice au un efect mai mare asupra utilizabilității aplicațiilor web decât asupra aplicațiilor tradiționale. Arhitectura unei aplicații web poate fi mai distribuită și bazată pe o mulțime diversă de tehnologii. Variabilele de proprietate și de sistem necesită o atenție suplimentară când se stabilește utilizabilitatea aplicației web din cauza diversității dispozitivelor existente pe piață.
Contextul
O clasificare industrială este o caracteristică a aplicațiilor web care evidențiază nevoia specială a unei industrii relaționată cu utilizabilitatea. De exemplu, industria finanțelor necesită o mai mare concentrare pe securitate, în timp ce aplicațiile web guvernamentale necesită o mai mare concentrare pe accesibilitate.
Proprietățile contextuale a unui utilizator care interacționează cu o aplicație web poate varia de la aplicație la aplicație. Contextul de utilizator permite identificarea și personalizarea. Conceptul de locație surprinde informații despre locație care pot spori contextul aplicației web . Conceptul de timp este reprezentat de un server web , care poate avea timp de inchidere sau deschidere sau poate fi legat de un calendar sau orar.
Proprietățile contextuale, de personalizare și clasificarea industrială evidențiază caracteristicile unei aplicații web care permite mediului să fie adaptat la părțile interesate, așa încât sarcinile și tehnologiile să sprijine acțiunile. Aceste caracteristici contextuale vor permite o mai bună concentrare asupra atributelor de utilizabilitate.
INTRODUCERE ÎN .NET
.NET este un framework software dezvoltat de Microsoft care include o librărie vastă de clase, numite Framework Class Library (FCL), și oferă interoperabilitate între mai multe limbaje. Framework-ul .NET se execută intr-un mediu software, numit Common Language Runtime, care este o aplicație pe mașină virtuală ce oferă anumite servicii cum sunt tratarea excepțiilor sau securitatea. Împreună, FCL și CLR formează Framework-ul .NET .
.NET are urmatoarele caracteristici:
Este o patformă pentru dezvoltatorii de aplicații;
Consă într-o bibliotecă imensă de coduri;
Are IDE (Integrated Development Environment);
Este un framework ce suporta integrare Multiple Language și Cross Language;
Furnizează interoperabilitate între limbaje, i.e. Common Type System (CTS);
Este o platformă independentă, dar cu ajutorul Mono Compilation System(MCS); MCS este o interfață de nivel mediu;
.NET adună la un loc mai multe tehnologii , cum sunt ASP, XML, SOAP, OOP etc, și limbaje de programare (exemple mai sus) și asigură în același timp portabilitatea codului compilat între calculatoare având sistemul de operare Windows și reutilizarea codului, indiferent de limbajul folosit.
Dezvoltarea aplicațiilor .NET presupune, în principiu, trei elemente esențiale:
Limbaje de programare ( VB, C#, .NET, Fortran etc.)
Medii de dezvoltare (Visio, Visual Studio .NET)
Bibliotecă de clase a crea aplicații web, servicii web și aplicații desktop Windows.
Arhitectura .NET
Fig 1. Arhitectura .NET
Framework Class Library
FCL oferă interfața user-ului, conectivitatea la baza de date, accesul la date, dezvoltarea aplicației web, criptografia, algoritmi numerici și comunicări în rețea. Programatorii combină propriul cod sursă cu .NET Framework si alte librării.
FCL este conceput pentru a oferi servicii similare cu application programming interface (API), care aparține de Windows și era utilizat înainte ca .NET să fie creat. FCL are propriul cod de bază gestionat, este orientat-obiect și ușor de folosit, în timp ce Windows API nu e gestionat, este modular și greu de folosit.
.NET FCL este integrat cu CLR , care gestionează execuția codului. Clasele sale urmează modelul obiectului și sunt bazate pe o singură moștenire.
Clasele si interfețele sunt grupate în namespace – uri pentru a fi accesate mai ușor. Acestea sunt o ierarhie a tipurilor definite formate de un grup logic de clase și interfețe relaționate ce pot fi folosite de orice limbaj din cadrul .NET . Acestea se regăsesc în ansambluri, unități dislocabile ce conțin detalii despre clase, interfețe și structuri. Prima parte pană la primul punct din numele complet indică namespace- ul , iar în ultima parte se specifică numele tipului. În acest fel se evită conflictele de nume care pot avea loc dacă două clase au același nume. De exemplu, System este namespace-ul rădăcină pentru tipurile fundamentale din framework-ul .NET, iar Object este rădăcină petru toate obiectele.
FCL este asemănător cu Java Foundation Classes. Principala provocare în utilizarea FCL este de a ști clasa specifică ce poate oferi funcționalitatea cerută.
Common Language Runtime
CLR este parte din .NET Framework și gestionează execuția programelor scrise în oricare din limbajeele suportate, permițându-le să partajeze clase obiect-orientate comune. Codul dezvoltat cu un compilator de limbaj ce vizează execuția (runtime) se numește cod gestionat. Pentru ca execuția să ofere servicii codului gestionat, compilatoarele de limbaj trebuie să emită metadate ce descriu tipurile, membrii și referințe în cod. Metadatele sunt stocate cu codul; fiecare fișier executabil, portabil CLR conține metadate. La execuție se folosesc metadate pentru localizarea și încărcarea claselor,stabilirea instanțelor în memorie, rezolvarea invocărilor de metode, pentru generearea codului nativ, aplicarea securității și stabilirea limitelor de context run-time.
Common Language Runtime ușurează proiectarea componentelor și aplicațiilor cu ale căror obiecte interacționează. Obiecte scrise în limbaje diferite pot comunica între ele și comportamentele lor pot fi strâns integrate. Spre exemplu, se poate defini o clasă, după care o altă clasă scrisă într-un limbaj diferit o poate moșteni pe cea inițială sau poate apela metode din aceasta. De asemenea, este posibilă transmiterea instanței unei clase unei metode aparținând unei alte clase scrise într-un limbaj diferit. Aceste lucruri sunt realizabile deoarece compilatoarele de limbaj și instrumentele care vizează execuția folosesc un sistem de tipuri comuni definit de runtime și urmăresc regulile de execuție pentru definirea noilor tipuri, la fel și pentru creare, utilizare etc.
Făcând parte din metadatele lor, toate componentele gestionate rețin informații despre componentele și resursele împotriva cărora au fost construite să lupte. Runtime-ul folosește aceste informații pentru a se asigura că aplicația sau componenta are versiunea specificată și tot ce mai are nevoie, ceea ce face mai puțin probabil să nu meargă codul din cauza unor dependențe netratate. Informațiile de înregistrare și datele nu mai sunt stocate într-un registru unde pot fi dificil de stabilit și menține. În schimb, informațiile despre tipurile definite sunt sunt stocate cu codul ca metadate astfel sarcinile de replicare a componentelor sunt mult mai puțin complicat.
Runtime oferă următoarele beneficii:
Posibilitatea de a folosi cu ușurință componente dezvoltate în alte limbaje;
Caracteristici ale limbajului, cum sunt interfețele, moștenirea și supraîncărcarea pentru programarea orientată pe obiecte;
Suport pentru tratarea excepțiilor;
Suport pentru atribute personalizate;
Suport pentru threading care permite crearea de aplicații multithread, scalabile;
Îmbunătățiri de performanță;
Garbage collection;
Tipuri extensive furnizate de o bibliotecă de clasă;
Utilizarea delegărilor în locul pointer-ilor pentru creșterea siguranței tipului și securității.
Common Language Infrastructure (CLI)
Common Language Infrastructure face parte din strategia .NET și permite unei aplicații scrise în oricare din limbajele de programare comune să fie rulate pe orice sistem de operare utilizând un pprogram de execuție comun în loc de un limbaj specific. CLR oferă un mediu de execuție virtual comparabil cu cel oferit de Sun Microsystems pentru programele Java. În ambele medii, CLI și Java folosesc un compilator pentru a procesa codul sursă într-o formă preliminară de cod executabil, numit bytecode. Apoi, când un program este rulat, bycode-ul său este compilat în codul nativ cerut de arhitectura mașinii unui calculator. Common Language Infrastructure a fost acceptat ca standard deschis de organizația internațională pentru promovarea standardelor tehnologice, numită ECMA.
CLI este proiectat pentru a face mai ușoară dezvoltarea programelor care pot fi folosite ca servicii Web.
Common Language Infrastructure specifică:
O mulțime comună de tipuri de date suportate de orice limbaj – Common Type System (CTS)
Un limbaj comun – Common Language Specification (CLS)
O introducere în structura componentelor
Cum sunt tratate excepțiile
Cum este administrată starea mașinii.
Orice limbaj de programare care îndeplinește criteriile CLI poate accesa librăria de clase comună și poate fi compilat într-un limbaj comun intermediar. Odată compilat în limbajul comun compilat, orice program poate fi complilat mai departe în codul mașină înteles de sistemul specific pe care rulează.
În cadrul Common Language Infrastructure există o componentă numită Common Type System (CTS) care definește tipurile de programare și operațiile suportate de motorul de execuție .NET . O subgrup al CTS, Common Language Specification (CLS) , determină dacă o cerere este în conformitate cu criteriile specificate.
Programele Common Language Infrastructure pot fi scrise în mai multe limbaje de programare, inclusiv C++, C#. Pentru a rula pe CLI, programele trebuie să fie compilate în cadrul Common Intermediate Language. La execuție, un compilator Just-in-time (JIT) transformă codul CIL în cod mașină. Pentru îmbunătățirea performanței, .NET vine cu Native Image Generator(NGEN) care efectuează compilarea ahead-of-time.
Jit Compiler
2.1.Caracteristici ale limbajului ASP.NET
ASP.NET este un framework web open source creat de Microsoft, utilizat pentru dezvoltarea web, în vederea obținerii de site-uri, aplicații și servicii web dinamice, fiind succesorul limbajului ASP (Active Server Pages), aparținând tot de Microsoft. ASP.NET este construit CLR (Common Language Runtime), permițând astfel programatorilor să scrie cod ASP.NET folosind orice limbaj suportat de .NET . În plus, CLR se ocupă și de gestionarea automată a memoriei.
ASP.NET este o platforma de dezvoltare ce oferă un model de programare, o infrastructură software cuprinzătoare și diverse servicii pentru a construi aplicații web ample, atât pentru PC-uri, cât și pentrru dispozitive mobile. ASP.NET utilizează comenzile și politicile HTTP pentru a stabili o comunicație și cooperare browser-server bilaterală.
Aplicațiile ASP.NET sunt coduri compilate, scrise folosind componente extensibile si reutilizabile sau componente din cadrul framework-ului .NET . Aceste coduri constau intr-un număr larg de controale, cum sunt casetele de text, butoanele și label-urile , pentru asamblarea, configurarea și manipularea codului în vederea creării paginilor HTML.
ASP.NET nu se limitează la limbaje de scriptare și permite utilizarea limbajelor .NET, cum sunt C#, VB sau J#. Permite dezvoltatorilor să contruiască aplicații foarte solide prin utilizarea Visual Studio, un instrument de dezvoltare oferit de Miscrosoft. ASP.NET este bazat pe tehnologie server-side și este contruit pe un limbaj comun de execuție care poate fi folosit pe orice server Windows pentru a găzdui tehnologii și site-uri web ASP.NET puternice.
2.1.1. Comparație între ASP.NET și ASP
ASP.NET Web Forms face mai ușoară tranziția dezvoltatorilor de la aplicații Windows la dezvoltare web prin oferirea posibilității de a construi pagini compuse din controale similare cu o interfață de utilizator Windows. Un control web, cum ar fi un buton sau o etichetă funcționează în mare parte cu omologii săi Windows: codul îi poate atribui proprietăți și poate răspunde la evenimente. Controalele Windows se afișează pe ecran, în timp ce controalele web produc segmente de HTML și JavaScript care fac parte din pagina trimisă la browserul utilizatorului.
ASP.NET Web Forms încurajează programatorii să dezvolte aplicații utilizând modelul GUI , în comparație cu scriptarea web convențională, cum este ASP. Framework-ul îmbină tehnologii precum JavaScript cu componente interne, ca ViewState.
ASP.NET introduce o mulțime de noi funcționalități. La fel ca toate componentele .NET, paginile ASP.NET sunt compilate în asamblor, lu ru care dăun avantaj de performanță și securitate. În continuare sunt prezentate și alte deosebiri între ASP.NET și ASP.
Interpretare vs compilare
În ASP, un interpretor ca VBScript sau Jscript este utilizat pentru a executa cod server-side. Cand este solicitată o pagină ASP, textul din acea pagină este analizat liniar. Conținutul care nu este script server-side este trimis înapoi, în timp ce scriptul server-side din pagină este executat de interpretorul corespunzător și output-ul este trimis înapoi ca răspuns. Eficiența redării în pagină este afectată de această arhitectură în mai multe moduri. În primul rând, este vorba de interpretarea scripturilor server-side din zbor. O optimizare pentru aplicațiile ASP este aceea de a muta o parte din scripturile server-side în componentele precompilate COM pentru a îmbunătăți timpul de răspuns. În al doilea rând, întrepătrunderea blocurilor de evaluare server-side cu HTML static este o altă preocupare cu privire la eficiență. Este mai puțin eficient decât evaluarea unui singur bloc interpretorul este apelat în repetate rânduri. De aceea, mulți dezvoltatori ASP recurg la blocuri mari de script server-side pentru a înlocui elementele HTML statice cu invocarea Response.Write(). Acest model ASP permite includerea diferitelor blocuri de script-uri într-o pagină în care să fie scrise în limbaje de scripting diferite. Acest mod poate face recurs în unele privințe și de asemenea reduce performanța prin solicitarea ca o anumită pagină să încarce mai multe motoare de scripting pentru a procesa o cerere care consumă mai mult timp și memorie decât un singur limbaj.
În schimb, în ASP.NET paginile sunt întotdeauna compilate în clasele .NET găzduite în ansambluri. Aceste clase includ și cod pe parte de server, și HTML static, așa încaât, atunci când o pagină este accesată pentru prima data, redarea următoare a acelei pagini este deservită prin executarea codului compilat. Astfel, toate ineficiențele modelului de scripting ASP sunt eliminate. Nu mai este nicio diferență de performanță între componentele compilate și codul server-side înglobat în pagină. Ambele sunt ansambluri compilate acum . De asemenea, nu mai este nicio diferență de performanță nici între amestecarea blocurilor de cod server-side printer elementele statice de HTML și scrierea de blocuri mari de cod server-side și folosirea Response.Write() pentru conținutul static. Fișierul cu extensia .aspx este analizat într-un singur fișier de cod și compilat și nu este posibilă folosirea mai multor limbaje într-un singur fișier cu această extensie.
Izolarea proceselor
ASP funcționează în cadrul spațiului de procese inetinfo.exe (IIS), deci este predispus la blozarea aplicației deoarece IIS trebuie să fie oprit sau repornit. ASP este legat de setarea de izolare IIS. Pe de altă parte, procesele ASP.NET sunt separate de inetinfo.exe . Deși punctual de pornire a aplicațiilor ASP.NET înca este IIS, acestea nu sunt legate de izolarea proceselor IIS.
Platformă de suport Non-Microsoft
ASP-ul classic nu are un mecanism pentru a rula și pe platforme care nu aparțin de Microsoft, ca de exemplu Apache Web Server, dar ASP.NET poate funcționa pe platforme Non-Microsoft.
Suport pentru mai multe limbaje
În ASP, singurele limbaje de scipting acceptate erau JavaScript și VBScript, în timp ce ASP.NET nu are aceste restricții. Limbajele compatibile cu .NET pot fi folosite în ASP.NET, inclusiv VB.NET și C#, două limbaje server-side.
Beneficii de depanare
În ASP, depanarea este un lucru dificil de făcut datorită sprijinului limitat datorat de modelul interpretat. În schimb, ASP.NET nu numai că îmbunătțește performanța modelului interpretat, dar oferă , de asemenea, și instrumente de depanare pentru dezvoltatori și pagini compilate în clase . Erorile din pagină sunt generate ca erori la compilare și multe dintre acestea sunt descoperite la momentul compilării și nu la rulare datorită faptului că VB.NET și C# sunt limbaje puternic dactilografiate. Pe lângă acestea, instrumentele disponibile pentru Windows Forms .NET sun aplicabile și pentru ASP.NET.
Strategii de implementare
Componentele folosite de pagini și implementate erau dificil de înlocuit sau actualizat în ASP. IIS trebuia oprit atunci când aplicația funcționa și se făcea în același timp la fișierul de componente pentru înlocuire. Deci, după oprirea serverului web , trebuia editat fișierul și apoi restartat din nou IIS. În ASP.NET însa, nu mai este nevoie să se oprească aplicația web în timp ce funcționează pentru a înlocui sau modifica anumite componente. Pentru a ajunge la acest lucru, s-a ținut cont de două lucruri: ca aplicația care rulează să nu dețină o referință la fișierul de componente și ca indiferent unde se afla fișierul de componente cu o nouă versiune, această nouă versiune să fie aleasă pentru orice altă solicitare ulterioară. Ambele obiective au fost atinse prin utilizarea prin utilizarea mecanismului shadow copy furnizat de Common Language Runtime.
Plasarea codului server-side
În paginile ASP se poate include codul executabil în afara domeniului de aplicare a unei funcții în cadrul unui bloc de script marcat cu runat=server și se poate defini, de asemenea, o funcție în interiorul unei perechi de tag-uri se scriptare server-side. În ASP.NET , primul lucru nu mai este suportat și nici al doilea nu este posibil.
Un constructor implicit este furnizat de definiția clasei generate și ar fi o eroare de compilare încercarea de a scrie un asemenea constructor. Pentru aceasta există alternativa de a separa structura paginii de partea logică, lucru care dă un control complet asupra definiției clasei. Aceasta metodă este denumită code- behind (codul din spate).
Noi directive de pagină
În ASP , directivele trebuie să fie plasate pe prima linie a unei pagini, în cadrul aceluiași bloc de delimitare. Spre exemplu:
<% LANGUAGE="VBSCRIPT" CODEPAGE="923" %>
În ASP.NET trebuie scrise directiva de limbaj și directiva de pagină, după cum urmează:
<%@Page Language="VB" CodePage="923"%> <%@QutputCache Duration="60" VaryByParam="none" %>
Pot exista mai multe linii directive, aceasta depinde de nevoia programatorului. În practică, directivele se plasează la începutul paginii, dar pot fi plasate oriunde în pagina cu extensia .aspx .
Validare și scriptare browser
Nu există nicio facilitate pentru validarea controalelor în ASP- ul clasic. De exemplu, verificarea daca o casetă de text a fost necompletată, dacă o adresă de email sau număr de telefon sunt valide, sau daca un anumit conținut introdus nu este potrivit cerințelor etc. În ASP, aceste tipuri de validări trebuiau realizate prin coduri în JavaScript, deci era foarte greu pentru dezvoltatori să satisfacă atât clientul, cât și validarile de pe server. În plus, ceea ce s-a adăugat la munca dezvoltatorului a fost ca acele coduri de JavaScript să fie compatibile cu mai multe browsere, lucru care consuma mult timp.
În ASP.NET însa, se pot realiza și validări de controale într-un mod simplu, care nu necesită coduri JavaScript, astfel încât programatorul nu trebuie să se mai îngrijoreze pentru acestea.
Tipuri de validatoare
Există câteva tipuri de validatoare care satisfac nevoile cerințelor de validare a datelor:
RequiredFieldValidation Control – impune ca acel control să nu fie lăsat necompletat
RangeValidator Control – este folosit pentru a verifica daca datele se află într-un anumit interval și suportă și tipurile de date Date, String etc.
CompareValidator Control – este utilizat pentru a compara datele din două controale
RegularExpressionValidator Control – este utilizat pentru a verfica dacă datele introduse au un anumit tipar
CustomValidator Control – aduce o flexibilitate pentru abilitățile de validare; acest vaidator personalizat permite scrierea unor funcții particulare care pot fi folosite pentru validarea de controale.
2.1.2. ASP.NET Web Forms
ASP.NET Web Forms face parte din framework-ul ASP.NET și este unul din cele patru modele de programare utilizate la crearea aplicațiilor web ASP.NET, celelalte fiind ASP.NET MVC, ASP.NET Web Pages și ASP.NET Single Page Applications.
ASP.NET Web Forms extinde modelul event-driven de interacțiune a aplicațiilor web. Browser-ul trimite un formular web la server-ul web și acesta întoarce, ca răspuns, o pagină markup sau o pagină HTML. Toate activitățile de pe partea de client sunt trimise la server pentru procesare dinamică. Acesta procesează output-ul pentru acțiunea clientului și declanșează reacții.
Framework-ul ASP.NET ajută la stocarea informațiilor referitoare la starea aplicației, care implică starea paginii și starea sesiunii.
Starea paginii reprezintă starea clientului, adică ceea ce conțin câmpurile de input din formular. Starea sesiunii este informația obținută de la mai multe pagini pe care utilizatorii le-au vizitat sau cu care au lucrat. La rulare, ASP.NET reține starea paginii la și de la server de-a lungul solicitărilor și în același timp generează cod de execuție și încorporează starea componentelor pe partea de server în domenii ascunse. În acest mod , serverul va cunoaște starea generală a aplicației și operează în mod conectat pe două nivele (two-tiered).
Utilizând Visual Studio se pot crea formulare ASP.NET. Visual Studio Integrated Development Environment (IDE) permite drag and drop –ul controalelor de server pentru a afișa pagina formularului. Apoi se pot stabili cu ușurință metode, proprietăți, evenimente pentru controale din pagină. Acestea sunt folosite pentru a se defini comportamentul paginii web.
ASP.NET Web Forms oferă:
O suita bogată de servere de control pentru activități obișnuite, inclusiv accesul la date;
Separarea codului HTML și a altor coduri UI de logica aplicației;
Suport pentru client-side scripting care se execută în browser;
Suport pentru performanță, securitate, testare, depanare etc
Data binding
ASP.NET Web Forms are următoarele trăsături:
Pagini Master (Master Pages) – permit crearea unei scheme de bază pentru paginile din aplicație. Un Master Page definește aspectul și comportamentul standard pentru un anumit grup de pagini sau pentru toate paginile. Apoi se pot crea pagini cu conținut individual pe care programatorul dorește să îl afișeze. Atunci când utilizatorul solicit pagini, acestea se îmbină cu pagina master pentru a se produce output-ul care combină aspectul paginii master cu conținutul paginii solicitate.
Controale executate pe server – sunt obiecte în paginile web ASP.NET care se execută la solicitarea paginii. Multe dintre controalele de server sunt similare cu elementele HTML, cum sunt casetele de text și butoanele. Alte controale includ un comportament complex, ca de exemplu controale calendar sau controale folosite pentru conectarea la surse de date și afișsarea lor.
Membership – ASP.NET Identity stochează informațiile de acreditare (credentials) într-o bază de date creată de aplicație. Când user-ul se loghează, aplicația validează datele introduse citind din baza de date. Implicit, modelul crează o bază de date membru folosind un nume de bază de date implicit pe o instanță Server Express LocalDB, serverul de dezvoltare de baze de date care vine cu Visual Express 2013 pentru Web.
Lucru cu date – ASP.NET pune la dispoziție mai multe opțiuni pentru stocarea, recuperarea și afișarea datelor. Într-o aplicație ASP.NET Web Forms se folosesc controalele data-bound pentru a automatiza prezentarea sau introducerea datelor în elementele UI ale paginii web, ca de exemplu tabele, drop-down list sau casete de text.
Rutare – URL-ul de rutare permite configurarea aplicației pentru a accepta cererea de adrese URL care nu mapează la fișierele fizice. O solicitare URL este URL-ul folosit de un utilizator pe care îl folosește să acceseze browser-ul pentru a căuta o pagină în site-ul web. Se folosește rutarea pentru a defini URL-uri care sunt semantic însemnate pentru utilizatori, care pot folosi la optimizarea motorului de căutare.
Client Script și Client Framework – se pot îmbunătăți caracteristicile bazate pe server de ASP.NET prin includerea funcționalității client-script în paginile ASP.NET Web Form; client-script se poate utiliza pentru a oferi o interfață mai bogată și responsive utilizatorilor. De asemenea, client-script se poate folosi și pentru a face apelări asincrone la serverul web în timp ce pagina rulează în browser.
State Management – ASP.NET Web Forms are incluse mai multe opțiuni de stocare a datelor în două moduri: stocare în pagină și stocare în aplicație.
.Performanță- poate fi un factor cheie pentru realizarea unui site web sau a unui proiect de succes. Web Forms permite modificarea performanței legate de: pagină și de procesarea serverului de control , accesul la date, gestiunea stărilor, configurația aplicației și încărcare și practicile de codificare de performanță.
Securitate – pentru a dezvolta o aplicație mai securizată este important să se cunoască amenințările la care este expusă. În ASP.NET se pot adăuga puncte de extensibilitate și optiuni de configurare ce permit personalizarea unor diverse comportamente de securitate în ASP.NET Web Forms.
Internaționalizare – ASP.NET Web Forms permite crearea de pagini web care pot obține un conținut anume și alte date pe baza limbii preferate pentru browser sau pe baza alegerii explicite a limbii de către utilizator. Într-o pagină ASP.NET Web Forms se pot configura controale care să își ia valori din resurse. La momentul execuției, expresiile pentru resurse sunt înlocuite de resursele din fișierul corespunzător.
Depanarea și manipulare de erori
Implementare și hosting – Visual Studio, Azure, ASP.NET și IIS oferă instrumente ce favorizează implementarea și hostingul aplicației Web Forms.
2.1.2. ASP.NET și C#
2.1.3. Comparația cu alte limbaje de dezvoltare
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Aplicatie Web Pentru Oportunitati de Angajare Si Recrutare (ID: 149497)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
