In computer science, declarative programming is a programming paradigm—a style of building the structure and elements of computer programs—that expresses the logic of a computation without describing its control flow. Declarative programming often considers programs as theories of a formal logic, and computations as deductions in that logic space. Declarative programming may greatly simplify writing parallel programs.

Property Value
dbo:abstract
  • In computer science, declarative programming is a programming paradigm—a style of building the structure and elements of computer programs—that expresses the logic of a computation without describing its control flow. Many languages that apply this style attempt to minimize or eliminate side effects by describing what the program must accomplish in terms of the problem domain, rather than describe how to accomplish it as a sequence of the programming language primitives (the how being left up to the language's implementation). This is in contrast with imperative programming, which implements algorithms in explicit steps. Declarative programming often considers programs as theories of a formal logic, and computations as deductions in that logic space. Declarative programming may greatly simplify writing parallel programs. Common declarative languages include those of database query languages (e.g., SQL, XQuery), regular expressions, logic programming, functional programming, and configuration management systems. (en)
  • 25بك المحتوى هنا ينقصه الاستشهاد بمصادر. يرجى إيراد مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (فبراير 2016) في علم الحاسوب، البرمجة التعريفية هي واحدة من أنماط البرمجة وهي تعبّر عن منطق البرنامج دون شرح تدفق السيطرة. الكثير من لغات البرمجة تلجأ لهذا النمط كي تقلل أو تلغي أي أعراض جانبية من خلال وصف ماذا يجب على البرنامج أن ينجزه بدلا من التطرق لكيفة إنجازه. يأتي هذا النمط في البرمجة على النقيض من البرمجة الأمرية والتي تتطلب توفير خوارزمية واضحة. أصبحت البرمجة التعريفية تلقى رواجا أكثر في الفترة الأخيرة حيث أنها أظهرت قدرة على تبسيط كتابة البرامج المتوازية. تشمل لغات البرمجة التعريفية أنواع مثل: التعابير النمطية والبرمجة المنطقية والبرمجة الوظيفية. * 32xبوابة برمجة الحاسوب * 32xبوابة معلوماتية 25بك هذه بذرة مقالة عن برمجيات الحاسوب بحاجة للتوسيع. شارك في تحريرها. (ar)
  • Die deklarative Programmierung ist ein Programmierparadigma, bei dem die Beschreibung des Problems im Vordergrund steht. Der Lösungsweg wird dann automatisch ermittelt. 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. Bekannte Vertreter deklarativer Programmiersprachen sind Haskell, Lisp, Prolog, XAML und im weiteren Sinne auch SQL und XSLT. Den deklarativen Sprachen stehen die weiter verbreiteten imperativen Sprachen wie C, C++ oder Java gegenüber. Die Unterschiede der beiden Herangehensweisen werden bei der Implementierung eines Algorithmus am deutlichsten, den man als Kombination von Arbeits- und Steuermechanismus betrachten kann: * Deklarative Sprachen ermöglichen eine Trennung der beiden Bestandteile. * Dagegen ist bei Verwendung einer imperativen Programmiersprache eine Trennung von Arbeits- und Steuermechanismus kaum möglich. Imperative Sprachen beschreiben Berechnungsabläufe; damit lassen sich imperative Programme als Anweisungen an die Maschine verstehen, auf der sie ablaufen. (de)
  • La programación declarativa, en contraposición a la programación imperativa, 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 (tan sólo se le indica a la computadora qué es lo que se desea obtener o qué es lo que se está buscando). No existen asignaciones destructivas, y las variables son utilizadas con transparencia referencial. (es)
  • La programmation déclarative est un paradigme de programmation. Elle consiste à créer des applications sur la base de composants logiciels indépendants 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 (par exemple, avec le C ou Java), on décrit le comment, c'est-à-dire la structure de contrôle correspondant à la solution. C'est une forme de programmation sans effets de bord, ayant généralement une correspondance avec la logique mathématique. 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 (par exemple, HTML, XML ou LaTeX), * la programmation fonctionnelle, qui perçoit les applications comme un ensemble de fonctions mathématiques (LISP, Caml, Haskell, Oz), * la programmation logique, pour laquelle les composants d'une application sont des relations logiques (Prolog, Mercury). * la programmation par contraintes. (fr)
  • In informatica il termine programmazione dichiarativa può avere due diversi significati: (it)
  • 宣言型プログラミング(英: Declarative programming)は、プログラミングパラダイムの名称だが、主として2種類の意味がある。第1の意味は、処理方法ではなく対象の性質などを宣言することでプログラミングするパラダイムを意味する。第2の意味は、純粋関数型プログラミング、論理プログラミング、制約プログラミングの総称である。後者は(多寡はあれ)前者の性質を持つ。 (ja)
  • 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 HTML gewoonlijk toch als declaratief beschouwd. Wel bevatten veel imperatieve talen voorzieningen met een declaratief karakter, en omgekeerd. (nl)
  • 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 ele faz 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 descrevem propriedades da solução desejada, não especificando como o algoritmo em si deve agir. Apesar disso a maioria das linguagens desses paradigmas permite 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. (pt)
  • Programowanie deklaratywne — rodzina paradygmatów programowania, które nie są z natury imperatywne. W przeciwieństwie do programów napisanych imperatywnie, programista opisuje warunki, jakie musi spełniać końcowe rozwiązanie (co chcemy osiągnąć), a nie szczegółową sekwencję kroków, które do niego prowadzą (jak to zrobić). Programowanie deklaratywne często traktuje programy jako pewne hipotezy wyrażone w logice formalnej, a wykonywanie obliczeń jako ich dowodzenie. Programowanie deklaratywne jest szczególnym przedmiotem zainteresowania naukowców, gdyż dzięki minimalizacji lub eliminacji skutków ubocznych może znacząco uprościć tworzenie programów współbieżnych. Paradygmat programowania deklaratywnego obejmuje szeroką gamę języków programowania i bardziej szczegółowych paradygmatów podrzędnych. (pl)
  • 宣告式編程(英语:Declarative programming)是一種編程典範,与指令式編程相對立。它描述目標的性質,讓電腦明白目標,而非流程。声明式编程不用告诉电脑问题领域,从而避免随之而来的副作用。而指令式编程则需要用算法来明确的指出每一步该怎么做。 声明式编程通常被看做是形式逻辑的理论,把计算看做推导。声明式编程因大幅简化了并行计算的编写难度,自2009起备受关注。 声明式语言包括数据库查询语言(SQL,XQuery),正则表达式,逻辑编程,函数式编程和组态管理系统。 宣告式編程透過函數、推論規則或项重写(term-rewriting)規則,來描述變數之間的關係。它的語言執行器(編譯器或解释器)採用了一個固定的算法,以從這些關係產生結果。 宣告式編程語言通常用作解決人工智能和約束滿足問題。 (zh)
  • Декларати́вное программи́рование — это парадигма программирования, в которой задаётся спецификация решения задачи, то есть описывается, что представляет собой проблема и ожидаемый результат. Противоположностью декларативного является императивное программирование, описывающее на том или ином уровне детализации, как решить задачу и представить результат. В общем и целом, декларативное программирование идёт от человека к машине, тогда как императивное — от машины к человеку. Как следствие, декларативные программы не используют понятия состояния, то есть не содержат переменных и операторов присваивания (см. также ссылочная прозрачность). Наиболее близким к «чисто декларативному» программированию является написание исполнимых спецификаций (см. соответствие Карри — Ховарда). В этом случае программа представляет собой формальную теорию, а её выполнение является одновременно автоматическим доказательством этой теории, и характерные для императивного программирования составляющие процесса разработки (проектирование, рефакторинг, отладка и др.) в этом случае исключаются: программа проектирует и доказывает сама себя. К подвидам декларативного программирования также зачастую относят функциональное и логическое программирование — несмотря на то, что программы на таких языках нередко содержат алгоритмические составляющие, архитектура в императивном понимании (как нечто отдельное от кодирования) в них также отсутствует: схема программы является непосредственно частью исполнимого кода. На повышение уровня декларативности нацелено языково-ориентированное программирование. «Чисто декларативные» компьютерные языки зачастую не полны по Тьюрингу — примерами служат SQL и HTML — так как теоретически не всегда возможно порождение исполнимого кода по декларативному описанию. Это иногда приводит к спорам о корректности термина «декларативное программирование» (менее спорным является «декларативное описание решения» или, что то же самое, «декларативное описание задачи»). (ru)
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 210648 (xsd:integer)
dbo:wikiPageRevisionID
  • 732766058 (xsd:integer)
dct:subject
http://purl.org/linguistics/gold/hypernym
rdf:type
rdfs:comment
  • La programación declarativa, en contraposición a la programación imperativa, 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 (tan sólo se le indica a la computadora qué es lo que se desea obtener o qué es lo que se está buscando). No existen asignaciones destructivas, y las variables son utilizadas con transparencia referencial. (es)
  • In informatica il termine programmazione dichiarativa può avere due diversi significati: (it)
  • 宣言型プログラミング(英: Declarative programming)は、プログラミングパラダイムの名称だが、主として2種類の意味がある。第1の意味は、処理方法ではなく対象の性質などを宣言することでプログラミングするパラダイムを意味する。第2の意味は、純粋関数型プログラミング、論理プログラミング、制約プログラミングの総称である。後者は(多寡はあれ)前者の性質を持つ。 (ja)
  • 宣告式編程(英语:Declarative programming)是一種編程典範,与指令式編程相對立。它描述目標的性質,讓電腦明白目標,而非流程。声明式编程不用告诉电脑问题领域,从而避免随之而来的副作用。而指令式编程则需要用算法来明确的指出每一步该怎么做。 声明式编程通常被看做是形式逻辑的理论,把计算看做推导。声明式编程因大幅简化了并行计算的编写难度,自2009起备受关注。 声明式语言包括数据库查询语言(SQL,XQuery),正则表达式,逻辑编程,函数式编程和组态管理系统。 宣告式編程透過函數、推論規則或项重写(term-rewriting)規則,來描述變數之間的關係。它的語言執行器(編譯器或解释器)採用了一個固定的算法,以從這些關係產生結果。 宣告式編程語言通常用作解決人工智能和約束滿足問題。 (zh)
  • In computer science, declarative programming is a programming paradigm—a style of building the structure and elements of computer programs—that expresses the logic of a computation without describing its control flow. Declarative programming often considers programs as theories of a formal logic, and computations as deductions in that logic space. Declarative programming may greatly simplify writing parallel programs. (en)
  • 25بك المحتوى هنا ينقصه الاستشهاد بمصادر. يرجى إيراد مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (فبراير 2016) في علم الحاسوب، البرمجة التعريفية هي واحدة من أنماط البرمجة وهي تعبّر عن منطق البرنامج دون شرح تدفق السيطرة. الكثير من لغات البرمجة تلجأ لهذا النمط كي تقلل أو تلغي أي أعراض جانبية من خلال وصف ماذا يجب على البرنامج أن ينجزه بدلا من التطرق لكيفة إنجازه. يأتي هذا النمط في البرمجة على النقيض من البرمجة الأمرية والتي تتطلب توفير خوارزمية واضحة. أصبحت البرمجة التعريفية تلقى رواجا أكثر في الفترة الأخيرة حيث أنها أظهرت قدرة على تبسيط كتابة البرامج المتوازية. (ar)
  • Die deklarative Programmierung ist ein Programmierparadigma, bei dem die Beschreibung des Problems im Vordergrund steht. Der Lösungsweg wird dann automatisch ermittelt. 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. Bekannte Vertreter deklarativer Programmiersprachen sind Haskell, Lisp, Prolog, XAML und im weiteren Sinne auch SQL und XSLT. Den deklarativen Sprachen stehen die weiter verbreiteten imperativen Sprachen wie C, C++ oder Java gegenüber. (de)
  • La programmation déclarative est un paradigme de programmation. Elle consiste à créer des applications sur la base de composants logiciels indépendants 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. C'est une forme de programmation sans effets de bord, ayant généralement une correspondance avec la logique mathématique. Il existe plusieurs formes de programmation déclarative : (fr)
  • 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. * Tekstuele talen: * talen uit de wiskunde: logica en algebra * markuptalen * documentformaten * Visuele talen: * modelleertalen * symbolische en representerende visuele programmeertalen (nl)
  • Programowanie deklaratywne — rodzina paradygmatów programowania, które nie są z natury imperatywne. W przeciwieństwie do programów napisanych imperatywnie, programista opisuje warunki, jakie musi spełniać końcowe rozwiązanie (co chcemy osiągnąć), a nie szczegółową sekwencję kroków, które do niego prowadzą (jak to zrobić). Programowanie deklaratywne często traktuje programy jako pewne hipotezy wyrażone w logice formalnej, a wykonywanie obliczeń jako ich dowodzenie. Programowanie deklaratywne jest szczególnym przedmiotem zainteresowania naukowców, gdyż dzięki minimalizacji lub eliminacji skutków ubocznych może znacząco uprościć tworzenie programów współbieżnych. Paradygmat programowania deklaratywnego obejmuje szeroką gamę języków programowania i bardziej szczegółowych paradygmatów podrzędny (pl)
  • 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 ele faz 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. (pt)
  • Декларати́вное программи́рование — это парадигма программирования, в которой задаётся спецификация решения задачи, то есть описывается, что представляет собой проблема и ожидаемый результат. Противоположностью декларативного является императивное программирование, описывающее на том или ином уровне детализации, как решить задачу и представить результат. В общем и целом, декларативное программирование идёт от человека к машине, тогда как императивное — от машины к человеку. Как следствие, декларативные программы не используют понятия состояния, то есть не содержат переменных и операторов присваивания (см. также ссылочная прозрачность). (ru)
rdfs:label
  • Declarative programming (en)
  • برمجة تعريفية (ar)
  • Deklarative Programmierung (de)
  • Programación declarativa (es)
  • Programmation déclarative (fr)
  • Programmazione dichiarativa (it)
  • 宣言型プログラミング (ja)
  • Declaratieve taal (nl)
  • Programowanie deklaratywne (pl)
  • Programação declarativa (pt)
  • 宣告式編程 (zh)
  • Декларативное программирование (ru)
rdfs:seeAlso
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageRedirects of
is dbp:paradigm of
is dbp:paradigms of
is foaf:primaryTopic of