Integrert utviklingsmiljø

Et integrert utviklingsmiljø [ 1 ] [ 2 ]​ eller interaktivt utviklingsmiljø , på engelsk Integrated Development Environment ( IDE ), er en dataapplikasjon som tilbyr omfattende tjenester for å lette utvikleren eller programmereren utviklingen av programvare .

Vanligvis består en IDE av en kildekoderedigerer , automatiske byggeverktøy og en debugger . De fleste IDE-er har intelligent kodefullføring ( IntelliSense ). Noen IDE-er inneholder en kompilator , en tolk eller begge deler, for eksempel NetBeans og Eclipse ; andre gjør det ikke, som SharpDevelop og Lazarus .

Grensen mellom en IDE og andre deler av det bredere programvareutviklingsmiljøet er ikke godt definert. Mange ganger, for å forenkle konstruksjonen av det grafiske brukergrensesnittet (GUI), er et versjonskontrollsystem og ulike verktøy integrert. Mange moderne IDE-er har også en klasseleser, objektleser og klassehierarkidiagram for bruk med objektorientert programvareutvikling .

Generelt

IDE-er er designet for å maksimere programmerers produktivitet ved å tilby tett koblede komponenter med lignende brukergrensesnitt. IDEer presenterer et enkelt program der all utvikling finner sted. Generelt tilbyr dette programmet mange funksjoner for å lage, endre, kompilere, distribuere og feilsøke programvare. Dette er i motsetning til å utvikle programvare ved å bruke urelaterte verktøy, som Vi , GNU Compiler Collection (GCC) eller Make .

Et av formålene med IDE-er er å redusere konfigurasjonen som trengs for å gjenoppbygge flere utviklingsverktøy, i stedet for å tilby det samme settet med tjenester som en sammenhengende enhet. Å redusere denne oppsetttiden kan øke utviklingsproduktiviteten, i tilfeller der det går raskere å lære å bruke en IDE enn å manuelt integrere alle verktøyene separat.

Bedre integrasjon av alle utviklingsprosesser gjør det mulig å forbedre den generelle produktiviteten, i stedet for bare å hjelpe med konfigurasjonsinnstillinger. Kode kan for eksempel bygges kontinuerlig mens den redigeres, noe som gir umiddelbar tilbakemelding, for eksempel når det er syntaksfeil. Dette kan hjelpe deg å lære et nytt programmeringsspråk raskere, så vel som tilhørende biblioteker.

Noen IDE-er er spesifikt dedikert til et programmeringsspråk , slik at funksjoner kan være så nærme det språkets programmeringsparadigme som mulig . På den annen side er det mange flerspråklige IDE-er som Eclipse , ActiveState Komodo , IntelliJ IDEA , MyEclipse , Oracle JDeveloper , NetBeans , Codenvy og Microsoft Visual Studio . Xcode , Xojo og Delphi er dedikert til et lukket språk eller typeinnstillinger for programmeringsspråk.

Mens de fleste moderne IDE-er er grafiske, var tekstredigerere (som Turbo Pascal ) populære før vindussystemer som Microsoft Windows og X Window System (X11) ble tilgjengelig. Disse bruker funksjoner via hurtigtaster for å utføre ofte brukte kommandoer eller makroer.

Historisk oversikt

IDE-er var mulig ved utvikling via en datamaskinkonsoll eller terminal. Tidlige systemer kunne ikke støtte dem, fordi programmer ble utarbeidet ved hjelp av flytskjemaer, inntasting av programmer med hullkort (eller papp, etc.) før de ble sendt til en kompilator . Dartmouth BASIC var det første språket som ble opprettet med en IDE (det var også det første som ble designet for å brukes foran konsollen eller terminalen). Denne IDE (del av Dartmouth Time Sharing System ) var kodebasert og kommandobasert, og så derfor ikke mye ut som dagens svært grafiske IDE-er. Imidlertid er integrert redigering, filhåndtering, kompilering, feilsøking og kjørbar på en måte som er i samsvar med moderne IDE-er.

"Maestro I" er et produkt fra Softlab Munich og var det første integrerte utviklingssystemet IDE, [ 3 ] for programvare, opprettet i 1975 . Maestro I ble installert av 22 000 programmerere over hele verden. Frem til 1989 var det 6000 installasjoner i Forbundsrepublikken Tyskland . Maestro var utvilsomt verdensledende på dette feltet på 1970- og 1980 -tallet . En av de siste maestroene jeg kan bli funnet på Computer and Technology Museum i Arlington.

En av de første IDE-ene med et plug-in- konsept var Softbench. I 1995 kommenterte Computerwoche at bruken av en IDE ikke ble godt mottatt av programmerere, siden det ville påvirke kreativiteten deres.

Emner

Visuell programmering

Visuell programmering er et brukerrammeverk der en IDE vanligvis kreves. Visuelle IDE-er lar brukere lage nye programmeringsapplikasjoner på farten, byggeblokker eller noder med kode for å lage flytskjemaer eller strukturdiagrammer som deretter kompileres eller tolkes. Disse flytskjemaene er ofte basert på Unified Modeling Language .

Dette grensesnittet har blitt populært med Lego Mindstorms , og har blitt holdt aktivt av en rekke selskaper som ønsker å utnytte kraften til tilpassede nettlesere som de som er grunnlagt på Mozilla . KTechlab støtter flytkode og er en åpen kildekode IDE og simulator for utvikling av mikrokontrollerprogramvare.

