Programlingvo: Malsamoj inter versioj
[kontrolita revizio] | [kontrolita revizio] |
Enhavo forigita Enhavo aldonita
e spaceto |
Alaudo (diskuto | kontribuoj) Unua prilaboro de la artikolo, rearanĝo de diversaj partoj |
||
Linio 1:
[[Dosiero:C Hello World Program.png||eta|[[Fontkodo]] de la simpla porkomputila programo skribita en [[C (programlingvo)|programlingvo]], kiu printas la frazon "Hello, world" se oni kompilas kaj startas ĝin]]
[[Dosiero:Programming language textbooks.jpg|eta|Lernolibroj pri programado]]▼
'''Programlingvo''' estas artefarita lingvo, kreita por transdoni komandojn al aparatoj, plejofte al [[komputilo]]j. Programlingvoj estas uzataj por krei [[Komputila programo|programojn]] kiuj kontrolas la konduton de ia aparato kaj por formuli precizajn [[Algoritmo|algoritmojn]].▼
▲'''Programlingvo''' estas [[formala lingvo|formala]] [[artefarita lingvo|artefarita]] [[lingvo]], kreita por transdoni [[Komando (komputa)|komandojn]] al
== Klasifiko de programlingvoj ==
Ekzistas multaj sistemoj por klasifiki programlingvojn.
=== Programlingvoj laŭ generacioj ===
Kiam oni komparas programlingvon kontraŭ naturajn lingvojn oni parolas pri kelkaj generacioj:
* Unua-generaciaj lingvoj estas maŝinlingvoj, la lingvoj de la procesoro. Ili estas binaraj kaj malfacilaj por homoj.
* Dua-generaciaj lingvoj estas [[Asembla Komputillingvo|asemblaj lingvoj]]. La ordonoj de la procesoro havas simbolajn nomojn.
* Tria-generaciaj lingvoj estas proceduraj lingvoj kiel [[Fortran (programlingvo)|Fortran]], [[C (programlingvo)|C]], [[Paskalo (programlingvo)|Paskalo]], [[COBOL]], [[Algol]] kaj [[BASIC (programlingvo)|BASIC]].
* Kvara generacio de la lingvoj entenas la lingvojn, kies sintakso similas tiujn de naturaj lingvoj. Multaj el tiuj lingvoj estas niĉaj lingvoj, kiel ekzemple SQL, la lingvo de datumbazoj.
=== Programlingvoj laŭ primara programparadigmo ===
Ankaŭ ekzistas lingvoj, kiuj ne akordiĝas kun tiu ĉi klasifiko. '''[[Objektema programado|Objektemaj lingvoj]]''' kiel [[C++]], [[Ĝavo]] kaj [[Smalltalk]] pritraktas objektojn. Objekto estas instanco (ekzemplero) de klaso. Kaj objektoj havas metodojn, kiujn vi povas voki por peti, ke la objekto faru ion.▼
En komputila scienco ekzistas diversaj paradigmoj pri tio kiel oni aliras kaj efektivigas la programadon. Laŭ tiuj paradigmoj oni povas klasifiki la lingvoj kiel:
▲
* '''[[Ordonema programado|ordonemaj lingvoj]]''', kiel [[C (programlingvo)|C]], [[Ĝavo]], [[Paskalo (programlingvo)|Paskalo]], [[Ada (programlingvo)|Ada]]. Programoj en tiuj lingvoj konsistas el sekvenco de ordonoj kaj la komputilo simple plenumas tiujn ordonojn en la donita (aŭ modifita per alia ordono) sinsekvo.
* '''[[Funkciaj lingvoj]]''', kiel [[Haskell]] kaj [[LISP (programlingvo)|Lisp]]. En funkcia programo la tuta programo estas unuopa esprimo (aŭ formulo), kiun oni devas elkalkuli. Kutime en tiuj lingvoj la programoj similas al matematikaj taskoj, kaj la kompililo plenumas gravan taskon por konverti tiujn sufiĉe formale definitajn taskojn en porkomputilajn ordonojn.
== Populareco de programlingvoj ==
▲[[Dosiero:Programming language textbooks.jpg|eta|Lernolibroj pri programado]]
La plej popularaj programlingvoj laŭ TIOBE indekso de programista komunumo:<ref>{{en}} [http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html TIOBE Programming Community Index for September 2011]</ref>
|