| dbpprop:abstract
|
- In computer science, declarative programming is a programming paradigm that expresses the logic of a computation without describing its control flow. Many languages applying this style attempt to minimize or eliminate side effects by describing what the program should accomplish, rather than describing how to go about accomplishing it. This is in contrast with imperative programming, which requires an explicitly provided algorithm. Declarative programming often considers programs as theories of a formal logic, and computations as deductions in that logic space. Declarative programming has become of particular interest recently, as it may greatly simplify writing parallel programs . Common declarative languages include those of regular expressions, logic programming and functional programming.
- Die deklarative Programmierung ist ein Programmierparadigma, bei dem die Beschreibung des Problems im Vordergrund steht. Der Lösungsweg wird dann automatisch ermittelt. Zu den deklarativen Programmiersprachen gehören: funktionale Sprachen logische Sprachen funktional-logische Sprachen (z. B. Babel, Escher, Curry, Oz) Datenflusssprachen (z. B. Val oder Linda) Synchrone Programmiersprachen Aufbauwerkzeuge Transformationssprachen Abfragesprachen Im Gegensatz zur imperativen Programmierung, bei der das Wie im Vordergrund steht, fragt man in der deklarativen Programmierung nach dem Was, das berechnet werden soll. Der Unterschied soll an folgendem populären Beispiel demonstriert werden.
- Deklarativní programování je založeno na myšlence programování aplikací pomocí definic co se má udělat a ne jak se to má udělat. Opakem tohoto principu je imperativní programování popisující jednotlivé úkony pomocí algoritmů. Zjednodušeně to lze popsat tak, že imperativní programy obsahují algoritmy, kterými se dosáhne chtěný cíl, zatímco deklarativní jazyky specifikují cíl a algoritmizace je ponechána programu (interpretu) daného jazyka.
- La Programación Declarativa, es un paradigma de programación que está basado en el desarrollo de programas especificando o "declarando" un conjunto de condiciones, proposiciones, afirmaciones, restricciones, ecuaciones o transformaciones que describen el problema y detallan su solución. La solución es obtenida mediante mecanismos internos de control, sin especificar exactamente cómo encontrarla. No existen asignaciones destructivas, y las variables son utilizadas con Transparencia referencial
- La programmation déclarative est un paradigme de programmation. Il consiste à créer des applications sur la base de composants logiciels indépendant du contexte et ne comportant aucun état interne. Autrement dit, l'appel d'un de ces composants avec les mêmes arguments produit exactement le même résultat, quel que soit le moment et le contexte de l'appel. En programmation déclarative, on décrit le quoi, c'est-à-dire le problème. Par exemple, les pages HTML sont déclaratives car elles décrivent ce que contient une page (texte, titres, paragraphes, etc. ) et non comment les afficher (positionnement, couleurs, polices de caractères, etc.). Alors qu'en programmation impérative, on décrit le comment, c'est-à-dire la solution. Il existe plusieurs formes de programmation déclarative : la programmation descriptive, à l'expressivité réduite, qui permet de décrire des structures de données, la programmation fonctionnelle, qui perçoit les applications comme un ensemble de fonctions mathématiques, la programmation logique, pour laquelle les composants d'une application sont des relations logiques. la programmation par contraintes.
- Nell'uso corrente il termine programmazione dichiarativa può avere due diversi significati: Nel primo significato si intende un programma che descrive a cosa una certa entità assomiglia, piuttosto che prescrivere come un'entità può essere creata. Ad esempio le pagine web HTML sono dichiarative, perché descrivono cosa la pagina dovrebbe contenere — titolo, testo, immagini — ma non come si deve fare per visualizzare la pagina sullo schermo del computer. Altri linguaggi, come il Fortran, il C e Java si basano su un diverso approccio, richiedendo al programmatore di implementare specifici algoritmi esecutivi. In sintesi, i programmi imperativi definiscono in modo esplicito un algoritmo per conseguire uno scopo, mentre i programmi dichiarativi definiscono in modo esplicito soltanto lo scopo da raggiungere, lasciando che l'implementazione dell'algoritmo sia realizzata dal software di supporto (per esempio, un'istruzione select di SQL specifica le proprietà dei dati che devono essere estratti da un database, ma NON i dettagli del processo di estrazione vero e proprio). Nel secondo significato si intende un programma scritto utilizzando un linguaggio di tipo puramente funzionale, logico, o a vincoli. La locuzione "linguaggio dichiarativo" si applica talvolta a tutto l'insieme di queste tipologie di linguaggi di programmazione, presi in gruppo e considerati come antitetici rispetto ai linguaggi imperativi. In una certa misura queste due definizioni si sovrappongono. In particolare la programmazione a vincoli e, in minor misura, la programmazione logica, si focalizzano sulla descrizione delle proprietà della soluzione desiderata (il cosa), lasciando indeterminato l'algoritmo da usare per trovare la soluzione (il come). Tuttavia la maggior parte dei linguaggi a vincoli e logici sono in grado di descrivere gli algoritmi ed i dettagli dell'implementazione dei metodi, e quindi non possono rientrare nella categoria dei dichiarativi veri e propri. Analogamente, è possibile scrivere programmi in stile dichiarativo anche usando un linguaggio di tipo imperativo, di solito ricorrendo alla tecnica dell'incapsulamento. I dettagli delle operazioni da eseguire sono inglobati all'interno di una libreria o di un framework. Un esempio è JUnit, framework della famiglia Java, che permette, previa una semplice definizione, di registrare i blocchi di programma da testare. In un programma dichiarativo si definiscono le strutture di dati che possono essere elaborate dagli algoritmi standardizzati dal linguaggio per produrre i risultati desiderati. Un linguaggio dichiarativo, come ogni altro linguaggio, definisce una propria sintassi mediante la quale le parole chiave possono essere combinate, ed una semantica che descrive l'output ottenuto utilizzando una certa sequenza di comandi.
- 宣言型プログラミング(英: Declarative programming)は、プログラミングパラダイムの名称だが、2種類の意味がある。第一の意味は、処理方法ではなく対象の性質などを宣言することでプログラミングするパラダイムを意味する。第2の意味は、純粋関数型プログラミング、論理プログラミング、制約プログラミングの総称である。
- In de informatica worden computertalen ingedeeld in declaratieve talen en imperatieve talen. Heel kort gezegd is het verschil dat men in een declaratieve taal opschrijft wat er aan de hand is, en in een imperatieve taal hoe iets moet gebeuren. Een volkomen helder onderscheid is niet te maken. Een taal is declaratief als de basiselementen geen opdrachten zijn, maar beschrijvingen die tot ingewikkelder beschrijvingen worden samengesteld. Daarmee is nog niets gezegd over de aard van die beschrijvingen. Er is daarom een groot spectrum aan declaratieve talen. Naar vorm zijn tekstuele en visuele talen te onderscheiden, qua doel zijn onder andere algebra's, logica's, opmaaktalen, documentformaten en modelleertalen bekend. Omdat vorm en doel samenhangen is het niet zinvol om alle mogelijke combinaties te behandelen. Verderop worden de volgende soorten besproken: Tekstuele talen: talen uit de wiskunde: logica en algebra markuptalen documentformaten Visuele talen: modelleertalen symbolische en representerende visuele programmeertalen Een boodschappenlijstje dat volgens vaste regels opgesteld is, vormt een eenvoudig voorbeeld van imperatieve taal. Een imperatieve taal hoeft dus geen programmeertaal te zijn, en een programmeertaal hoeft niet imperatief te zijn. Toch zijn de meest bekende imperatieve talen programmeertalen, zie daarom imperatief programmeren voor dit onderwerp. Ook declaratieve talen hoeven niets met computers te maken te hebben: een plattegrond kan een declaratieve taaluiting zijn, evenzo een gestructureerde beschrijving van een supermarkt of van het logistieke proces dat zich daar afspeelt. Op de computer zijn HTML-pagina's, tekst- en databasebestanden en vele andere gebaseerd op declaratieve talen. Een zuiver imperatieve taal is onmogelijk: het imperatieve boodschappenlijstje moet noodzakelijkerwijs de boodschappen omschrijven, of specificeren hoe ze te vinden zijn; evenzo is een programma een tekstuele of visuele declaratie van een gewenst elektronisch proces. Een taal in algemene zin kan wél volledig declaratief zijn, bij een computertaal is dat minder duidelijk: elke declaratie impliceert immers een opdracht aan de computer om iets weer te geven. Dat aspect is bij veel bestanden echter uitbesteed aan het programma waarmee het bestand geopend wordt. Zo is een hyperlink wel een imperatief element in HTML, maar het wordt aan de webbrowser overgelaten om daar al dan niet iets mee te doen, daarom wordt wordt HTML gewoonlijk toch als declaratief beschouwd. Wel bevatten veel imperatieve talen voorzieningen met een declaratief karakter, en omgekeerd.
- Programação declarativa é um paradigma de programação baseado em programação funcional, programação lógica ou programação restritiva). Tal termo é utilizado para discernir tais linguagens em relação à linguagens de programação imperativa. Outra definição determina que um programa é declarativo se descreve o que e não como seus procedimentos funcionam. Dessa forma, linguagens de marcação são declarativas pois descrevem o que são suas estruturas e não como elas serão utilizadas. Tal definição foge do escopo pois não trata-se de linguagens de programação. Em particular, a programação restritiva e a programação lógica descrever propriedades da solução desejada, não especificando como o algoritmo em si deve agir. Apesar disso a maioria das linguagens desse paradigmas permitem que os algoritmos sejam implementados com detalhes, então não constituem uma linguagem declarativa pura por definição. Similarmente, é possível escrever programas de forma declarativa utilizando linguagens de programação imperativas. Isso pode ser obtido utilizando métodos como encapsulamento para esconder detalhes de implementação fora de uma biblioteca. linguagens funcionais que admitem tal abordagem incluem Erlang, Haskell e Lisp. Linguagens lógicas que admitem tal abordagem incluem Prolog e Mercury. Linguagens restritivas que admitem tal abordagem incluem Oz.
- Декларативное программирование — термин с двумя различными значениями. Согласно первому определению, программа «декларативна», если она описывает каково́ нечто, а не как его создать. Например, веб-страницы на HTML декларативны, так как они описывают что должна содержать страница, а не как отображать страницу на экране. Этот подход отличается от языков императивного программирования, требующих от программиста указывать алгоритм для исполнения. Согласно второму определению, программа «декларативна», если она написана на исключительно функциональном, логическом или константном языке программирования. Выражение «декларативный язык» иногда употребляется для описания всех таких языков программирования как группы, чтобы подчеркнуть их отличие от императивных языков. "Это [декларативное] программирование подразумевает использование данных, а не написание кода для того, чтобы заставить приложение или компонент выполнить что-либо. Написание исходного кода иногда называют императивным программированием. [... ] Я считаю, что со временем декларативное программирование получит намного большее распространение, чем сейчас. Примеры подобных технологий уже сейчас можно увидеть в Microsoft ASP. NET и Microsoft Windows Communication Foundation. Даже в Microsoft Windows Presentation Foundation программисты могут разрабатывать пользовательский интерфейс, объявляя (декларируя) его разметку и поведение, используя язык разметки XAML."
- Deklarativ programmering är samlingsnamnet för funktionell programmering och logikprogrammering. Dessa utmärks av att program innehåller deklarationer av funktioner definierade i termer av varandra, och företrädesvis är rekursiva. En programkörning är en beräkning av ett uttryck. Den dator som sist och slutligen utför beräkningen är bortabstraherad.
- Декларативне програмування — парадигма програмування відповідно до якої, програма описує, який результат необхідно отримати, замість описання послідовності отримання цього результату. Наприклад, веб-сторінки HTML — декларативні, оскільки вони описують, що містить сторінка та що має відображатись — заголовок, шрифт, текст, зображення — але не містить інструкцій як її слід відображати. Ця парадигма мов програмування відмінна від імперативних мов програмування, таких як, наприклад, Фортран, C, і Java, які вимагають від розробника детального описання алгоритма отримання результатів. Стисло кажучи, для отримання результатів, імперативні програми явно конкретизують алгоритм, а декларативні — явно конкретизують мету і залишають реалізацію алгоритму на допоміжному програмному забезпеченні (наприклад, інструкція вибірки SQL конкретизує властивості даних, які слід отримати від бази даних, але не процес отримання цих даних). Відповідно до іншого визначенню, програма «декларативна», якщо її написано винятково функціональною мовою програмування, логічною мовою програмування, або мовою обмежень. Назва «Декларативна мова» іноді використовується, щоб згрупувати всі ці мови програмування та, протиставити їх імперативним мовам програмування. Ці два визначення частково перекриваються. Зокрема, програмування обмеженнями і, до меншого ступеня, логічне програмування, зосереджуються на описі властивостей бажаного рішення (що), залишаючи невизначеним фактичний алгоритм, який необхідно використати для знаходження рішення (як). Проте, більшій мірі, мови логічного програмування, і, в меншій мірі, мови обмеження можуть описати алгоритми і деталі реалізації, будучи, таким чином не строго декларативними за першим визначенням.
- 宣告式編程是一種編程典範,採用了和指令式編程對立的方向。它描述目標的性質,讓電腦明白目標是甚麼。 宣告式編程透過函數、推論規則或项重写(term-rewriting)規則,來描述變數之間的關係。它的語言執行器(編譯器或解释器)採用了一個固定的算法,以從這些關係產生結果。 宣告式編程語言通常用作解決人工智能和約束滿足問題。
|
| rdfs:comment
|
- In computer science, declarative programming is a programming paradigm that expresses the logic of a computation without describing its control flow. Many languages applying this style attempt to minimize or eliminate side effects by describing what the program should accomplish, rather than describing how to go about accomplishing it. This is in contrast with imperative programming, which requires an explicitly provided algorithm.
- Die deklarative Programmierung ist ein Programmierparadigma, bei dem die Beschreibung des Problems im Vordergrund steht. Der Lösungsweg wird dann automatisch ermittelt. Zu den deklarativen Programmiersprachen gehören: funktionale Sprachen logische Sprachen funktional-logische Sprachen (z. B. Babel, Escher, Curry, Oz) Datenflusssprachen (z. B.
- Deklarativní programování je založeno na myšlence programování aplikací pomocí definic co se má udělat a ne jak se to má udělat. Opakem tohoto principu je imperativní programování popisující jednotlivé úkony pomocí algoritmů. Zjednodušeně to lze popsat tak, že imperativní programy obsahují algoritmy, kterými se dosáhne chtěný cíl, zatímco deklarativní jazyky specifikují cíl a algoritmizace je ponechána programu (interpretu) daného jazyka.
- La Programación Declarativa, es un paradigma de programación que está basado en el desarrollo de programas especificando o "declarando" un conjunto de condiciones, proposiciones, afirmaciones, restricciones, ecuaciones o transformaciones que describen el problema y detallan su solución. La solución es obtenida mediante mecanismos internos de control, sin especificar exactamente cómo encontrarla.
- La programmation déclarative est un paradigme de programmation. Il consiste à créer des applications sur la base de composants logiciels indépendant du contexte et ne comportant aucun état interne. Autrement dit, l'appel d'un de ces composants avec les mêmes arguments produit exactement le même résultat, quel que soit le moment et le contexte de l'appel. En programmation déclarative, on décrit le quoi, c'est-à-dire le problème.
- Nell'uso corrente il termine programmazione dichiarativa può avere due diversi significati: Nel primo significato si intende un programma che descrive a cosa una certa entità assomiglia, piuttosto che prescrivere come un'entità può essere creata. Ad esempio le pagine web HTML sono dichiarative, perché descrivono cosa la pagina dovrebbe contenere — titolo, testo, immagini — ma non come si deve fare per visualizzare la pagina sullo schermo del computer.
- 宣言型プログラミング(英: Declarative programming)は、プログラミングパラダイムの名称だが、2種類の意味がある。第一の意味は、処理方法ではなく対象の性質などを宣言することでプログラミングするパラダイムを意味する。第2の意味は、純粋関数型プログラミング、論理プログラミング、制約プログラミングの総称である。
- In de informatica worden computertalen ingedeeld in declaratieve talen en imperatieve talen. Heel kort gezegd is het verschil dat men in een declaratieve taal opschrijft wat er aan de hand is, en in een imperatieve taal hoe iets moet gebeuren. Een volkomen helder onderscheid is niet te maken. Een taal is declaratief als de basiselementen geen opdrachten zijn, maar beschrijvingen die tot ingewikkelder beschrijvingen worden samengesteld.
- Programação declarativa é um paradigma de programação baseado em programação funcional, programação lógica ou programação restritiva). Tal termo é utilizado para discernir tais linguagens em relação à linguagens de programação imperativa. Outra definição determina que um programa é declarativo se descreve o que e não como seus procedimentos funcionam.
- Декларативное программирование — термин с двумя различными значениями. Согласно первому определению, программа «декларативна», если она описывает каково́ нечто, а не как его создать.
- Deklarativ programmering är samlingsnamnet för funktionell programmering och logikprogrammering. Dessa utmärks av att program innehåller deklarationer av funktioner definierade i termer av varandra, och företrädesvis är rekursiva. En programkörning är en beräkning av ett uttryck. Den dator som sist och slutligen utför beräkningen är bortabstraherad.
- Декларативне програмування — парадигма програмування відповідно до якої, програма описує, який результат необхідно отримати, замість описання послідовності отримання цього результату.
- 宣告式編程是一種編程典範,採用了和指令式編程對立的方向。它描述目標的性質,讓電腦明白目標是甚麼。 宣告式編程透過函數、推論規則或项重写(term-rewriting)規則,來描述變數之間的關係。它的語言執行器(編譯器或解释器)採用了一個固定的算法,以從這些關係產生結果。 宣告式編程語言通常用作解決人工智能和約束滿足問題。
|