Sari la conținut

Informatică

De la Wikipedia, enciclopedia liberă

Termenul informatică desemnează știința procesării sistematice a informației, în special a procesării cu ajutorul calculatoarelor. Termenul englezesc corespunzător este Computer Science (știința calculatoarelor).

Istoric, informatica s-a dezvoltat ca știință din matematică, în timp ce dezvoltarea primelor calculatoare își are originea în electrotehnică și telecomunicații. De aceea, calculatorul reprezintă doar dispozitivul pe care sunt implementate conceptele teoretice. Informaticianul olandez Edsger Dijkstra afirma: "În informatică ai de-a face cu calculatorul, așa cum ai în astronomie cu telescopul".

A nu se confunda informatica nici cu Tehnologia informației și nici cu teoria informației.

Alan Turing (1912-1954)

Etimologie și istorie

[modificare | modificare sursă]

Termenul informatică provine din alăturarea cuvintelor informație și matematică. Alte surse susțin că provine din combinația informație și automatică. Istoria informaticii începe înainte de momentul apariției computerului digital. Înainte de anul 1920, termenul de "computer" se referea în limba engleză la o persoană care efectua calcule (un funcționar). Primii cercetători în ceea ce avea să se numească informatică, cum sunt Kurt Gödel, Alonzo Church și Alan Turing, au fost interesați de problema computațională: ce informații ar putea un funcționar uman să calculeze având hârtie și creion, prin urmărirea pur și simplu a unei liste de instrucțiuni, atât timp cât este necesar, fără să fie nevoie ca el să fie inteligent sau să presupună capacități intuitive. Una din motivațiile acestui proiect a fost dorința de a proiecta și realiza "mașini computaționale" care să automatizeze munca, deseori plictisitoare și nu lipsită de erori, a unui calculator sau computer uman.

În perioada anilor 1970, când mașinile computaționale au cunoscut o evoluție accelerată, termenul de "computer" și-a modificat semnificația, referindu-se de acum mai degrabă la mașini, decât la predecesorii săi umani.

Importanța informaticii

[modificare | modificare sursă]

În prezent, informatica își găsește aplicații în toate domeniile vieții. Prezența ei este puternic amplificată de impactul pe care îl are Internetul. Rețeaua la nivel mondial a revoluționat comunicarea dintre companii, logistica, mass-media, dar și viața privată a fiecărui individ. Mai puțin vizibil, dar totuși omniprezent, informatica și-a câștigat un loc stabil până și în aparatele casnice, ca de exemplu înregistratorul video sau mașina de spălat, în care sunt înglobate așa-numitele sisteme înglobate sau îmbarcate (în engleză embedded Systems), care fac parte integrantă din aparat și care asigură acestor aparate un comportament mai mult sau mai puțin "inteligent". Printre altele, telefoanele inteligente, care sunt adevărate calculatoare, au permis democratizarea utilizării informatice pe scară extrem de largă.

Calculatoarele sau computerele pot administra, memoriza, transmite și prelucra o mare cantitate de date într-un timp scurt. Pentru efectuarea unor astfel de operații este necesară o interacțiune complexă între partea fizică sau echipament (în engleză hardware) și partea logică sau programele (în engleză software), care reprezintă domeniile fundamentale de cercetare în Informatică.

Marele avantaj al sistemelor computaționale constă în capacitatea lor de a prelucra în mod schematic cantități enorme de informații la o viteză foarte mare. S-a încercat și implementarea capacităților perceptive ale omului în sistemele informatice, însă până în prezent cu un succes foarte limitat. Un exemplu în această direcție îl constituie sistemele de recunoaștere a chipului uman, sau/și de luare a deciziilor atunci când nu se dispune de toate datele necesare. Astfel de procese sunt studiate de o ramură specializată a informaticii, inteligența artificială. Astfel, în anumite discipline restrânse pot fi obținute deja rezultate remarcabile. Totuși nu se poate încă vorbi despre o modelizare a inteligenței umane.

Ani în informatică
Anii 1900
Anii 1910
Anii 1920
Anii 1930
1930 • 1931 • 1932 • 1933 • 1934
1935 • 1936 • 1937 • 1938 • 1939
Anii 1940
1940 • 1941 • 1942 • 1943 • 1944 
1945 • 1946 • 1947 • 1948 • 1949
Anii 1950
1950 • 1951 • 1952 • 1953 • 1954
1955 • 1956 • 1957 • 1958 • 1959
Anii 1960
1960 • 1961 • 1962 • 1963 • 1964
1965 • 1966 • 1967 • 1968 • 1969
Anii 1970
1970 • 1971 • 1972 • 1973 • 1974
1975 • 1976 • 1977 • 1978 • 1979
Anii 1980
1980 • 1981 • 1982 • 1983 • 1984
1985 • 1986 • 1987 • 1988 • 1989
Anii 1990
1990 • 1991 • 1992 • 1993 • 1994
1995 • 1996 • 1997 • 1998 • 1999
Anii 2000
2000 • 2001 • 2002 • 2003 • 2004
2005 • 2006 • 2007 • 2008 • 2009
Anii 2010
2010 • 2011 • 2012 • 2013 • 2014
2015 • 2016 • 2017 • 2018 • 2019
Anii 2020
2020 • 20212022

Ca sistem științific fundamental, informatica are, la fel ca și matematica, implicații profunde în multe alte domenii ale științei. Dacă prin matematică se înțelege un "sistem de gândire formal", atunci informatica se concentrează pe ceea ce este "formal realizabil", adică ceea ce este realizabil din punctul de vedere al mașinii. Studierea problemelor informaticii poate să se apropie foarte mult de filozofie.

Disciplinele informaticii

[modificare | modificare sursă]

