Ohjelmointityökalu - Programming tool
| Ohjelmistokehitys |
|---|
Ohjelmointityökalu tai ohjelmistojen kehityksen väline on tietokoneohjelma , joka ohjelmistokehittäjät käyttävät luoda, testata, ylläpitää, tai muutoin tukea muita ohjelmia ja sovelluksia. Termi viittaa yleensä suhteellisen yksinkertaisiin ohjelmiin, joita voidaan yhdistää tehtävän suorittamiseen, aivan kuten fyysisen esineen korjaamiseen voitaisiin käyttää useita käsiä. Perustyökalut ovat lähdekoodieditori ja kääntäjä tai tulkki , joita käytetään kaikkialla ja jatkuvasti. Muita työkaluja käytetään enemmän tai vähemmän riippuen kielestä, kehittämismenetelmistä ja yksittäisestä insinööristä, joita käytetään usein erillisiin tehtäviin, kuten virheenkorjaajaa tai profiilia. Työkalut voivat olla erillisiä ohjelmia, jotka suoritetaan erikseen - usein komentoriviltä - tai ne voivat olla osa yhtä suurta ohjelmaa, jota kutsutaan integroiduksi kehitysympäristöksi (IDE). Monissa tapauksissa, etenkin yksinkertaisemmassa käytössä, käytetään työkalun sijasta yksinkertaisia ad hoc -tekniikoita, kuten tulostuksen virheenkorjausta virheenkorjaimen käyttämisen sijaan, manuaalista ajoitusta (koko ohjelmasta tai koodiosasta) profiloijan sijaan tai seurantavirheitä tekstitiedosto tai laskentataulukko vianseurantajärjestelmän sijasta.
Työkalujen ja sovellusten välinen ero on hämärä. Esimerkiksi kehittäjät käyttävät aina yksinkertaisia tietokantoja (kuten tiedosto, joka sisältää luettelon tärkeistä arvoista ) työkaluina. Täydellistä tietokantaa pidetään kuitenkin yleensä sovelluksena tai ohjelmistona. Tietokoneavusteisten ohjelmistojen suunnittelutyökaluja (CASE) etsittiin monien vuosien ajan. Onnistuneet työkalut ovat osoittautuneet vaikeiksi. Jossain mielessä CASE -työkalut korostivat suunnittelua ja arkkitehtuurin tukea, kuten UML: ää. Mutta menestyneimmät näistä työkaluista ovat IDE: t.
Ohjelmointityökalujen käyttö
Käännös ihmisen kieleltä tietokoneen kielelle
Nykyaikaiset tietokoneet ovat hyvin monimutkaisia, ja niiden tuottavaan ohjelmointiin tarvitaan erilaisia abstraktioita. Esimerkiksi ohjelmoija kirjoittaa ohjelman binääriesityksen sijaan ohjelman ohjelmointikielellä, kuten C, Java tai Python. Ohjelmointityökalut, kuten kokoonpanijat , kääntäjät ja linkittimet, kääntävät ohjelman ihmisen kirjoittamasta ja luettavasta lähdekielestä tietokoneen suorittamiin bitteihin ja tavuihin. Tulkit tulkitsevat ohjelman lennossa halutun käyttäytymisen aikaansaamiseksi.
Nämä ohjelmat suorittavat monia hyvin määriteltyjä ja toistuvia tehtäviä, jotka olisivat kuitenkin aikaa vieviä ja alttiita virheille, kun ihminen suorittaa ne, kuten ohjelman osien asettaminen muistiin ja viittausten korjaaminen ohjelman osien välillä kuten linkittäjä. Toisaalta kääntäjien optimointi voi suorittaa monimutkaisia muunnoksia lähdekoodissa parantaakseen suorituksen nopeutta tai muita ohjelman ominaisuuksia. Näin ohjelmoija voi keskittyä enemmän ohjelman korkeamman tason, käsitteellisiin näkökohtiin huolehtimatta sen koneen yksityiskohdista, jolla se toimii.
Ohjelmatietojen asettaminen ihmisten saataville
Ohjelmiston monimutkaisuuden vuoksi useimpia ohjelmia ei ole mahdollista ymmärtää yhdellä silmäyksellä edes kokeneimmalle ohjelmistokehittäjälle. Korkean tason ohjelmointikielien abstraktiot vaikeuttavat myös ohjelmoijan kirjoittaman lähdekoodin ja ohjelman varsinaisen toiminnan välisen yhteyden ymmärtämistä. Ohjelmistokehittäjä etsii ohjelmista virheitä ja estää uusien virheiden luomisen ohjelman pidentämisessä käyttämällä ohjelmointityökaluja visualisoidakseen kaikenlaista tietoa ohjelmista.
Esimerkiksi virheenkorjaimen avulla ohjelmoija voi poimia tietoja käynnissä olevasta ohjelmasta sen ohjelmointiin käytetyn lähdekielen perusteella. Virheenkorjaaja voi laskea muuttujan arvon lähdeohjelmassa betonikoneen tilasta käyttämällä kääntäjän tallentamia tietoja. Muistin virheenkorjaajat voivat osoittaa suoraan kyseenalaisia tai täysin vääriä muistin käyttöoikeuksia käynnissä olevista ohjelmista, jotka voivat muuten jäädä havaitsematta ja ovat yleinen ohjelmahäiriöiden lähde.
Luettelo työkaluista
Ohjelmistotyökaluja on monessa muodossa:
- Binaarisen yhteensopivuuden analysointityökalut
- Virhetietokannat : Ongelmanseurantajärjestelmien vertailu - Sisältää vikaseurantajärjestelmät
- Rakennustyökalut: Rakenna automaatio , Luettelo rakennusautomaatio -ohjelmistoista
- Puhelukaavio
- Koodin kattavuus : Koodin kattavuus#Ohjelmistokoodin kattavuustyökalut .
- Koodin tarkistus : Luettelo työkaluista koodin tarkistamiseen
- Koodinjakosivustot : Freshmeat , Krugle , Sourceforge , GitHub . Katso myös koodihakukoneet .
- Kokoamis- ja linkitystyökalut : GNU -työkaluketju , gcc , Microsoft Visual Studio , CodeWarrior , Xcode , ICC
- Debuggers : Debugger#Luettelo debuggereista . Katso myös Virheenkorjaus .
- Purkimet : Yleensä käänteiset työkalut.
- Dokumentaatiogeneraattorit : Dokumentaatiogeneraattorien vertailu , help2man, Plain Old Documentation , asciidoc
- Muodolliset menetelmät : Matemaattiset tekniikat määrittelyyn, kehittämiseen ja todentamiseen
- GUI -rajapintageneraattorit
- Kirjastorajapinnan generaattorit: SWIG
- Integraatiotyökalut
- Muistin virheenkorjaimia käytetään usein ohjelmointikielissä (kuten C ja C ++ ), jotka mahdollistavat manuaalisen muistinhallinnan ja siten muistivuotojen ja muiden ongelmien mahdollisuuden. Ne ovat myös hyödyllisiä muistin käytön tehokkuuden optimoimiseksi. Esimerkkejä: dmalloc , sähköaita , Vakuutus ++ , Valgrind
- Parser -generaattorit : jäsentäminen#Parser -kehitysohjelmisto
- Suoritusanalyysi tai profilointi: Luettelo suoritusanalyysityökaluista
- Versionhallinta : Luettelo tarkistuksenhallintaohjelmistosta , Versionhallintaohjelmiston vertailu
- Skriptikielet : PHP , Awk , Perl , Python , REXX , Ruby , Shell , Tcl
- Haku: grep , find
- Lähdekoodi Kloonit/päällekkäisyydet Löytäminen: Päällekkäinen koodi#Työkalut
- Lähdekoodieditori
- Lähdekoodin muotoilu : sisennys , kauniit tulostimet , kaunistajat , minifikat
- Lähdekoodin luontityökalut: Automaattinen ohjelmointi#Toteutukset
- Staattinen koodianalyysi : nukka , Luettelo staattisen koodianalyysin työkaluista
- Yksikkötestaus: Luettelo yksikkötestauskehyksistä
IDE: t
Integroidut kehitysympäristöt yhdistävät monien työkalujen ominaisuudet yhteen pakettiin. Ne helpottavat esimerkiksi tiettyjen tehtävien suorittamista, kuten sisällön etsimistä vain tietyn projektin tiedostoista. IDE: itä voidaan käyttää esimerkiksi yritystason sovellusten kehittämiseen.
Tästä integroitujen kehitysympäristöjen vertailusta löytyy eri ohjelmointikielien IDE -piirteitä .
Katso myös
- Tietokoneavusteinen ohjelmistotuotanto työkalut
- Tietokone Tiede
- Määritysjärjestelmä
- Skriptikieli
- Ohjelmistokehityssarja
- Ohjelmistosuunnittelu ja luettelo ohjelmistosuunnittelun aiheista
- Ohjelmistojärjestelmät
- Työkalusarjat käyttäjien innovaatioihin
Viitteet
- Ohjelmistokehitystyökalut Petascale Computing Workshop 2007: lle
- Kernighan, Brian W .; Plauger, PJ (1976), Ohjelmistotyökalut , Addison-Wesley, s. 352 , ISBN 0-201-03669-X
Ulkoiset linkit
Media, joka liittyy Wikimedia Commonsin
ohjelmointityökaluihin