Sviluppo dell'ambiente

Nella programmazione di computer , un ambiente di sviluppo è un insieme di strumenti che aumentano la produttività dei programmatori che sviluppano software . Include un editor di testo destinato alla programmazione, funzioni che consentono, con la semplice pressione di un pulsante, di avviare il compilatore o l' editor di collegamenti e un debugger online, che consente di eseguire il programma riga per riga. Alcuni ambienti sono dedicati a un particolare linguaggio di programmazione .

In un ambiente di sviluppo "integrato" (abbreviazione di EDI in francese o IDE in inglese, per ambiente di sviluppo integrato ), gli strumenti sono destinati ad essere utilizzati insieme (il prodotto di uno strumento può fungere da materia prima per un altro strumento). Gli strumenti possono essere integrati fin dall'inizio, cioè sono costruiti allo scopo di essere usati insieme. Può anche essere un insieme di strumenti sviluppati senza collegamento tra loro e integrati a posteriori.

L'obiettivo di un ambiente di sviluppo è aumentare la produttività dei programmatori automatizzando alcune attività e semplificando le operazioni. Gli ambienti di sviluppo mirano anche a migliorare la qualità della documentazione relativa al software in costruzione. Alcuni ambienti di sviluppo offrono anche la possibilità di creare prototipi , pianificare lavori e gestire progetti .

Dal 1980, lo sviluppo e la manutenzione del software sono stati parzialmente automatizzati utilizzando una serie di strumenti: l'ambiente di sviluppo. Gli strumenti dell'ambiente di sviluppo sono un argomento di studio nell'ingegneria del software - know-how dell'ingegneria del software .

Caratteristiche

L' ambiente di sviluppo delle espressioni è apparso negli anni '80 per designare un insieme di strumenti e processi destinati ad assistere e formalizzare il lavoro di creazione di software. L'obiettivo era creare strumenti che assistessero gli sviluppatori in tutte le fasi dello sviluppo del software: definizione, progettazione, programmazione, test e manutenzione. Questi strumenti tengono conto anche dei diversi ruoli all'interno di un team di programmazione: programmatore, manager e responsabile della qualità.

I primi strumenti coprivano le fasi di programmazione e test, mentre sono comparsi strumenti successivi che coprivano anche le fasi di definizione e progettazione. Questa nuova generazione di strumenti di sviluppo, che coprono anche le fasi preliminari della programmazione e orientano lo sviluppatore verso buone pratiche di ingegneria del software , è stata chiamata Computer Aided Software Engineering (abr. CASE ), in francese ingegneria del software assistita da computer.

Un ambiente di sviluppo include in genere gli strumenti necessari per analizzare, scrivere ed eseguire il debug di un programma. Nei modelli integrati , i diversi strumenti hanno un aspetto identico e possono essere interconnessi. Ad esempio, potrebbe essere possibile aprire l' editor di testo o il compilatore dal debugger o persino modificare il codice sorgente in fase di debug direttamente dal debugger.

Un ambiente di sviluppo ha sempre un editor di testo integrato , spesso con l'opzione di sostituirlo con un altro editor. L'editor include tipicamente funzioni di evidenziazione allineate con il linguaggio di programmazione: rientro automatico dei blocchi di codice, marcatura di delimitatori (parentesi o parentesi graffe) ed evidenziazione di parole chiave del linguaggio con colore o caratteri grassi.

Un ambiente di sviluppo può includere anche i seguenti strumenti:

Gli ambienti di sviluppo integrati sono talvolta il risultato di strumenti che offrono un'unica funzione e che i loro autori hanno poi arricchito e fuso con altri strumenti. Può essere uno strumento per creare un'interfaccia grafica o per la manipolazione di database.

Storico

Molte lingue precedenti non avevano un IDE associato, poiché lo sviluppo veniva eseguito tramite diagrammi di flusso, moduli di codifica e schede perforate inviate al computer. Gli IDE sono quindi apparsi con sviluppi "console".

Il primo linguaggio creato - e consegnato - con un EDI è stato quindi il Dartmouth BASIC  (in) nel 1964 , il primo linguaggio progettato per essere utilizzato davanti a un terminale di computer. Il suo IDE era basato su comandi immessi "online": Per tali linguaggi, gli IDE consistevano in un'interfaccia grafica riepilogativa, combinata con un sistema di costruzione (compilazione ed edizione di link) di programmi "per makefile  ": i makefile consentono di descrivere la compilazione e le opzioni di modifica desiderate per la creazione del programma. La sintassi sempre più evoluta di questi makefile ha portato a pseudo-linguaggi sempre più complessi e noiosi, man mano che le loro possibilità sono cresciute (permettono ad esempio di aggiungere strutture di controllo alle istruzioni di compilazione o alla modifica dei link), portando alla creazione di file di configurazione per descrivere e mantenere queste opzioni e per automatizzare il loro concatenamento.

