Istoria informaticii [603756]
Istoria informaticii
Știința informaticii este studiul proceselor care interacționează cu datele și care pot fi
reprezentate ca date sub formă de programe. Aceasta permite utilizarea algoritmilor pentru
manipularea, stocarea și comunicarea informațiilor digitale.
Michael Fellows – Domeniile sale pot fi împărțite în discipline teoretice și practice. Teoria
complexității computaționale este extrem de abstractă, în timp ce grafica computerizată
pune accentul pe aplicațiile din lumea reală. Teoria limbajului de programare analizează
abordările descrierii proceselor computaționale, în timp ce programarea în sine implică
folosirea limbajelor de programare și a sistemelor complexe. Interacțiunea om -calculator ia
în considerare provocările de a face calculatoarel e utile, ușor de utilizat și accesibile.
Cele mai vechi baze ale informaticii sunt aparatele pentru calculul sarcinilor numerice fixe,
cum ar fi abacul, au existat încă din antichitate, contribuind la calcule cum ar fi multiplicarea
și diviziunea. Algorit mii pentru efectuarea calculelor au existat încă din antichitate, chiar
înainte de dezvoltarea unor echipamente computerizate sofisticate.
Wilhelm Schickard a proiectat și construit primul calculator mecanic de lucru în 1623. În
1673, Gottfried Leibniz a prezentat un calculator digital mecanic, numit Stepped Reckoner.
Poate fi considerat primul om de știință în domeniul informaticii care a prezentat, printre alte,
documentarea sistemului de numere binare.
În 1820, Thomas de Colmar a lansat industria calc ulatoarelor mecanice când a lansat
aritmometrul său simplificat, care a fost prima mașină de calcul suficient de puternică și
suficient de fiabilă pentru a fi folosită zilnic într -un mediu de birou.
Charles Babbage a început proiectarea primului calculat or automat mecanic „ Difference
Engine” , în 1822, care i -a dat în cele din urmă ideea de primul calculator mecanic
programabil. El a început să dezvolte această mașină în 1834 și "în mai puțin de doi ani, el a
schițat multe dintre caracteristicile esențiale ale calculatorului modern". "Un pas esențial a
fost adoptarea unui sistem de carduri perforate derivat din țesătura Jacquard", făcând -o
programabilă infinit.
În 1843, în timpul traducerii unui articol francez pe motorul analitic, Ada Lovelace a scris un a
dintre numeroasele note pe care le -a inclus, un algoritm de calcul al numerelor Bernoulli,
considerat a fi primul algoritm publicat vreodată specific adaptat pentru implementarea pe un
calculator.
În jurul anului 1885, Herman Hollerith a inventat tabul atorul, care a folosit cărți perforate
pentru a procesa informații statistice; eventual compania sa a devenit parte a IBM.
În 1937, la o sută de ani după visul imposibil al lui Babbage, Howard Aiken la convins pe
IBM, care făcea tot felul de echipamente de carduri perforate și era, de asemenea, în
domeniul calculatoarelor pentru a -și dezvolta calculatorul gigant programabil, ASCC/
Harvard Mark pe motorul analitic al lui Babbage, care însuși folosea cartele și o unitate
centrală de calcul. Când mașina a fo st terminată, unii l -au salutat ca "visul lui Babbage sa
împlinit".
Charles Babbage
În anii '40, odată cu dezvoltarea unor mașini de calcul noi și mai puternice, termenul de
calculator facea referire la mașini, mai degrabă decât la predecesorii lor um ani. Cum s -a
dovedit clar faptul că computerele ar putea fi utilizate pentru calcule matematice mai mult
decât atât, domeniul informatic a extins studiul de calcul în general. În 1945, IBM a înființat
Laboratorul Watson Scientific Computing la Universitate a Columbia din New York City. Casa
renumită de fraternitate de pe West Side din Manhattan a fost primul laborator IBM dedicat
științei pure. Laboratorul este precursorul diviziei de cercetare IBM, care astăzi exploatează
instalații de cercetare din întreag a lume. În cele din urmă, relația strânsă dintre IBM și
universitate a contribuit la apariția unei noi discipline științifice, Columbia oferind unul dintre
primele cursuri de credit academic în domeniul informaticii în 1946. Informatica a început să
fie st abilită ca o disciplină academică distinctă în anii 1950 și începutul anilor 1960. Primul
program de informatică din lume, Diploma Cambridge în Informatică, a început la
Universitatea din Cambridge Computer Laboratory în 1953. Primul departament de
informa tică din Statele Unite a fost format la Universitatea Purdue în 1962. Deoarece
calculatoarele practice au devenit disponibile, multe aplicații de calcul au devenit arii
distincte de studiu în propriile lor drepturi.
Deși mulți credeau inițial că era impos ibil ca acele computere să fie într -adevăr un domeniu
științific de studiu, la sfârșitul anilor cincizeci, a devenit treptat acceptată în rându l populației
academice mai mari. Este acum bine -cunoscutul brand IBM care a făcut parte din revoluția
informatică în această perioadă. IBM (scurt pentru International Business Machines) a lansat
computerele IBM 704 și mai târziu IBM 709 , care au fost utilizate pe scară largă în timpul
perioadei de explorare a unor astfel de dispozitive.
Timpul a înregistrat îmbunăt ățiri semnificative în utilizarea și eficiența tehnologiei de calcul.
Societatea modernă a cunoscut o schimbare semnificativă în ceea ce privește utilizatorii
tehnologiei informatice, de la utilizatori numai de către experți și profesioniști, până la o baz ă
de utilizatori aproape ubicuoasă. Inițial, computerele erau destul de costisitoare și era nevoie
de un anumit grad de ajutor umanitar pentru o utilizare eficientă – în parte din partea
operatorilor de calculatoare profesioniști. Dat fiind că adoptarea ca lculatoarelor a devenit
mai răspândită și mai accesibilă, a fost nevoie de asistență umană mai redusă pentru uzul
comun.
Contribuții fundamentale științei și societății
Armata germană a folosit mașina Enigma în timpul celui de -al doilea război mondial pe ntru
comunicațiile pe care doreau să le păstreze în secret. Decriptarea pe scară largă a traficului
Enigma la Bletchley Park a fost un factor important care a contribuit la victoria aliaților în
timpul celui de -al doilea război mondial.
În ciuda istori ei sale scurte ca disciplină academică formală, știința informatică a adus o
serie de contribuții fundamentale științei și societății – de fapt, împreună cu electronica, este
o știință fondatoare a epocii actuale a istoriei umane, denumită Epoca informație i și un
conducător a -L revoluției informaționale, considerată a treia majoritate în progresul
tehnologic uman după Revoluția Industrială (1750 -1850 CE) și Revoluția Agricolă (8000 –
5000 î.Hr.).
Contribuții Importante de mentionat :
Începutul "Revoluției Dig itale", care include actuala vârstă a informațiilor și Internetul.
definiție formală a calculului și a calculelor, precum și dovada existenței unor
probleme de rezolvare și rezolvare a problemelor computaționale.
Conceptul de limbaj de programare, un inst rument pentru exprimarea precisă a
informațiilor metodologice la diferite nivele de abstractizare.
În criptografie, ruperea codului Enigma a fost un factor important care a contribuit la
victoria aliaților în al doilea război mondial.
Calculul științific a permis evaluarea practică a proceselor și a situațiilor de mare
complexitate, precum și experimentarea în întregime de software. De asemenea, a
permis studierea avansată a minții și cartografierea genomului uman a devenit
posibilă cu „Proiectul genomului uman ”. Proiectele de calcul distribuite, cum ar fi
Folding @ home, explorează plierea proteinelor.
Traficul algoritmic a sporit eficiența și lichiditatea piețelor financiare prin folosirea
inteligenței artificiale, a învățării și a altor tehnici statistice și numerice pe scară largă .
Grafica și imaginile generate de calculator au devenit omniprezente în divertismentul
modern, în special în televiziune, cinematografie, publicitate, animație și jocuri video.
Chiar și filmele care nu conțin CGI explicite sunt de obicei "filmate" acum pe camere
digitale sau editate sau post -procesate folosind un editor video digital
Simularea diferitelor procese, inclusiv a dinamicii fluidelor computerizate, a
sistemelor și circuitelor fizice, electrice și electronice, precum și a societăților și a
situațiilor sociale (în special jocurile de război) împreună cu habitatele acestora,
printre multe altele. Calculatoarele moderne permit optimizarea unor astfel de
modele, cum ar fi aeronavele complete. Notabile în designul circuitelor electrice și
electronice sunt SPICE, precum și software pentru realizarea fizică a unor modele
noi (sau modificate). Acesta din urmă include software de design esențial pentru
circuite integrate.
Inteligența artificială devine din ce în ce mai importantă , deoarece devine mai
eficientă și mai complexă.
Interacțiunea om -calculator combină algoritmi noi cu strategii de proiectare care permit o
performanță umană rapidă, rate scăzute de eroare, ușurință în învățare și satisfacție ridicată.
Cercetătorii folo sesc observarea etnografică și colectarea automată a datelor pentru a
înțelege nevoile utilizatorilor, apoi a efectua teste de utilitate pentru a rafina modele.
Inovațiile cheie includ manipularea directă, legăturile web selectabile, modelele touchscreen,
aplicațiile mobile și realitatea virtuală.
Etimologia termenului "informatică"
Deși inițial a fost propus în 1956, termenul "informatică" apare într -un articol din 1959 din
Communications of the ACM, în care, Louis Fein argumentează crearea unei Școli
Postuniversitare în Știința Calculatoarelor analogă creării Harvard Business School în 1921,
justificând numele argumentând că, asemenea științei managementului, subiectul este
aplicat și interdisciplinar în natură, având în același timp caracteristicile une i discipline
academice. Eforturile sale și cele ale altora, cum ar fi analistul numeric George Forsythe, au
fost recompensați: universitățile au continuat să creeze astfel de departamente, începând cu
Purdue în 1962. În ciuda numelui său, o cantitate semni ficativă de informatică nu implică
studiul computerelor. Din acest motiv, au fost propuse mai multe nume alternative.
Anumite departamente ale unor universități importante preferă termenul de știință de calcul,
pentru a sublinia tocmai această diferență. Cercetătorul danez Peter Naur a sugerat
termenul datalogie, pentru a reflecta faptul că disciplina științifică se învârte în jurul datelor și
tratării datelor, fără a implica neapărat computerele. Prima instituție științifică care folosește
termenul a fos t Departamentul de Datalogie al Universității din Copenhaga, f ondată în 1969,
iar Peter Naur a fost primul profesor în datalogie. Termenul este folosit în principal în țările
scandinave. Un termen alternativ, propus și de Naur, este știința datelor; acest lucru este
utilizat acum pentru un domeniu multidisciplinar de analiză a datelor, inclusiv statistici și
baze de date.
De asemenea, în primele zile de calcul, s -au sugerat o serie de termeni pentru practicanții
domeniului computerizării în comunicările AC M-turingineer, turologist, flow -chart -man, meta –
matematician aplicat și epistemolog aplicat. Trei luni mai târziu, în același jurnal, a fost
sugerat un computolog, urmat anul viitor de hipolog. De asemenea, sa sugera t termenul
computică. În Europa, termeni i proveniți din traduceri contractate ale expresiei "informații
automate" (de exemplu, "informazione automata" în italiană) sau "informații și matematică"
sunt adesea folosite, de ex. Informatică (franceză), informatică (germană), informatică
(italiană, ol andeză), informatică (spaniolă, portugheză), informatică (limba slavă și maghiară)
sau pliroforiki (informatics). Cuvinte similare au fost de asemenea adoptate în Marea Britanie
(la fel ca la Școala de Informatică a Universității din Edinburgh). Totuși, în S.U.A.,
informatica este legată de calculul aplicat sau calculul în contextul unui alt domeniu."
Știința informaticii este considerată de unii ca având o relație mult mai strânsă cu
matematica decât multe discipline științifice, iar câțiva observatori s pun că calculul este o
știință matematică. Informatica timpurie a fost puternic influențată de munca
matematicienilor precum Kurt Gödel, Alan Turing, Rózsa Péter și Biserica Alonzo și continuă
să existe un schimb util de idei între cele două domenii în dom enii precum logica
matematică, teoria categoriilor, teoria domeniilor și algebra.
Relația dintre informatică și ingineria software -ului este o problemă controversată, care este
în continuare studiată de disputele asupra termenului "Engineering Software" și a modului în
care este definită știința calculatoarelor.
Departamentele de informatică cu accent de matematică și cu o orientare numerică iau în
considerare alinierea cu știința computațională. Ambele tipuri de departamente au tendința
de a depune efo rturi pentru a realiza o punte educațională în domeniu
Istoria a ingineriei software
Istoria științei informaticii, a ingineriei software și a World Wide Web este bogată, fascinantă
și destul de surprinzătoare . Începe într -un moment în care programele de calculator erau, în
esență, doar instrucțiuni pentru manipularea unui dispozitiv fizic și trece prin mai multe
puncte de cotitură care au condus, în primul rând, la comercializare și, în final, la
consumarea tehnologiei de calcul.
Hardware și primii ingin eri de software
Începând cu anii '50 și începutul anilor '60, programatorii nu au interacționat chiar direct cu
dispozitivele de calcul. Ei și -au difuzat programele cu mâna tehnicienilor și apoi au luat
rezultatele ore mai târziu, după ce programele au fos t procesate în lot cu multe altele. Astfel,
sarcini precoce au fost în mod obișnuit orientate spre calcul matematic, care necesită o
buclă de feedback foarte limitată.
Primul limbaj de programare folosit a fost – Fortranul IBM – care a fost lansat în 1957 pentru
calcul matematic și științific. Altul, Cobol, a fost lansat de Departamentul Apărării al SUA în
1962 pentru a fi folosit în aplicații de afaceri.
Dar trecerea la folosirea unui model de partajare a timpului în loc de procesare în șarje
pentru prog ramele care rulează a fost probabil cea mai importantă deoarece a dus la o
creștere rapidă a aplicațiilor de calcul. Din păcate, proiectele nu au reușit să livreze în mod
fiabil, la timp și la buget. Practicanții au fost obligați să recunoască faptul că nu aveau cele
mai bune practici potrivite pentru implementarea și producerea software -ului la scară
comercială. L -au numit "Criza software".
Era clar că proiectarea sistemelor complexe de software ar necesita instrumente și abordări
mai bune decât erau disp onibile la momentul respectiv, astfel încât o conferință a fost
convocată în 1968 pentru a găsi o soluție. Acesta este într -adevăr în cazul în care termenul
"Software Engineering" a găsit rădăcinile sale. Conferința a căutat să aplice cele mai bune
practic i de management și producție de proiecte – deja folosite în disciplinele de inginerie
tradiționale – pentru software. Ca rezultat, au elaborat un raport care a definit fu ndamentele
ingineriei software. În decursul următoarelor decenii, disciplina de progra mare a văzut o
tensiune familiară între gândirea științifică a mediului academic, care avea tendința de a
căuta soluții ideal e pentru provocările tehnice și nevoile practice ale unei industrii care se
confrunta cu presiuni în timp real și costuri ridicate .
La începutul anilor '70 si-au facut apariția noi idei cheie în gândirea sistemelor, care le -au
permis inginerilor să spargă aceste proiecte gigantice în piesele modulare (și mult mai ușor
de gestionat) care comunicau prin interfețe.
O altă schimbare majora a avut loc la începutul anilor 1980, odată cu trecerea de la gândirea
datelor ca pe un flux mereu în continuă schimbare și spre ideea persistenței unor "obiecte"
discrete care ar putea interacționa și deține stat independent. Mai concret, a permis
dezvoltatorilor să creeze și să interacționeze cu obiectele aproape fizice ale interfeței grafice
(GUI), cum ar fi meniurile , icoane le și ferestrele – "programare orientată pe obiecte".
Deceniile care au durat până în prezent au fost marcate de creșteri ului toare ale puterii de
calcul (după Legea lui Moore):
Source: "Transistor Count and Moore's Law – 2011" by Wgsimon – Own work. Licensed under CC BY –
SA 3.0 via Wikimedia Commons.
Această nouă putere de calcul nu a fost în întregime benefică pentru starea i ndustriei. Unde înainte,
inginerii trebuiau să fie foarte atenți la proiectarea unor programe eficiente care să poată funcționa
cu memoria limitată și puterea de procesare limitată a zilei, dependența de puterea brută a condus
la câțiva pași înapoi în cali tatea codului scris. Acest lucru a determinat pe unii cercetatori să
denatureze creșterea software -ului "risipitor".
Source: World Science Festival
Din istoria dezvoltării aplicațiilor web
Aplicațiile web sunt importante pentru dezvoltarea interne tului. Ele îmbunătățesc calitatea
lucrării unui browser și întregul Internet poate funcționa în mod clar. Ce este o aplicație web?
Este o aplicație client -software rulată de client într -un browser. Funcția principală a unui
browser este să afișeze informaț iile primite de la un server și să trimită datele utilizatorului
înapoi. Principalul avantaj al acestei abordări îl constituie faptul că clienții nu depind de
sistemul de operare specific utilizatorului; prin urmare, aplicațiile web sunt servicii cross –
platform. Datorită acestei caracteristici universale, aplicațiile web au devenit foarte populare
în anii 1990 și 2000. Dezvoltatorii nu au nevoie să pregătească versiuni diferite ale aceleiași
aplicații pentru Microsoft Window, Mac OS, Linux etc. O aplicație este creată o singură dată
pentru orice platformă și poate funcționa pe orice sistem de operare. Cu toate acestea,
diferitele realizări practice ale HTML, CSS, DOM și a altor interfețe în browsere pot provoca
probleme în timpul dezvoltării aplicațiilor web și susținerea lor ulterioară. Mai mult, o aplicație
web poate funcționa incorect datorită posibilității utilizatorului de a schimba setările
browserului așa cum dorește.
Istoria dezvoltării aplicațiilor web este destul de nouă și neobișnuită. Dezvoltator ii trebuiau să
găsească soluțiile cele mai radicale și mai intense la problemele existente. A fost
considerabil ca aplicațiile web să lucreze fluent în diferite sisteme de operare. Cele mai
vechi modele de calcul erau incomode. Fiecare aplicație a avut programul client precompilat
și a trebuit să fie instalat separat pe PC -ul fiecărui utilizator. În plus, componentele clientului
și serverului au fost strâns legate de sistemul de operare și de arhitectura calculatoarelor.
Ca rezultat, a fost costisitor să port de aplicații la alte sisteme. Dacă vă amintiți Web -ul din
primele sale zile, veți spune că clientu l a primit o pagină web ca document static. A fost dificil
să ai experiență interactivă atunci când ai lucrat cu o astfel de pagină. Când ați introdus
modificări ale paginii web, ați solicitat timp pentru a reîmprospăta această pagină, în măsura
în care ef ectuați o călătorie dus -întors pe serverul său.
Anul 1995 este un an crucial în era internetului. Netscape Communications a prezentat
JavaScript, un limbaj de scripting pe partea clientului, care permite programatorilor să
îmbunătățească interfața cu elem entele dinamice. JavaScript a făcut Internetul mai rapid și
mai productiv, deoarece datele nu mai erau trimise la server pentru a genera întreaga
pagină web. Scripturile integrate îndeplinesc diverse sarcini pe pagina specifică descărcată
"chiar la fața lo cului". JavaScript este una dintre cele trei tehnologii cele mai notabile (cu
HTML și CSS) de producție de conținut pentru WWW. Are interfața de programare a
aplicațiilor care permite experților să lucreze cu texte, date și diverse expresii regulate. De
fapt, nu are o intrare / ieșire care face mașina să "comunice" cu lumea exterioară.
În 1996, a fost introdus Macromedia Flash. A fost, de asemenea, o inovație revoluționară
care a făcut ca Web -ul să fie "mai luminos" și mai interactiv. Acest player de anima ție
vectorial a permis programatorilor să îmbogățească paginile web cu animație. Această
platformă software multimedia funcționează cu animație, diferite tipuri de jocuri browser,
grafică vectorială și aplicații Internet și mobile. A fost un progres solid când Adobe Flash a
inclus streamingul audio și video în animația sa. Această platformă face ca utilizatorul să
interacționeze cu mașina cu ajutorul unui mouse, a unui microfon și a unei tastaturi. Mai
mult, orice interacțiune a programului de pe partea cli entului nu mai necesită comunicarea
cu serverul. Din 1996, popularitatea crescândă a diferitelor jocuri interactive pe internet a
fost observată datorită tehnologiei revoluționare oferite de Macromedia Flash. Când vă
amintiți Internetul înainte de anul 200 0, veți fi de acord că majoritatea site -urilor web au
utilizat conținut multimedia încorporat în paginile lor. Ați putea vedea anunțuri animate și
videoclipuri care au supraîncărcat paginile web cu culori și mișcări inutile. Foarte curând,
popularitatea Fl ash a scăzut. Paginile web au câștigat aspectul obișnuit. Munca utilizatorului
nu mai era întreruptă de anunțurile ciudate și neașteptate și de fluxurile video în timp ce
acestea încetaseră activitatea site -ului și consumau traficul suplimentar. Cu toate a cestea,
există încă site -uri ieftine care utilizează Flash pe paginile lor web. În prezent, Adobe Flash
este folosit în principal pentru crearea de diverse jocuri video și aplicații interactive pentru
smartphone -uri și tablete.
În 1999, conceptul de aplic ație web a apărut în limba Java. Mai târziu, în 2005, Ajax a fost
introdus de Jesse James Garrett în articolul său "Ajax: O nouă abordare a aplicațiilor web".
Acest complex de tehnici de dezvoltare web a permis programatorului să compună aplicații
web asin crone. Principiul muncii sale este foarte simplu și revoluționar în același timp. A
făcut posibil ca utilizatorul să lucreze pe Web mai repede și mai bine. Aplicațiile Web pot
trimite date către server și îl pot prelua fără a interfera cu lucrul de pe pagi na respectivă.
Majoritatea dintre noi folosesc zilnic aplicații web. De fapt, e -mailurile Gmail și Yahoo,
Twitter, Facebook și eBay sunt folosite de majoritatea zilnic – și sunt aplicații web. În general
confundăm aceste instrumente de aplicații web cu s ite-uri web.
Site web vs. aplicație web
Cea mai bună modalitate de a elucida diferența dintre site -uri web și aplicații web este de a
gândi în termeni de scopuri, dorim să furnizăm informații sau dorim să obținem informații?
Site-urile web sunt sim ple, statice, site -uri cu o singură pagină sau site -uri de marketing
pentru distribuirea de informații. În general, site -urile web oferă și promovează produse,
servicii și organizații prin intermediul articolelor, imaginilor, videoclipurilor și fișierelor. Un site
informează lumea despre cine sunteți și despre ce oferiți. De exemplu, puteți să verificați
site-ul local al restaurantului italian ca client pentru a verifica "Ziua specială" sau orele de
funcționare fără a dezvălui informații despre dvs. înșivă.
Aplicațiile web, pe de altă parte, se concentrează mai puțin pe marketing și mai mult pe
funcționalitate pentru îndeplinirea scopului specific al afacerii (trimiterea, stocarea, căutarea
și preluarea datelor). Aplicațiile Web sunt software care rulează p e web pentru a oferi un fel
de serviciu sau pentru a îmbunătăți eficiența. Aplicațiile web folosesc întotdeauna baze de
date și, prin urmare, sunt numite dinamice. Este nevoie de interacțiunea utilizatorului,
deoarece utilizatorul trebuie să furnizeze info rmații pentru ca aplicația să funcționeze. Marele
avantaj al unei aplicații web este că nu are nevoie de dezvoltator pentru a construi un client
pentru un anumit tip de computer sau pentru un anumit sistem de operare, deoarece rulează
într-un browser web. Utilizatorii pot folosi chiar și Internet Explorer, Chrome sau Firefox, deși
unele aplicații web pot necesita un anumit browser Web.
Fundația tehnică
Site-urile Web și aplicațiile web sunt colecții de cod de programare pentru livrarea de
conținut și funcț ionalitate pe web. Software -ul rulează pe servere web și este accesat prin
browsere web pe o varietate de dispozitive. Ambele utilizează aceleași limbi și instrumente
de codificare (HTML, JavaScript, CSS și altele) pentru a dezvolta software -ul. Aplicațiil e
Web utilizează în mod obișnuit o combinație de script -uri de pe server (ASP, PHP sau
Python etc.) pentru a face față bazelor de date, stocarea și recuperarea informațiilor și a
script -urilor de pe partea clientului (HTML, Javascript, CSS și altele etc.) împreună cu cadre
precum Rails, Django etc. pentru a dezvolta și menține aplicația.
Tipuri de aplicații web
Există trei tipuri diferite de aplicații bazate pe web, în funcție de rolurile realizate și de logica
plasată și distribuită de server și browser -ul client.
Server Web Application – În acest tip de arhitectură de dezvoltare web, serverul generează
conținut HTML și îl trimite clientului ca pagină HTML completă.
JS Generation Widgets (AJAX) – Pagina afișată în browser indică widget -urile, unde date le
sunt încărcate prin interogarea AJAX de la server în conținutul paginii. Orice actualizare de
pe server se afișează numai pentru partea din pagină solicitată de client.
Aplicații web pe o singură pagină orientate pe servicii – o pagină HTML este descăr cată de
pe server, care acționează ca un container pentru codul JavaScript pentru a adresa un
anumit serviciu web și pentru a prelua numai date comerciale. Datele sunt utilizate de
aplicația JavaScript autonomă, care generează conținutul HTML al paginii.
De asemenea, este posibilă implementarea arhitecturii hibride pentru a îndeplini cerințele
specifice ale afacerii. Arhitectura acestei colecții de funcții interactive legate logic poate
consta dintr -o serie de componente, inclusiv –
Funcționalitatea aplica țiilor de afaceri
Securitate
Browsere, cum ar fi Internet Explorer
Funcția E -Mail
Forumuri sau buletine de știri
Publicitate personalizată
Aplicațiile Web sunt viitorul
Aplicațiile web pot fi personalizate și adaptate în scopuri comerciale, cum ar fi soft ware -ul
contabil, sistemele de mementouri, formularele de comandă și urmărirea vânzărilor pentru
eficiența economiei de timp. Aplicațiile web pot fi, de asemenea, proiectate pentru a
consolida comunicarea internă și externă și pentru a îmbunătăți furnizare a și distribuirea
datelor. Aplicațiile web avansate sunt acum disponibile ca portaluri online și eCommerce,
care oferă conținut și funcționalitatea căutării, adăugării în coș și tranzacțiilor financiare
online. Majoritatea proprietarilor de afaceri înțeleg valoarea site -urilor Web
Arhitectura aplicațiilor web: definiție, modele, tipuri și altele
Internetul nu se mai referă la pagini web statice și timpi de încărcare mai lungi. De -a lungul
timpului, Internetul a făcut o schimbare spre angajarea activă a utilizatorilor, precum și o
funcționalitate extinsă prin intermediul aplicațiilor web pline de viziune și puternice.
O aplicație web este la fel ca o aplicație obișnuită pentru calculator, cu excepția faptului că
funcționează pe Internet. Pe măsură ce toată lumea se află pe web în aceste zile,
majoritatea dezvoltatorilor încearcă să beneficieze de aplicații web și să atragă cât mai mulți
utilizatori posibil prin ofertele potrivite.
Înainte de a vă aventura pe un proiect de dezvoltare a aplicațiilor web , este important să
alegeți tipul de arhitectură pentru aplicații web, precum și modelul componentelor aplicației
web. Realizarea opțiunilor corecte este importantă pentru succesul unei aplicații web.
Definiția arhitecturii aplicației web
Arhitectura apli cației web descrie interacțiunile dintre aplicații, baze de date și sisteme
middleware de pe web. Se asigură că mai multe aplicații funcționează simultan.
De îndată ce utilizatorul apasă butonul "go" , după ce a introdus o adresă URL în bara de
adrese a u nui browser web, acesta solicită respectiva adresă web. Serverul trimite fișiere în
browser ca răspuns la cererea făcută. Browserul execută acele fișiere pentru a afișa pagina
solicitată.
În cele din urmă, utilizatorul poate interacționa cu site -ul web. C el mai important lucru pe
care trebuie să -l observăm aici este codul analizat de browserul web. O aplicație web
funcționează într -un mod similar.
Acest cod ar putea sau nu să aibă instrucțiuni specifice care să -i spună browserului cum să
răspundă la diferi tele tipuri de intrări de utilizator.
Prin urmare, o arhitectură de aplicații web trebuie să includă toate subcomponentele,
precum și schimburile de aplicații externe pentru întreaga aplicație software, în cazul
menționat mai sus, care este un site web.
Arhitectura aplicațiilor web este indispensabilă în lumea modernă, deoarece o mare parte
din traficul de rețea global, precum și majoritatea aplicațiilor și dispozitivelor, utilizează
comunicarea bazată pe web.
O arhitectură de aplicații web trebuie să se ocupe nu numai de eficiență, ci și de fiabilitate,
scalabilitate, securitate și robustețe.
Cum functioneazã?
Cu orice aplicație web tipică, există două coduri diferite (subprograme) care rulează una
lângă alta. Acestea sunt:
Cod client – cod => care se a flă în browser și răspunde la unele intrări de utilizator
Cod Server – Cod => Codul care se află pe server și răspunde la cererile HTTP
Un dezvoltator de web (echipa) care dezvoltă aplicația web decide cu privire la ceea ce va
face codul de pe server cu p rivire la codul din browser. Pentru scrierea codului de pe server
se utilizează C #, Java, JavaScript, Python, PHP, Ruby etc.
Orice cod care este capabil să răspundă la cererile HTTP are capacitatea de a rula pe un
server. Codul de pe server este responsa bil pentru crearea paginii pe care utilizatorul o
solicită, precum și pentru stocarea diferitelor tipuri de date, inclusiv a profilurilor utilizatorilor
și a datelor introduse de utilizatori. Nu este văzut niciodată de utilizatorul final.
O combinație de CSS, HTML și JavaScript este folosită pentru scrierea codului de pe partea
clientului. Acest cod este analizat de browserul web. Spre deosebire de codul de pe server,
codul de pe partea clientului poate fi văzut și modificat de utilizator. Reacționează la intrarea
utilizatorului.
Codul clientului comunică doar prin intermediul cererilor HTTP și nu poate citi direct fișiere
de pe un server.
Componente pentru aplicații web
Când spunem componente ale aplicațiilor web, putem spune oricare dintre următoarele
două:
UI / UX Componente pentru aplicații web – Acestea includ jurnale de activitate,
tablouri de bord, notificări, setări, statistici etc. Aceste componente nu au nimic de -a
face cu funcționarea unei arhitecturi de aplicații web. În schimb, ele fac parte di n
planul de aspect al interfeței unei aplicații web.
Componentele structurale – Cele două componente structurale importante ale unei
aplicații web sunt partea clientului și a serverului.
Componenta clientului – Componenta client este dezvoltată în CSS, HTM L și JS.
Întrucât există în browser -ul web al utilizatorului, nu este nevoie de ajustări legate de
sistemul de operare sau de dispozitiv. Componenta client este o reprezentare a
funcționalității unei aplicații web la care interacționează utilizatorul final .
Server Component – Componenta server poate fi construită folosind una sau o
combinație de mai multe limbi de programare și cadre, inclusiv Java, .Net, NodeJS,
PHP, Python și Ruby on Rails. Componenta server are cel puțin două părți; logica
aplicațiilor ș i baza de date. Primul este principalul centru de control al aplicației web,
în timp ce acesta din urmă este locul în care sunt stocate toate datele persistente.
Modele de componente ale aplicațiilor web
În funcție de numărul total de servere și baze de date utilizate pentru o aplicație web, se
decide modelul unei aplicații web. Poate fi oricare dintre următoarele trei:
Un server Web, o bază de date
Acesta este modelul cel mai simplu și cel mai puțin fiabil pentru componentele aplicației
web. Un astfel d e model utilizează un singur server, precum și o singură bază de date. O
aplicație web care se bazează pe un astfel de model va scădea de îndată ce serverul va
coborî. Prin urmare, nu este foarte fiabil.
Un server web, un model de componentă de aplicație w eb pentru baza de date nu este
folosit în mod obișnuit pentru aplicații web reale. Este folosită în principal pentru derularea
proiectelor de testare, precum și cu scopul de a învăța și de a înțelege fundamentele
aplicației web.
Servere multiple pe Web, o bază de date (la o mașină mai degrabă decât serverul Web)
Ideea cu acest tip de model de aplicație web este că serverul web nu stochează date. Când
serverul web primește informații de la un client, acesta procesează același lucru și apoi îl
scrie în baza de date, care este gestionată în afara serverului. Aceasta este uneori
menționată și ca o arhitectură apatridă.
Cel puțin 2 servere web sunt necesare pentru acest model component de aplicație web.
Acest lucru este doar pentru a evita eșecul. Chiar și atunc i când unul dintre serverele web
coboa ră, celălalt va prelua sarcina.
Toate cererile făcute vor fi redirecționate automat către noul server și aplicația web va
continua executarea. Prin urmare, fiabilitatea este mai bună comparativ cu singurul server
cu mo del de bază de date inerent. Cu toate acestea, dacă baza de date se blochează,
aplicația web va urma pentru a face același lucru.
Server multiplu Web, baze de date multiple
Este cel mai eficient model de componentă a aplicației web pentru că nici serverele web și
nici bazele de date nu au un singur punct de eșec. Există două opțiuni pentru acest tip de
model. Fie să stocați date identice în toate bazele de date folosite, fie să le distribuiți în mod
egal între ele.
Nu sunt solicitate mai mult de 2 baze de date, de obicei pentru primul caz, în timp ce pentru
ultimul caz, unele date ar putea deveni indisponibile în scenariul unui accident de baze de
date. Standardizarea DBMS este utilizată, totuși, în ambele scenarii.
Atunci când scara este mare, adică mai m ult de 5 servere web sau baze de date sau
ambele, este recomandat să instalați balansoare de încărcare.
Tipuri de arhitectură de aplicații web
O arhitectură de aplicații web este un model de interacțiune între diferitele componente ale
aplicațiilor web. T ipul de arhitectură a aplicației web depinde de modul în care logica
aplicației este distribuită între părțile clientului și server.
Există trei tipuri principale de arhitectură de aplicații web. Fiecare dintre ele este explicată
după cum urmează:
Aplicaț ii cu o singură pagină (SPA) – În loc să încărcați pagini complet noi de pe server
de fiecare dată pentru o acțiune a utilizatorilor, aplicațiile web cu o singură pagină permit
o interacțiune dinamică prin furnizarea de conținut actualizat la pagina curent ă.
AJAX, o formă concisă de JavaScript și XML asincron, este fundația pentru permiterea
comunicațiilor paginilor și, prin urmare, transformarea APS într -o realitate. Întrucât aplicațiile
de o singură pagină împiedică întreruperile în experiența utilizatori lor, ele seamănă într -un
fel cu aplicațiile desktop tradiționale.
SPA-urile sunt concepute astfel încât să solicite cele mai multe elemente de conținut și
informații necesare. Acest lucru duce la achiziționarea unei experiențe intuitive și interactive
a utilizatorului.
Microservices – Acestea sunt servicii mici și ușoare care execută o singură
funcționalitate. Cadrul de arhitectură Microservices are o serie de avantaje care îi permit
dezvoltatorilor să sporească nu numai productivitatea, ci și să accelereze întregul proces
de implementare.
Componentele care formează o aplicație care utilizează arhitectura Microservices nu sunt
direct dependente una de cealaltă. Ca atare, ele nu necesită construirea folosind același
limbaj de programare.
Prin urmare, dezvolta torii care lucrează cu Arhitectura Microservices sunt liberi să aleagă un
set de tehnologie de alegere. Aceasta face ca dezvoltarea aplicației să fie mai simplă și mai
rapidă.
Serverless Architectures – În acest tip de arhitectură de aplicații web, un dezv oltator
de aplicații consultă un furnizor de servicii de infrastructură a cloud -ului terț pentru
externalizarea serverului, precum și gestionarea infrastructurii.
Beneficiul acestei abordări este că permite aplicațiilor să execute logica codului fără a se
deranja cu sarcinile legate de infrastructură.
Arhitectura fără server este cea mai bună atunci când compania de dezvoltare nu dorește să
gestioneze sau să sprijine serverele, precum și hardware -ul pentru care au dezvoltat
aplicația web.
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: Istoria informaticii [603756] (ID: 603756)
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.