Informatica se divide în următoarele domenii fundamentale:

  • informatică teoretică
  • informatică aplicată
  • informatică tehnică

Pe lângă aceste trei domenii principale, mai există:

Utilizarea informaticii în diferite domenii ale vieții de zi cu zi, ca de exemplu în economie, geografie,domeniul medical, este cuprinsă în termenul de informatică aplicată.

Informatica teoretică poate fi considerată ca bază pentru alte domenii derivate. Aceasta asigură cunoștințele fundamentale pentru decidabilitatea unei probleme, sistematizarea complexității și pentru formalizarea automatelor și a limbajelor formale.

Pe aceste fundamente teoretice se constituie informatica practică și informatica tehnică. Acestea se ocupă cu problemele centrale ale prelucrării informației și oferă soluții pragmatice și adaptabile. În acest punct cele doua domenii de dezvoltare sunt strâns legate unul de altul, diferențiindu-se prin apropierea sau depărtarea de microelectronică. Din punctul de vedere al informaticii, electronica nu reprezintă decât un instrument și nu un domeniu central de cercetare. În informatica practică, găsirea soluțiilor se face în așa fel încât să se obțină o cât mai mică dependență de electronică.

Rezultatele își găsesc în final utilizarea în informatica aplicată. Acestui domeniu îi revine realizarea echipamentelor și a programelor (hardware și software), prin urmare și marea parte a pieței tehnologiei informației TI ( în engleză Information Technology - IT). În domeniile interdisciplinare se fac cercetări pentru găsirea posibilelor soluții pe care tehnologia informației le-ar putea oferi. Astfel se poate menționa aici dezvoltarea de sisteme geoinformaționale, sau informatică economică ori bioinformatică.

Informatica teoretică

[modificare | modificare sursă]

Informatica teoretică se ocupă cu studiul teoriei limbajelor formale, respectiv automatica, teoria computațională și complexității, teoria grafurilor, criptologie, logică ș.a. punând bazele pentru construirea compilatoarelor pentru limbajele de programare și pentru formalizarea problemelor din matematică. Ea este, prin urmare, coloana vertebrală a informaticii.

Automate și limbaje formale

[modificare | modificare sursă]
Un automat finit determinist, dat prin diagrama de stări

Automatele sunt în informatică mașini teoretice, având un comportament bine definit printr-o serie de reguli (algoritm), care alcătuiesc un program. Algoritmul reprezintă o mulțime finită de instrucțiuni, care, efectuate într-o ordine anume, dau un rezultat.

Un automat finit are finalitate prin aceea că, plecând de la orice stare în care se poate afla el la un moment dat, se ajunge la o stare finală bine determinată prin program. Desigur însă că se pot construi și programe cu elemente aleatorii sau pseudoaleatorii.

Automatul primește la intrare un așa numit "cuvânt de intrare" și, în funcție de ceea ce este programat să facă, va urma un șir de pași predefiniți (algoritmul), pentru a ajunge la un rezultat final. Un automat are o singură stare de pornire și un număr de stări finale bine determinate. În momentul în care automatul a ajuns într-o stare finală, după ce a parcurs toate stările intermediare corespunzătoare, se poate afirma că cuvântul de la intrarea automatului este acceptat. Mulțimea tuturor cuvintelor acceptate de un automat compun ceea ce se numește limbajul automatului.

Automat cu memorie.
Eingabeband=Banda de intrare
Lesekopf=Capul de citire
Keller=stivă

Pentru a putea accepta limbaje complicate, este nevoie de alte modele de automate, care în primul rând trebuie sa dispună de capacitate de memorare. Mulțimea tuturor cuvintelor care se compun dintr-o secvență care conține un număr egal de litere "a" și de litere "b" constituie un așa numit limbaj independent de context, pentru care este nevoie de un "automat cu memorie" (numit și "automat push-down"). Un astfel de automat are la dispoziție o stivă de memorii, cu posibilitatea de a sesiza de câte ori litera "a" a fost citită și încă neasociată - și deci de câte ori trebuie să mai apară litera "b".

Lingvistul Noam Chomsky a clasificat limbajele formale într-o ierarhie după cum urmează:

Teoria computațională

[modificare | modificare sursă]

În teoria computațională, informatica teoretică studiază posibilitățile de rezolvare a unei probleme cu o anumită mașină. Teza Curch-Turing susține că orice problemă intuitivă care poate avea o soluție, deci computabilă, poate fi rezolvată de o mașină MAA - mașină cu acces aleator sau și de mașina Turing, prin urmare neexistând o mașină care să fie limitată computațional. Aceasta teză nu este demonstrabilă în mod formal, fiind totuși universal acceptată. Se spune că un model de sistem computațional, respectiv un limbaj de programare, este "Turing complet compatibil", dacă cu acesta se poate simula mașina universală Turing. Toate computerele actuale sunt "Turing complet compatibile", aceasta însemnând că se poate găsi o soluție pentru orice problemă decidabilă. Termenul de decidabilitate poate fi descris ca o întrebare dacă o problemă anume este rezolvabilă algoritmic sau nu. Astfel, de exemplu, problema celui mai mic multiplu comun a două numere este o problemă decidabilă. O problemă nedecidabilă este de exemplu întrebarea dacă un computer, dându-i-se anumiți parametri de intrare, va ajunge vreodată la rezultat, fapt cunoscut sub numele de problema Halt. În teoria computațională se cercetează ce mașini se pot utiliza pentru efectuarea unei funcții date. Astfel funcția Ackermann de exemplu este rezolvată nu prin clasa programelor de tip loop, ci prin mai eficienta clasă a programelor de tip while.

Legături externe

[modificare | modificare sursă]
Informatică
Proiectul Informatică Portal Informatică Codul de Bare