Visuell programmering er også ansvarlig for kraften i programvaredistribusjon ( LabVIEW og EICASLAB programvare). Et tidlig visuelt programmeringssystem, Max, ble modellert etter en analog designet synthesizer som ble utviklet for å bruke sanntids musikkytelse siden 1980- tallet . Et annet tidlig eksempel var Prograph, et strømbasert program som opprinnelig ble utviklet for Macintosh . Det grafiske programmeringsmiljøet "Grape" brukes til å programmere qfix-robotsett .

Denne tilnærmingen brukes også av spesialisert programvare, som Openlab, der sluttbrukeren ønsker full fleksibilitet til et programmeringsspråk, uten den tradisjonelle læringskurven.

Språk støtter

Noen IDE-er støtter flere språk, for eksempel GNU Emacs basert på C og Emacs Lisp , og Eclipse , IntelliJ IDEA , MyEclipse eller NetBeans , alle basert på Java , eller MonoDevelop , basert på C#.

Normalt er støtte for alternative språk ofte gitt av en plugin , slik at de kan installeres i samme IDE, samtidig. [ 4 ] Eclipse og Netbeans har plugins for C / C++ , Ada , (for eksempel AdaGIDE), Perl , Python , Ruby og PHP , som velges fra filutvidelser, miljøer eller prosjektinnstillinger.

Kjennetegn mellom ulike beregningsplattformer

Unix - programmerere kan kombinere POSIX-kommandolinjeverktøy til et komplett utviklingsmiljø, i stand til å utvikle store programmer som Linux -kjernen og dens miljø. [ 5 ] GNU gratis programvareverktøy ( GNU Compiler Collection (GCC), GNU debugger (gdb), GNU make ) er tilgjengelig på mange plattformer, inkludert Windows. [ 6 ] Utviklere som foretrekker kommandolinjeorienterte verktøy kan bruke redaktører med støtte for mange Unix-standarder og GNU byggeverktøy, og bygge en IDE med programmer som Emacs [ 7 ] [ 8 ] [ 9 ] eller Vim . Data Display Debugger er ment å være en avansert grafisk grensesnitt for mange standard tekstbaserte feilsøkingsverktøy . Noen programmerere foretrekker Makefile Management og dets derivater fremfor lignende kodebyggingsverktøy inkludert i en full IDE. For eksempel bruker mange bidrag til PostgreSQL-databaser mark og gdb direkte for å utvikle nye funksjoner. [ 10 ] Selv når du bygger PostgreSQL for Microsoft Windows ved hjelp av Visual C++ , brukes Perl- skript som en erstatning for make , i stedet for å stole på noen IDE-funksjoner. [ 11 ] Noen Linux IDE-er som Atom.io eller Geany prøver å gi et grafisk grensesnitt for tradisjonelle byggeoperasjoner.

På de ulike Microsoft Windows-plattformene blir kommandolinjeverktøy sjelden brukt til utvikling. Som en konsekvens er det mange kommersielle og ikke-kommersielle produkter. Imidlertid har hver og en annen design som ofte skaper inkompatibiliteter. De fleste store Windows-kompilatorleverandører tilbyr fortsatt gratis kopier av kommandolinjeverktøyene sine, inkludert Microsoft ( Visual C++ , Platform SDK , .NET Framework SDK, nmake-verktøy), Embarcadero Technologies (bcc32-kompilator, make-verktøy) .

IDE-er har alltid vært populære på Apple Macintosh Mac OS, og dateres tilbake til Macintosh Programmers' Workshop , Turbo Pascal , THINK Pascal og THINK C-miljøene på midten av 1980-tallet. Fra og med 2015 kan Mac OS X-programmerere velge mellom opprinnelige IDE-er som Xcode og åpen kildekode-verktøy som Eclipse og Netbeans . ActiveState Komodo er en proprietær flerspråklig IDE som støttes på Mac OS.

Med bruken av cloud computing er noen IDE-er tilgjengelige online og kjøres i nettlesere.

Se også

Referanser

  1. Ramos Salavert, Isidro; Lozano Perez, Maria Dolores (2000). Programvare og databaseteknikk: Aktuelle trender . Castilla-La Mancha universitet. ISBN  8484270777 . «6.4 Integrerte utviklingsmiljøer, s. 78». 
  2. Lidia Fuentes, Jos ́e M. Troya og Antonio Vallecillo. "Komponentbasert programvareutvikling" . Avd. språk og informatikk. Universitetet i Malaga. : 16. 
  3. ^ "Interaktives Programmieren als Systems-Schlager" Arkivert 2008-12-21 på Wayback Machine fra Computerwoche ( tysk ).
  4. https://web.archive.org/web/20140310225211/http://flycheck.readthedocs.org/en/latest/manual/introduction.html
  5. Rehman, Christopher Paul, Christopher R. Paul. "Linux-utviklingsplattformen: Konfigurering, bruk og vedlikehold av et komplett programmeringsmiljø." 2002. ISBN 0-13-009115-4 .
  6. "Bruk Emacs med Microsoft Visual C++ ... bruk Emacs som en IDE"
  7. "Emacs: Free Software IDE"
  8. "Bruke Emacs som en Lisp IDE"
  9. "Emacs som en Perl IDE"
  10. "PostgreSQL utvikler vanlige spørsmål"
  11. "PostgreSQL-installasjon fra kildekode på Windows"