Explorați Cărți electronice
Categorii
Explorați Cărți audio
Categorii
Explorați Reviste
Categorii
Explorați Documente
Categorii
cteva
ntrebri:
1 ) n primul rnd la ce este bun un limbaj de programare n general?
2)
Cum
putem
clasifica
limbajele
de
programare?
3
)
De
ce
apar
noi
limbaje
de
programare?
4) De ce cineva i-ar propune s nvee un limbaj de programare?
5) Care ar fi primele limbaje de programare pe care un tnr ar trebui s le nvee?
1) La acest ntrebare se poate rspunde cu alta: ce aport au sistemele de calcul n
zilele
de
astzi?
Un limbaj de programare ar fi un set de instrumente prin care se poate rezolva o
anumit mulime de probleme concrete. Dac punem n aa fel problema avem o
definiie pragmatic asupra limbajelor de programare. Bineneles c fr existena
noiunii de limbaj de programare nu ar mai avea sens noiunea de sistem de calcul,
astfel explicndu-se apariia primelor limbaje de programare odat cu cea a
computerelor electronice. Dac ne referim la primele sisteme de calcul (care erau
mecanice, cum ar fi calculatorul lui Pascal sau alte maini simple de socotit) ideea de
program nu era bine definit, identificndu-se cu construcia mainii. Totui, dac
reflectm puin asupra mainii proiectate de Ada Lovelace, se poate observa o
separare destul de clar a noiunii de program (entitate software) de noiunea de
construcie dedicat abordrii unei familii mari de probleme. Dac ne uitm un pic pe
Wikipedia, gsim c la ora actual exist multiple abordri a acestui subiect. Oricum,
se pare c numrul limbajelor de programare depsete la ora actual cifra de 400.
2) Criteriile dup care poate fi clasificat un limbaj de programare n raport cu altul ar
fi
urmtoarele
:
- flexibilitatea - caracteristic creia i-ar corespunde unui anumit limbaj de
programare de a fi aplicat unei ct mai mare varieti de arhitecturi hardware (ceea ce
poate fi rezumat la portabilitatea pe diverse arhitecturi hardware). Haide s ne punem
ntrebarea ce limbaje de programare vor fi utilizate n cazul calculatoarelor cuantice?
(la ora actual exist cteva n faz experimental, cum ar fi QCL, qGCL i cteva
axate pe programare funcional, de exemplu, QFC, QPL i QML). O alt perspectiv
a flexibilitii ar fi dat de capacitatea de a rezolva o anumit problem prin mai
multe ci distincte. Putem aprecia flexibilitatea prin capacitiatea unui limbaj de
programare de a conlucra cu alte limbaje de programe. De exemplu Java conine
biblioteca JNI ce permite apelarea de funcii scrise ntr-un alt limbaj de programare,
de pild limbajul C sau ASM, sau cazul limbajului Python ce poate fi extins prin
funcii scrise n C sau poate servi ca suport de legare a diverselor alte programe n
alte limbaje, i un alt exemplu-limbajul HTML, ce poate fi descris ca o platform
standard de dezvoltare a paginilor Web pe care pot fi utilizate alte limbaje de script,
de
exemplu
JavaScript,
PHP,
Perl,
etc.
- familia de algoritmi ce pot fi implementai - aceasta fiind practic una din cele mai
importante caracteristici ale unui limbaj de programare. n zilele noastre limbajele de
programare ce au devenit cele mai populare sunt capabilile s implementeze structuri
de
date
de
complexitate
foarte
ridicat.
exemplu ar fi cel al limbajului Java (codul surs este compilat apoi interpretat de
maina virtual Java). Se pare c limbajele de script sunt cele mai puin rapide, i de
aceea multe din scripturile realizate nu sunt deosebit de complexe. Interpretoarele
asigur o portabilitate a codului scris, ns viteza codului produs va fi n principiu mai
mic
dect
n
cazul
programelor
compilate.
- securitatea programelor scrise- i aici ne gndim dac la un anumit program scris ar
putea fi adugat o procedur, nct acesta s schimbe ntr-un mod nedorit i neplcut
funcionarea respectivului program. Trebuie spus c limbajele de script stau cel mai
prost
la
acest
capitol.
3) Limbaje de programare apar datorit factorilor descrii la ncercarea de clasificare
de mai sus. ntotdeauna vor exista idei noi care vin s mbunteasc unii dintre
aceti parametri. i ca exemplu, primul care mi vine n minte, este limbajul C++00X.
Acesta, de fapt o extensie a binecunoscutului limbaj C++, vine ca un nou standard,
aducnd faciliti mai ridicate n ceea ce privete expresivitatea, apropierea de
probleme reale i mbuntirea productivitii de creare a noilor biblioteci. n
contrast,
cine
i
mai
amintete
despre
Algol
sau
COBOL?
4) Rspunsul, dei poate fi dat n mai multe feluri, este formulat la acelai nivel de
simplitate ca i ntrebarea. n primul rnd, fiindc are o problem sau o clas de
probleme pe care le vrea s le rezolve cu ajutorul calculatorului. Un alt rspuns ar fi
c
este
curios
despre
cum
ar
funciona
respectiva
tehnologie.
5) n primul rnd prin atributul de tnr nu m refer neaprat la vrsta biologic,
putnd fi vorba despre contactul unui individ cu un anumit tip de sistem de calcul sau
cu anumite probleme. Oricum, rspunsul la ntrebare l vei gsi cnd o s fii fa n
fa cu situaia respectiv, i dac nu o s l gsii singuri ntr-un timp rezonabil o sa
v
ajute
alii.
i acum o mic ideea despre ce vom discuta n acest blog. Pentru nceput despre
limbajele cele mai populare (C++ i Java), apoi despre altele...
http://manufactoryprogramming.blogspot.ro