Gli IDE recenti sono progettati per interfacce più avanzate: menu, pulsanti, uso combinato di tastiera/mouse, ecc. Nascondono e controllano i comandi tecnici sottostanti dalle GUI, impedendo così ai programmatori alle prime armi di dover affrontare la sintassi dei makefile ruvida e impegnativa.

Ambienti di sviluppo integrati

Un ambiente di sviluppo integrato è un insieme di strumenti per la programmazione in un determinato linguaggio, distribuiti insieme. Consente di gestire gli strumenti di programmazione da un'interfaccia grafica semplificata. Esistono almeno tanti ambienti di sviluppo integrati quanti sono i linguaggi di programmazione e gli IDE sono spesso dedicati a un determinato linguaggio. Un IDE comprende tipicamente un'interfaccia grafica per lanciare i vari strumenti, un editor per il codice sorgente, un compilatore , un debugger , oltre che, spesso, uno strumento che permette di costruire le interfacce grafiche del software. L'editor offre la normale funzionalità di un editor di testo , il compilatore consente al programmatore di verificare gli errori di sintassi nel codice sorgente e il debugger consente di verificare gli errori di codice.

Visual Studio , Eclipse e IntelliJ IDEA sono ambienti di sviluppo popolari. Ci sono anche editor online come Cloud9 IDE .

Eclipse ti consente di scrivere, compilare, eseguire ed eseguire il debug di applicazioni, tra le altre cose. Il debugger permette di eseguire il programma riga per riga e verificare lo stato delle variabili. Eclipse consente, da una finestra principale di Workbench (workspace) di accedere a diverse prospettive da cui è possibile visualizzare e modificare il codice sorgente del programma. Può essere utilizzato con molti linguaggi di programmazione, il più comunemente usato è Java . Include funzioni destinate ad assistere la creazione di costruzioni comuni del linguaggio Java (pacchetti, classi, ecc.) e una funzione per generare documentazione.

Visual Studio , commercializzato da Microsoft , consente di creare, compilare ed eseguire il debug di programmi. Dal 2002 è destinato alla realizzazione di programmi per la piattaforma Microsoft .NET nei linguaggi Visual Basic , C# , C++ e F# . Ti permette di creare applicazioni web . Oltre al codice sorgente del programma, è possibile modificare pagine Web , fogli di stile e documenti XML da Visual Studio. Consente inoltre di creare interfacce grafiche e include uno strumento di controllo della versione .

Vedi anche

Articoli Correlati

Note e riferimenti

  1. (in) Donald G. Firesmith e B. Henderson-Sellers , The OPEN Process Framework: An Introduction , Pearson Education - 2002 ( ISBN  9780201675108 ) .
  2. (en) Mark Hamilton, Software Development: Building Reliable Systems , Prentice Hall Professional - 1999, ( ISBN  9780130812469 )
  3. (in) Adrian Kingsley-Hughes e Kathie Kingsley-Hughes all'inizio della programmazione , Wiley - 2005 ( ISBN  9780764597480 ) .
  4. (in) Bernhard Westfechtel, Modelli e strumenti per la gestione dei processi di sviluppo , 1646 Numero Springer - 1999 ( ISBN  9783540667568 ) .
  5. (en) Manfred Nagl, Costruire ambienti di sviluppo software strettamente integrati: l'approccio IPSEN , Springer - 1996, ( ISBN  9783540619857 )
  6. Cfr. tra gli altri Rodnay Zaks, Programmazione dello Z80 , Sybex,diciannove ottantuno( Ristampa  3 °  edizione), 620  p..
  7. (en) Albert Endres e Herbert Weber, Software Development Environments and Case Technology: European Symposium, Königswinter, 17-19 giugno 1991 , Springer - 1991, ( ISBN  9783540541943 )
  8. (in) Ralph M. Stair - George Walter Reynolds, Principios de sistemas de información: a enfoque administrativo , Cengage Learning - 2009 ( ISBN  9780324665284 )
  9. (in) Alan Thorn Game Engine Design and Implementation , Jones & Bartlett Learning, 2011 ( ISBN  9780763784515 )
  10. (en) William von Hagen, Ubuntu Linux Bible: With Ubuntu 10.04 LTS , John Wiley & Sons - 2010, ( ISBN  9780470881804 )
  11. (in) Stephen G. Kochan, Programmazione in C , Sams Publishing - 2004 ( ISBN  9780672331411 )
  12. (en) Rober McGovern, Eclipse in action: a guide for Java developer , Manning Publications Co. - 2003, ( ISBN  9781930110960 )
  13. (in) Steve Holzner, Eclipse , O'Reilly Media, Inc. - 2009 ( ISBN  9780596552626 )
  14. (in) Andrew Moore, Visual Studio 2010 All-in-One For Dummies , Wiley - 2010 ( ISBN  9.780.470885581 )