Интерактивті бағдарламалау: Бағдарлама іске қосылғанда жазу әдісі
Interactive programming
Интерактивті бағдарламалау: іске қосылған бағдарламаның өзін жазу арқылы даму. Экстремалды бағдарламалау, жылдам кері байланыс, пакеттік өңдеуден өзгешелік.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Кіріспе
Интерактивті бағдарламалау – бағдарлама іске қосылған кезде оның бөліктерін жазу процесі. Бұл, бағдарлама даму циклдарында жобаланып, кейін қолданылатын интерактивті қосымшаға қарағанда, жұмыс процесінің негізгі интерфейсі ретінде бағдарлама мәтініне баса назар аударады ("әзірлеушіден" ерекшеленетін "пайдаланушыға" қарағанда). Осылайша, бағдарламаны жазу әрекетінің өзі бағдарламаның бір бөлігіне айналады. Бұл, бағдарламаны жазу да, пайдалану да интерактивті түрде жүрмейтін пакеттік өңдеуге толық қарсы келетін, интерактивті есептеудің нақты бір мысалы болып табылады. Экстремалды бағдарламалаудағы жылдам кері байланыс принципі одан да күшейе түсіп, айқындылығы артады. Синонимдері: динамикалық бағдарламалау, қажетті сәтте бағдарламалау, сұхбаттасу арқылы бағдарламалау.
Interactive programming is the procedure of writing parts of a program while it is already active. This focuses on the program text as the main interface for a running process, rather than an interactive application, where the program is designed in development cycles and used thereafter (usually by a so called "user", in distinction to the "developer"). Consequently, here, the activity of writing a program becomes part of the program itself. It thus forms a specific instance of interactive computation as an extreme opposite to batch processing, where neither writing the program nor its use happens in an interactive way. The principle of rapid feedback in extreme programming is radicalized and becomes more explicit. Synonyms: on the fly programming, just in time programming, conversational programming
Қолданылу салалары
Интерактивті бағдарламалау әдістері, ең әсіресе, шешілуі тиіс мәселенің нақты сипаттамасын алдын ала беру мүмкін болмайтын жағдайларда өте пайдалы. Мұндай жағдайларда (ғылыми зерттеулерде мұндай жағдайлар жиі кездеседі) формальді тіл тиісті сұрақ немесе мәселені формулирлеу үшін қажетті ортаны қамтамасыз етеді. Интерактивті бағдарламалау, сондай-ақ, тоқтатпастан қайта жазу қажет болатын қолданбаларда да қолданылған, және Smalltalk тілі осы мүмкіндігімен танымал. Әдетте, динамикалық бағдарламалау тілдері мұндай өзара әрекеттесу үшін ортаны ұсынып, бағдарламаның басқа бөліктері жұмыс істеп тұрғанда прототиптеу және итеративтік, инкременттік әзірлеуге мүмкіндік береді. Бұл мүмкіндік дыбыс дизайны мен алгоритмдік композицияда маңызды қажеттілік болғандықтан, ол бұл салаларда жетілдірілді. Соңғы кезде зерттеушілер осы әдісті сондау алгоритмдерін жасау үшін пайдалануда. Дыбыс және графика үшін динамикалық бағдарламалау тілдерін қолдана отырып, интерактивті бағдарламалау алгоритмдік музыка мен бейнеде, көбінесе тікелей кодтау түрінде импровизациялық орындау стилі ретінде де қолданылады.
Interactive programming techniques are especially useful in cases where no clear specification of the problem that is to be solved can be given in advance. In such situations (which are not unusual in research), the formal language provides the necessary environment for the development of an appropriate question or problem formulation. Interactive programming has also been used in applications that need to be rewritten without stopping them, a feature which the computer language Smalltalk is famous for. Generally, dynamic programming languages provide the environment for such an interaction, so that typically prototyping and iterative and incremental development is done while other parts of the program are running. As this feature is an apparent need in sound design and algorithmic composition, it has evolved significantly there. More recently, researchers have been using this method to develop sonification algorithms. Using dynamic programming languages for sound and graphics, interactive programming is also used as an improvisational performance style live coding, mainly in algorithmic music and video.