linguaggi di programmazione come Java , PHP e C # costruiscono le applicazioni e siti web che girano sui nostri computer , ma un'altra classe di linguaggi sono spesso usati dietro le quinte per comunicare il progetto e il contesto necessario per costruire le applicazioni . Questi sono noti come linguaggi di modellazione e sono utilizzati per descrivere il disegno generale , l'architettura e requisiti molto grandi progetti di sviluppo . Uno dei linguaggi di modellazione classico è UML , Unified Modeling Language , progettato da Booch , Rumbaugh e Jacobson . Sfondo Foto 
 UML utilizza una serie di diagrammi di concettualizzare e comunicare la progettazione del software a partire dalla panoramica di alto livello verso il basso per i rapporti di classe e del flusso di processo . Ci sono una varietà di tipi di diagrammi , tra cui diagrammi di casi d'uso che descrivono come una persona interagisce con i software, i diagrammi delle classi che descrivono il progetto e la relazione tra gli oggetti utilizzati dal linguaggio di programmazione e diagrammi di sequenza che descrivono il flusso di processo e di comunicazione tra oggetti . Nel loro insieme , diventano un documento completo e dettagliato di progettazione software. 
 Modeling contro procedurali Lingue 
 Linguaggi di modellazione 
 non generano codice di programma . Invece , comunicano disegni e concetti . Alcuni, come pseudocodice e di classe - responsabilità - collaborazione carte , usare parole inglesi per descrivere il loro contenuto . Altri, come UML e entità /relazione diagrammi , usare progetto -come disegni per lo stesso scopo . Spesso alcuni di questi linguaggi di modellazione vengono combinati per creare il documento di progetto del sistema complessivo . 
 
 In contrasto con UML , linguaggi come Java , PHP e C # itemize sequenze dettagliate delle istruzioni necessarie per creare un programma per computer . Codice è scritto usando parole e simboli , di solito organizzati in una serie di file di testo , poi interpretata o tradotta in una lingua riconoscibile macchina . Se il computer di destinazione è un desktop , laptop , server Web o dispositivo mobile, il codice è organizzato in un modo destinato ad essere letto da un computer. 
 Progetto Ruoli 
 < br > 
 In una sequenza tradizionale progetto di software , la squadra deve completare l'analisi e la progettazione prima dell'inizio della programmazione . Dal momento che UML è un linguaggio di design , gli analisti creano i modelli UML e diagrammi come parte della fase di progettazione . Programmazione non inizia fino a quando il progetto viene approvato dalle parti interessate . 
 Destinatari del 
 
 Un'altra differenza tra UML e linguaggi procedurali è la loro destinatari. Gli schemi possono essere creati utilizzando strumenti informatici , e questi strumenti possono anche generare del codice del programma , ma l'obiettivo primario è quello di comunicare concetti di progettazione per gli sviluppatori e clienti . Linguaggi di programmazione procedurali usano parole e simboli che si traducono in uno e zero , leggibili solo dai computer 
 Altre differenze 
 
 Ulteriori differenze tra UML e altre lingue sono: 1.) UML utilizza grafici e disegni , mentre linguaggi procedurali sono di solito a base di testo , 2) UML descrive idee di alto livello , mentre i linguaggi di programmazione itemize dettaglio a basso livello ; 3) UML descrive le idee astratte , mentre i linguaggi di programmazione implementano questi concetti e 4) Le idee comunicate su una pagina di UML può tradurre a diverse migliaia di righe di codice di programma.