Classificazioni di linguaggi di alto livello in Programmazione

June 15

Classificazioni di linguaggi di alto livello in Programmazione


linguaggi di alto livello creare programmi che sono più facili per un umano decifrare, al contrario di linguaggi di basso livello, che una macchina può facilmente eseguire. Essi possono essere classificati per paradigmi, cioè, classificazioni di astrazioni utilizzati per comprendere la struttura di controllo del linguaggio. I linguaggi di programmazione non "scendono" da altre lingue. Tuttavia, progettisti di linguaggi in prestito concetti e la sintassi da altre lingue. Questo rende nuovi linguaggi facile da imparare, una volta che hai imparato il paradigma di base.

Digitando lingua

L'approccio alla digitazione lingua è diversa per lingua. Digitando riferisce alla classificazione dei dati come un tipo, e se un tipo di dati può essere trattato come un altro tipo di dati da un programma. Per esempio, un numero qualsiasi carattere alfanumerico o true / false valore è rappresentato da un valore binario. Pertanto, senza digitare, si potrebbe fare una espressione giuridica che calcola il valore del simbolo "!" diviso per 2. lingue digitati evitare questo, e statico-tipo lingue prova a digitare prima che il programma esegue, in genere quando compilato.

Compilato e interpretata Lingue

La compilazione di un linguaggio converte in codice macchina, e linguaggi compilati sono progettati per essere eseguito in questo modo. Al contrario, un linguaggio interpretato corre a causa di un programma interprete analizza la sintassi del linguaggio e segue gli ordini logici che trova, senza la necessità di compilarlo in anticipo. La distinzione tra linguaggi compilati ed interpretati è soprattutto una questione di preferenza del designer lingua - in teoria, qualsiasi lingua può essere compilato o interpretato. linguaggi interpretati sono anche chiamati "linguaggi di scripting." C ++, la maggior parte dei dialetti BASIC e Common Lisp sono tutti i linguaggi compilati. Perl e Python sono interpretati lingue. Java combina entrambi i paradigmi compilati e interpretati, in cui il normale codice Java viene compilato in bytecode Java, che viene poi interpretato dalla Java Virtual Machine.

Dichiarativa vs Imperativo

Linguaggi di programmazione in grado di incarnare paradigmi dichiarativi o imperative: guidato da logica computazionale o flusso di controllo. Lingue progettati con il paradigma dichiarativo specificano ciò che una macchina deve compiere, senza necessariamente affermando come dovrebbe essere fatto. Essi comprendono linguaggi dedicati a uno specifico dominio del problema, ad esempio HTML, e linguaggi di programmazione funzionale senza un persistente stato, come Lisp. Il paradigma imperativo, invece, tratta un programma come una serie di comandi che modificano lo stato del programma. linguaggi procedurali come il C sono di importanza fondamentale, e linguaggi strutturati, come Java, utilizzano lo stile imperativo. Alcuni linguaggi, come quelli trovati in un makefile usato per costruire i programmi, utilizzare entrambi gli stili dichiarative e imperativo.

Strutturata e Object-Oriented

Una classe speciale di linguaggi imperativi, linguaggi strutturati dividere la logica del programma in sottosezioni discreti per ridurre "spaghetti code", o la logica casuale salta parti difficili da seguire del programma. L'approccio strutturato divenne solidificato dalla programmazione orientata agli oggetti, che ha diviso frammenti di codice in classi e metodi. Java e C ++ sono linguaggi di programmazione orientati agli oggetti.

metaprogrammazione

"Metaprogrammazione" si riferisce ai programmi che agiscono su altri programmi. Alcune lingue sono progettati specificamente per metaprogrammazione. La lingua Crea, per esempio, è un linguaggio di scripting semplice che riunisce e gestisce programmi scritti in linguaggi compilati come C C ++ e Python presentano anche caratteristiche metaprogrammazione.