| dbpprop:abstract
|
- Generic programming is a style of computer programming in which algorithms are written in terms of to-be-specified-later types that are then instantiated when needed for specific types provided as parameters. This approach, pioneered by Ada in 1983, permits writing common functions or types that differ only in the set of types on which they operate when used, thus reducing duplication. Software entities created using generic programming are known as generics in Ada, Eiffel, Java, C#, Visual Basic . NET and Haskell; templates in C++; and parameterized types in the influential 1994 book Design Patterns. The authors of Design Patterns note that this technique, especially when combined with delegation, is very powerful but that "Dynamic, highly parameterized software is harder to understand than more static software. " Generic programming refers to features of certain statically typed programming languages that allow some code to effectively circumvent the static typing requirements. For instance in C++, a template is a routine in which some parameters are qualified by a type variable. Since code generation in C++ depends on concrete types, the template is specialized for each combination of argument types that occur in practice. Generic programming is commonly used to implement containers such as lists and hash tables and functions such as a particular sorting algorithm for objects specified in terms more general than a concrete type.
- Generische Programmierung ist ein Verfahren zur Entwicklung wiederverwendbarer Software-Bibliotheken. Dabei werden Funktionen möglichst allgemein entworfen, um für unterschiedliche Datentypen und Datenstrukturen verwendet werden zu können. Die Implementierung erfolgt bei einigen Programmiersprachen durch das Konzept generischer Typen bzw. Templates – so gestalten sich dynamische Programmiersprachen, bei denen sich der Typ einer Variable zur Laufzeit ändern darf, durch ihre verallgemeinerte Polymorphie generisch. Von Sprachen, die solche Mechanismen bieten, sagt man auch, dass sie Generik erlauben. Wesentlich bei der generischen Programmierung ist, dass die Algorithmen nicht für einen bestimmten Datentyp geschrieben werden, sondern nur bestimmte Anforderungen an die Typen stellen. Das Prinzip wird auch parametrische Polymorphie genannt. Paradebeispiel ist die C++-Standardbibliothek der Programmiersprache C++, bei der die Algorithmen so weit wie möglich von den Datenstrukturen, mit denen sie arbeiten, getrennt werden.
- Základní myšlenkou, která se skrývá za pojmem generické programování, je rozdělení kódu programu na algoritmus a datové typy takovým způsobem, aby bylo možné zápis kódu algoritmu chápat jako obecný, bez ohledu nad jakými datovými typy pracuje. Konkrétní kód algoritmu se z něj stává dosazením datového typu. U kompilovaných jazyků dochází k rozvinutí kódu v době překladu. Typickým příkladem jazyka, který podporuje tuto formu generického programování je jazyk C++. Mechanismem, který zde generické programování umožňuje, jsou takzvané šablony (templates).
- En programmation, la généricité d'une fonction repose sur son indépendance vis-à-vis du type, et éventuellement du nombre, de ses arguments. C'est un concept important pour un langage de haut niveau car il permet d'augmenter le niveau d'abstraction du langage. Plusieurs mécanismes visant à permettre l'écriture de fonctions génériques ont donc été mis en œuvre par les différents langages de programmation.
- ジェネリック(総称あるいは汎用)プログラミング (generic programming)はデータ形式に依存しないコンピュータプログラミング方式。 これはデータ型でコードをインスタンス化するのか、あるいはデータ型をパラメータとして渡すかということに関わらず、同じソースコードを利用できるということである。ジェネリックプログラミングは言語により異なる形で実装されている。ジェネリックプログラミングの機能は70年代にCLUやAdaのような言語に搭載され、次にBETA、C++、D、Eiffel、Java、そして今はなきDECのTrellils-Owl言語などの数多くのオブジェクトベース(object-based)およびオブジェクト指向(object-oriented)言語に採用された。 1995年の書籍デザインパターンの共著者はジェネリクスや、(C++の)テンプレートとしても知られるパラメータ化された型(parameterized types)としてジェネリクスについて触れている。これらは、型を指定することなく、型を定義できるようにする(型は使用する時点で引数として与えられる)。このテクニック(特にデリゲーションを組み合わせるとき)は非常に強力であるが、同時に「動的に、高度にパラメーター化されたソフトウェアはより静的なソフトウェアよりも理解しづらい」とその著者は忠告している(Gang of Four 1995:21)。
- Een template of een generic (type) is een sjabloon voor een stuk code. Met behulp van templates is het mogelijk een stuk broncode te generaliseren, zodat het voor meer object types bruikbaar is. Templates zijn beschikbaar in de programmeertaal C++, maar sinds enige tijd ook in andere talen, zoals Java en C#. Soms worden templates ook wel aangeduid met de term 'generics'. Templates kunnen gebruikt worden met functies en met klasses. Veel talen gebruiken ze bij container-klassen, die door gebruik van templates 'type-safe' worden.
- Genericiteit of generics is een voorziening voor programmeertalen die generiek programmeren toestaat. Dit betekent dat algoritmes kunnen worden geschreven in een bepaalde syntaxis waarbij de algoritmes adaptief zijn maar tevens nog door de compiler geïnstantieerd kunnen worden. Zo kunnen algoritmes generiek worden geschreven zonder snelheidsverlies. Een sorteeralgoritme hoeft zich met behulp van generiek programmeren niet bezig te houden met wat voor datatype het precies sorteert, maar alleen hoe het dat doet. Generiek programmeren ligt dicht tegen meta-programmeren aan, een techniek waarbij aan de hand van bepaalde broncode weer nieuwe broncode wordt geprogrammeerd, die daarna wordt gecompileerd. Bij generiek programmeren gaat het echter om een syntactische en semantische uitbreiding in de programmeertaal en wordt er niet direct 'nieuwe' broncode gegenereerd. Genericiteit werd rond 1970 onderdeel van een aantal programmeertalen, zoals CLU, Ada. Later werd de techniek ook onderdeel van veel andere object-geöriëntieerde talen, zoals C++, C#, Eiffel en Java (vanaf versie 1.5).
- Generisk programmering er en paradigme for programmering av datamaskiner. Generisk programmering innebærer at man programmerer med allmenne typer. Kildekoden fungerer med vilkårlige typer, og den egentlige typen er parameter. Kompilatoren generer da kode som passer for hver forskjellig type som er brukt. Hensikten med generisk programmering er å gjenbruke kode, samt å kunne starte med kravene til algoritmen, i stedet for kravene til typen som ved objektorientert programmering. Programmeringsspråk som har støtte for generisk programmering inkluderer Java, C++, Ada, Eiffel og Common Lisp. Et eksempel på generisk programmering i utstrakt bruk er standardbiblioteket til C++. Her er et eksempel i C++ av Alexander Stepanov, en av arkitektene bak dette biblioteket: template <class StrictWeakOrdered> inline StrictWeakOrdered& max(StrictWeakOrdered& x, StrictWeakOrdered& y) return x < y ? y : x; Koden over tar inn en type som parameter (StrictWeakOrdered) og returnerer den største verdien.
- Programowanie uogólnione (lub generyczne, z ang. Generic Programming) jest jednym z paradygmatów programowania. Programowanie uogólnione pozwala na pisanie kodu programu bez wcześniejszej znajomości typów danych, na których kod ten będzie pracował. Obecnie wiele języków programowania ma możliwość wykorzystywania uogólnień, np. C++, D, Java, Haskell. Programowanie uogólnione ma bliski związek z Metaprogramowaniem, w przeciwieństwie jednak do metaprogramowania, nie wymaga od programisty generowania kodu w sposób jawny. Programowanie uogólnione umożliwia w pewnym sensie językom statycznie typowanym na polimorfizm typów. W językach C++ czy D programowanie uogólnione umożliwiają szablony. W językach Java, C#, VB. NET, Haskell, Eiffel służą do tego typy generyczne (lub inaczej uogólnione).
- Programação genérica é um paradigma de programação no qual os algoritmos são escritos em uma gramática estendida de forma a adaptar-se através da especificação das partes variáveis que são definidas na instância do algoritmo. Especificamente, a gramática estendida eleva um elemento não variável ou uma construção implícita na gramática base para uma variável ou constante, permitindo a utilização do código genérico. É diferente da forma normal de programação na medida que invoca de certa forma as facilidade de metaprogramação da linguagem. Como isso ocorre em uma extensão da linguagem, novas semânticas são introduzidas e a linguagem é enriquecida no processo. É relacionada com a metaprogramação, mas não envolve a geração de código fonte, pelo menos visivelmente ao programador. É diferente também da programação por macros, já que esta refere-se somente a busca e substituição de termos, não fazendo parte da gramática da linguagem, implementada somente na fase de pré-processamento do código. Para efeitos práticos, o paradigma permite que um parâmetro assuma diferentes tipos de dados desde que certas regras sejam mantidas, como sub-tipos e assinaturas. Por exemplo, para criar uma lista usando programação genérica, uma possível declaração seria List<T>, no qual T é o tipo de dado. Para instanciar, poderia-se usar List<Inteiro> ou List<Animal>, já que o conceito de lista independe do tipo utilizado. Entre linguagens orientadas a objeto, C++, Linguagem D, BETA, Eiffel e versões de Java (1.5 e acima) fornecem o paradigma genérico. Visual Basic . NET, C# e Delphi. Net começaram a fornecer o paradigma a partir do . NET 2.0. Muito antes de todas as linguagens mencionadas, programação genérica já havia sido implementada na década de 1970 em linguagens como CLU e Ada. Mas somente o conceito de templates do C++ que popularizou o conceito. A técnica permite que algoritmos sejam escritos independente dos tipos de dados utilizados. Os autores do conceituado livro de 1995 Design Patterns referem-se à programação genérica como tipos parametrizados, o que permite que um tipo possa ser definido sem especificar todos os outros tipos que ele utilizada. Os autores ainda descrevem que tal técnica é muito poderosa, especialmente quando combinada com o padrão Delegar.
- Обобщённое программирование — парадигма программирования, заключающаяся в таком описании данных и алгоритмов, которое можно применять к различным типам данных, не меняя само это описание. В том или ином виде поддерживается разными языками программирования. Возможности обобщённого программирования впервые появились в 70-х годах в языках CLU и Ada, а затем во многих объектно-ориентированных языках, таких как C++, Java, D и языках для платформы . NET.
- Узагальнене програмування — парадигма програмування, що полягає в такому описі даних і алгоритмів, який можна застосовувати до різних типів даних, не змінюючи самий цей опис. У тому чи іншому вигляді підтримується різними мовами програмування. Можливості узагальненого програмування вперше з'явилися в 70-х роках у мовах CLU і Ada, а потім у багатьох об'єктно-орієнтованих мовах, таких як C++, Java, D і мовах для платформи . NET.
- 泛型的定義主要有以下兩種: 在程序編碼中一些包含類型參數的類型,也就是說泛型的參數只可以代表�
|
| rdfs:comment
|
- Generic programming is a style of computer programming in which algorithms are written in terms of to-be-specified-later types that are then instantiated when needed for specific types provided as parameters. This approach, pioneered by Ada in 1983, permits writing common functions or types that differ only in the set of types on which they operate when used, thus reducing duplication.
- Generische Programmierung ist ein Verfahren zur Entwicklung wiederverwendbarer Software-Bibliotheken. Dabei werden Funktionen möglichst allgemein entworfen, um für unterschiedliche Datentypen und Datenstrukturen verwendet werden zu können. Die Implementierung erfolgt bei einigen Programmiersprachen durch das Konzept generischer Typen bzw.
- Základní myšlenkou, která se skrývá za pojmem generické programování, je rozdělení kódu programu na algoritmus a datové typy takovým způsobem, aby bylo možné zápis kódu algoritmu chápat jako obecný, bez ohledu nad jakými datovými typy pracuje. Konkrétní kód algoritmu se z něj stává dosazením datového typu. U kompilovaných jazyků dochází k rozvinutí kódu v době překladu.
- En programmation, la généricité d'une fonction repose sur son indépendance vis-à-vis du type, et éventuellement du nombre, de ses arguments. C'est un concept important pour un langage de haut niveau car il permet d'augmenter le niveau d'abstraction du langage. Plusieurs mécanismes visant à permettre l'écriture de fonctions génériques ont donc été mis en œuvre par les différents langages de programmation.
- Een template of een generic (type) is een sjabloon voor een stuk code. Met behulp van templates is het mogelijk een stuk broncode te generaliseren, zodat het voor meer object types bruikbaar is. Templates zijn beschikbaar in de programmeertaal C++, maar sinds enige tijd ook in andere talen, zoals Java en C#. Soms worden templates ook wel aangeduid met de term 'generics'. Templates kunnen gebruikt worden met functies en met klasses.
- Genericiteit of generics is een voorziening voor programmeertalen die generiek programmeren toestaat. Dit betekent dat algoritmes kunnen worden geschreven in een bepaalde syntaxis waarbij de algoritmes adaptief zijn maar tevens nog door de compiler geïnstantieerd kunnen worden. Zo kunnen algoritmes generiek worden geschreven zonder snelheidsverlies.
- Generisk programmering er en paradigme for programmering av datamaskiner. Generisk programmering innebærer at man programmerer med allmenne typer. Kildekoden fungerer med vilkårlige typer, og den egentlige typen er parameter. Kompilatoren generer da kode som passer for hver forskjellig type som er brukt. Hensikten med generisk programmering er å gjenbruke kode, samt å kunne starte med kravene til algoritmen, i stedet for kravene til typen som ved objektorientert programmering.
- Programowanie uogólnione (lub generyczne, z ang. Generic Programming) jest jednym z paradygmatów programowania. Programowanie uogólnione pozwala na pisanie kodu programu bez wcześniejszej znajomości typów danych, na których kod ten będzie pracował. Obecnie wiele języków programowania ma możliwość wykorzystywania uogólnień, np. C++, D, Java, Haskell.
- Programação genérica é um paradigma de programação no qual os algoritmos são escritos em uma gramática estendida de forma a adaptar-se através da especificação das partes variáveis que são definidas na instância do algoritmo. Especificamente, a gramática estendida eleva um elemento não variável ou uma construção implícita na gramática base para uma variável ou constante, permitindo a utilização do código genérico.
- Обобщённое программирование — парадигма программирования, заключающаяся в таком описании данных и алгоритмов, которое можно применять к различным типам данных, не меняя само это описание. В том или ином виде поддерживается разными языками программирования.
- Узагальнене програмування — парадигма програмування, що полягає в такому описі даних і алгоритмів, який можна застосовувати до різних типів даних, не змінюючи самий цей опис. У тому чи іншому вигляді підтримується різними мовами програмування.
- 泛型的定義主要有以下兩種: 在程序編碼中一些包含類型參數的類型,也就是說泛型的參數只可以代表�
|