Undersökande programmering

Utforskande programmering , i motsats till implementering (programmering) , är en viktig del av programvaruutvecklingscykeln : när en domän inte är särskilt väl förstådd eller öppen, eller det är oklart vilka algoritmer och datastrukturer som kan behövas för en implementering, det är användbart att interaktivt kunna utveckla och felsöka ett program utan att behöva gå igenom de vanliga begränsningarna i cykeln edit-compile-run-debug. Språk som APL , Cecil , C # , Dylan , Factor , Forth , F # , J , Java , Julia , Lisp , Mathematica , Obliq , Oz , Prolog , Python , REBOL , Perl , R , Ruby , Scala , Self , Smalltalk , och JavaScript , ofta i kombination med en IDE , ger stöd för utforskande programmering via interaktivitet, dynamik och utbyggbarhet.

Formell specifikation kontra utforskande programmering

För vissa programvaruutvecklingsprojekt är det vettigt att göra en kravanalys och en formell specifikation . För andra programvaruutvecklingsprojekt är det vettigt att låta utvecklarna experimentera med tekniken och låta specifikationen för programvaran utvecklas beroende på den utforskande programmeringen.

Likhet med Breadboarding

En liknande metod för utforskning används inom elektronikutveckling, kallad Breadboarding , där olika kombinationer snabbt kan prövas och revideras, och accepterar kompromissen att resultatet definitivt är tillfälligt till sin natur.


Se även

Anteckningar

  1. ^ genom Microsoft Visual Studio
  2. ^ genom sin JShell read-eval-print loop- tolk som introducerades i version 9
  •   Rajib Mall (1 augusti 2004). Grunderna i mjukvaruteknik . PHI Learning Pvt. Ltd. sid. 32. ISBN 978-81-203-2445-9 .