Programowanie eksploracyjne
Programowanie eksploracyjne , w przeciwieństwie do implementacji (programowania) , jest ważną częścią cyklu inżynierii oprogramowania : gdy domena nie jest zbyt dobrze zrozumiała lub otwarta, lub nie jest jasne, jakie algorytmy i struktury danych mogą być potrzebne do implementacji, przydatna jest możliwość interaktywnego tworzenia i debugowania programu bez konieczności przechodzenia przez zwykłe ograniczenia cyklu edycja-kompilacja-uruchom-debugowanie. Języki takie jak APL , Cecil , C# , Dylan , Factor , Forth , F # , J , Java , Julia , Lisp , Mathematica , Obliq , Oz , Prolog , Python , REBOL , Perl , R , Ruby , Scala , Self , Smalltalk , Tcl i JavaScript , często w połączeniu ze środowiskiem IDE , zapewniają wsparcie dla programowania eksploracyjnego poprzez interaktywność, dynamikę i rozszerzalność.
Specyfikacja formalna a programowanie eksploracyjne
W przypadku niektórych projektów programistycznych sensowne jest wykonanie analizy wymagań i formalnej specyfikacji . W przypadku innych projektów programistycznych sensowne jest umożliwienie programistom eksperymentowania z technologią i umożliwienie ewolucji specyfikacji oprogramowania w zależności od programowania eksploracyjnego.
Podobieństwo do Breadboardingu
Podobną metodę eksploracji stosuje się w rozwoju elektroniki, zwaną Breadboarding , w której można szybko wypróbować i poprawić różne kombinacje, akceptując kompromis, że wynik jest zdecydowanie tymczasowy.
Zobacz też
Notatki
- ^ przez Microsoft Visual Studio
- ^ poprzez interpreter pętli JShell read-eval-print wprowadzony w wersji 9
- Rajib Mall (1 sierpnia 2004). Podstawy inżynierii oprogramowania . PHI Learning Pvt. z oo str. 32. ISBN 978-81-203-2445-9 .