Type (informatique)

Présentation des principaux types de données.

En programmation informatique, un type de donnée, ou simplement un type, définit la nature des valeurs que peut prendre une donnée, ainsi que les opérateurs qui peuvent lui être appliqués.

Types de données

Types prédéfinis

La plupart des langages de programmation de haut niveau offrent des types de base correspondant aux données qui peuvent être traitées directement — à savoir : sans conversion ou formatage préalable — par le processeur. Ces types de base sont souvent :

  • Type booléen : valeurs vrai ou faux — ou respectivement 1 ou 0 ;
  • Type entier signé ou non signé : valeurs codées sur 8 bits, 16 bits, 32 bits voire 64 bits.
Les caractères sont parfois assimilés à des entiers codés sur 8 ou 16 bits (exemples : C et Java) ;

Les langages permettant un accès direct à la mémoire du système offrent par ailleurs le type pointeur, et un type octet.

Beaucoup proposent également un type prédéfini, string, pour les chaînes de caractères. Les langages de haut niveau peuvent également supporter nativement des types correspondant à d'autres structures de données.

Types paramétrés

Par exemple la déclaration des pointeurs ou des tableaux en langage C nécessite de préciser le type qui doit servir de base aux données manipulées. La programmation générique étend cette pratique pour permettre à l'utilisateur de créer ses propres types paramétrés.

Types énumérés

Un type énuméré est un type pour lequel le programmeur spécifie lui-même la liste des valeurs possibles. Le code suivant illustre la définition d'un nouveau type couleur et des trois valeurs possibles (rouge, bleu et vert), suivie de la déclaration et initialisation d'une variable c de ce type :

enum couleur { rouge, vert, bleu };
couleur c = vert;

Types composés

Les types composés (struct en C, record en Pascal) permettent de grouper plusieurs champs de types distincts dans une même variable (qui contient alors des « sous-variables »).

En programmation orientée objet, on nomme classe un type composé associé à du code spécifique — la définition des méthodes de la classe — propre à la manipulation de variables de ce type.

Types hiérarchiques

La programmation orientée objet étend le paradigme précédent en organisant hiérarchiquement les classes de telle manière qu'une variable d'une sous-classe puisse être utilisée de manière transparente à la place de n'importe quelle classe située à un niveau supérieur dans la hiérarchie définie.

Types opaques

Un type opaque est un type incomplètement défini et/ou dont la nature est masquée. Le développeur ne peut ni en examiner le contenu, ni le modifier, et doit simplement le stocker et le transmettre. À cet effet, seule la taille d'un type opaque est réellement connue.

Les données opaques sont par exemple des handles (terminologie Windows), des descripteurs de fichier (terminologie Unix), des clés, des pointeurs vers des structures masquées (ex. : FILE* de la bibliothèque standard du C), etc. La seule notion cruciale, c'est qu'une variable opaque est fournie via une fonction dédiée de création (de type constructeur), transmise telle quelle aux fonctions utilisatrices (souvent via un passage par référence), et enfin détruite via une fonction de libération (de type destructeur).

La possibilité – ou non – d'avoir des types opaques est totalement dépendante du langage de programmation utilisé.

Typage

Typage statique et typage dynamique

On parle de typage statique quand la majorité des vérifications de type sont effectuées au moment de la compilation.

Au contraire, on parle de typage dynamique quand ces vérifications sont effectuées pendant l'exécution.

Typage explicite et typage implicite

Avec un typage explicite, c'est à l'utilisateur d'indiquer lui-même les types qu'il utilise, par exemple lors des déclarations de variables ou de fonctions.

Par exemple, en langage C, le typage est explicite :

int i = 0;  // cette déclaration indique explicitement que
            // la variable i est de type entier (integer en anglais)

Au contraire, avec un système de typage implicite, le développeur laisse au compilateur ou au runtime le soin de déterminer tout seul les types de données utilisées, par exemple par inférence.

Par exemple, en Objective Caml, le typage est implicite :

let i = 0 ;; (* le compilateur détermine automatiquement que
                la variable i est de type entier (integer en anglais) *)

Typage fort et typage faible

La sûreté du typage est destinée à prévenir les erreurs de type, à savoir : l'emploi d'une variable dont le format est incompatible. La définition d'un langage fortement typé est assez floue :

  • soit elle est à rapprocher de celle de langage à typage statique : le compilateur assure la détection au plus tôt des erreurs de type ;
  • soit on juge de la force du typage d'un langage selon les conversions de type implicites qu'il autorise.

Références

En français

  • Emmanuel Chailloux, Pascal Manoury et Bruno Pagano, Développement d'applications avec Objective Caml, Éditions O'Reilly, Paris, 2000
  • Sylvain Conchon et Jean-Christophe Filliâtre, Apprendre à programmer avec OCaml. Algorithmes et structures de données. Éditions Eyrolles, 2014

En anglais

Voir aussi

Read other articles:

Surah ke-1الفاتحة al-FātiḥahPembukaTeks ArabTerjemahan KemenagKlasifikasiMakkiyahNama lainFatihatul Kitab,[1] Ummul Qur'an, Ummul Kitab, as-Sab'ul Masani,[2] al-Kanz,[1] al-Wafiyah,[1] al-Kafiyah,[1] al-Asas,[1] asy-Syafiyah,[3] al-Hamd,[1] as-Shalah,[1] al-Ruqyah,[1] asy-Syukru,[1] ad-Du'au,[1] asy-Syifa,[1] al-Waqiyah,[1]JuzJuz 1, Hizb 1Jumlah ruku1Jumlah ayat7Jumlah kat...

 

Unidad Popular Ketua umumSalvador AllendeDibentuk9 Desember 1969 (1969-12-09)Dibubarkan12 September 1973Kantor pusatSantiagoPosisi politikSayap kiri Unidad Popular (Persatuan Rakyat) adalah sebuah koalisi partai politik yang tersusun dari partai-partai sayap kiri yang menjadi pengusung calon presiden Salvador Allende yang berhasil memenangi pemilihan presiden Chili tahun 1970; Sejarah Koalisi Unidad Popular dimulai dengan ditandatanganinya perjanjian oleh pemimpin-pemimpin partai sa...

 

City in North Jeolla, South Korea Specific city in Honam, South KoreaJeonju 전주시Specific cityKorean transcription(s) • Hangul전주시 • Hanja全州市 • Revised RomanizationJeonju-si • McCune-ReischauerChŏnju-si FlagLogoLocation in South KoreaCoordinates: 35°49′N 127°09′E / 35.817°N 127.150°E / 35.817; 127.150Country South KoreaRegionHonamAdministrative divisions2 Gu, 40 dongGovernment •...

Book by Mac Hyman No Time for Sergeants First edition coverAuthorMac HymanCountryUnited StatesLanguageEnglishPublisherRandom HousePublication dateOctober 1, 1954[1]Media typePrint No Time for Sergeants is a 1954 best-selling novel by Mac Hyman, which was adapted into a teleplay on The United States Steel Hour, a popular Broadway play and 1958 motion picture, as well as a 1964 television series. The book chronicles the misadventures of a country bumpkin named Will Stockdale who is...

 

Questa voce sull'argomento cestisti israeliani è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Segui i suggerimenti del progetto di riferimento. Tomer Levinson Nazionalità  Israele Altezza 205 cm Peso 93 kg Pallacanestro Ruolo Centro Squadra  Ironi Nes Ziona Carriera Giovanili  Ironi Nes Ziona Squadre di club 2015-2017 Ironi Nes Ziona2017-2018 Darda11 (47)2018-2019 H. Gerusalemme10 (16)2019-2020 Maccabi Ashdod21 (43...

 

Bilateral relationsRussia–Senegal relations Russia Senegal Russia–Senegal relations are the bilateral foreign relations between Russia and Senegal. Russian has an embassy in Dakar and Senegal has an embassy in Moscow. Bilateral Relations The Soviet Union established diplomatic relations with Senegal on June 14, 1962. Political relations are stable. In September 2007, Foreign Minister Sergei Lavrov visited Senegal on an official visit, during which he held talks with Senegalese President A...

この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)出典検索?: コルク – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2017年4月) コルクを打ち抜いて作った瓶の栓 コルク(木栓、�...

 

Dommartin-DampierrecomuneDommartin-Dampierre – Veduta LocalizzazioneStato Francia RegioneGrand Est Dipartimento Marna ArrondissementSainte-Menehould CantoneArgonne Suippe et Vesle TerritorioCoordinate49°04′24″N 4°49′39″E / 49.073333°N 4.8275°E49.073333; 4.8275 (Dommartin-Dampierre)Coordinate: 49°04′24″N 4°49′39″E / 49.073333°N 4.8275°E49.073333; 4.8275 (Dommartin-Dampierre) Altitudine153 m s.l.m. Superficie8,64...

 

Former Premier League referee Howard Webb English football referees officiate matches in English football. The referees officiate matches that range from local football to Premier League matches. There are currently eleven different levels of referees that correspond to the ability, age and activity of the official. For a referee to move from one level to the next, both theoretical and physical assessments are taken. Training Anyone over the age of 14 who is reasonably fit and doesn't have p...

French engineering college This article contains content that is written like an advertisement. Please help improve it by removing promotional content and inappropriate external links, and by adding encyclopedic content written from a neutral point of view. (March 2021) (Learn how and when to remove this message) Institut Supérieur de l'Aéronautique et de l'Espace ISAE-SUPAEROMottoExcellence with passionTypeGrande écoleEstablished1909; 115 years ago (1909)LocationToulouse...

 

  لمعانٍ أخرى، طالع الحاسة السادسة (توضيح). الحاسة السادسةThe Sixth Sense (بالإنجليزية) الشعارمعلومات عامةالصنف الفني فيلم رعب[1][2] — فيلم إثارة — فيلم دراما — فيلم أشباح تاريخ الصدور 1999 2 أغسطس 1999[3] 30 ديسمبر 1999[4] (ألمانيا)5 يناير 2000 (فرنسا) مدة العرض 107 دقيقة ال�...

 

1984 studio album by the Human LeagueHysteriaStudio album by the Human LeagueReleased7 May 1984 (1984-05-07)StudioAir and Townhouse (both London)GenreSynth-popLength39:59LabelVirginProducer Hugh Padgham Chris Thomas The Human League The Human League chronology Fascination!(1983) Hysteria(1984) Crash(1986) Singles from Hysteria The LebanonReleased: 24 April 1984 Life on Your OwnReleased: 18 June 1984 LouiseReleased: 5 November 1984 Professional ratingsReview scoresSourc...

Lalibela ላሊበላGereja Santo Georgius, salah satu di antara gereja-gereja yang dipahat pada perbukitan padas LalibelaNegaraEtiopiaDaerahDaerah AmharaZoneZone Semien WolloPopulasi (2007) • Total17.367Zona waktuUTC+3 (EAT) Lalibela adalah kota di kawasan utara Etiopia yang terkenal dengan gereja-gerejanya yang dipahat pada batu utuh. Lalibela adalah salah satu kota suci Etiopia, nomor dua sesudah Aksum, dan merupakan salah satu kota tujuan ziarah. Berbeda dari Aksum, hampi...

 

DIP-Schalter (8-fach) DIP-Schalter (12-fach), piano style von Würth Elektronik DIP-Schalter (scherzweise auch „Mäuseklavier“ genannt) sind kleine Schalter, die beispielsweise auf der Hauptplatine oder anderen Leiterplatten verwendet werden, um bestimmte Grundeinstellungen vorzunehmen. Die Abkürzung DIP steht für Dual in-line package, also eine Bauform mit zwei parallel angeordneten Anschlussreihen. DIP-Schalter mit Schiebhebeln wurden im Jahre 1977 patentiert.[1] Das Rast...

 

Japanese overnight rapid train service (2002–2018) This article uses bare URLs, which are uninformative and vulnerable to link rot. Please consider converting them to full citations to ensure the article remains verifiable and maintains a consistent citation style. Several templates and tools are available to assist in formatting, such as reFill (documentation) and Citation bot (documentation). (August 2022) (Learn how and when to remove this message) This article includes a list of general...

The QuietPosterSutradaraJamie BabbitProduser Carolyn Pfeiffer Joel Michaely Holly Wiersma Andrea Sperling Skenario Abdi Nazemian Micah Schraft Pemeran Elisha Cuthbert Camilla Belle Martin Donovan Edie Falco Shawn Ashmore Penata musikJeff RonaSinematograferM. David MullenPenyuntingJoan SobelDistributorSony Pictures ClassicsTanggal rilis 12 September 2005 (2005-09-12) (Toronto Film Festival) 25 Agustus 2006 (2006-08-25) (Amerika Serikat) Durasi91 menitNegaraAmerika Serik...

 

Suryatna Subrata Anggota Dewan Pertimbangan AgungMasa jabatan13 Juni 1998 – 31 Juli 2003PresidenB.J. HabibieAbdurrahman WahidMegawati SukarnoputriSekretaris Jenderal Departemen Dalam NegeriMasa jabatan14 Mei 1993 – 27 April 1998PendahuluNugroho S.PenggantiMuhammad Feisal TaminWakil Gubernur Jawa BaratMasa jabatan14 September 1987 – 27 Oktober 1992PendahuluAboeng KoesmanPenggantiAchmad Sampurna Informasi pribadiLahir1939 (usia 84 atau 85 tahun)Cianjur, Jawa Bar...

 

Extinct genus of reptiles BrachyuranochampsaTemporal range: Middle Eocene, 56–33.9 Ma PreꞒ Ꞓ O S D C P T J K Pg N Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Chordata Class: Reptilia Clade: Archosauromorpha Clade: Archosauriformes Order: Crocodilia Genus: †BrachyuranochampsaZangerl, 1944 Species †B. eversolei Zangerl, 1944 (type) Brachyuranochampsa is an extinct genus of crocodilian. The only robust occurrence of Brachyuranochampsa is B. eversolei from...

Ungerns flagga Ungerns flagga är en trikolor i färgerna rött, vitt och grönt. Den antogs den 1 oktober 1957 och har proportionerna 1:2. Handelsflaggan har däremot proportionerna 2:3. Symbolik Färgerna är hämtade från Ungerns traditionella riksvapen. I flaggan symboliserar färgerna: Kraft (rött) Trohet (vitt) Hopp (grönt) Flaggans historia Ungerns flagga under Árpádtiden Dubbelmonarkins flagga 1869-1918 Den kommunistiska ungerska flaggan 1949-1956 Árpádflaggan Ungern etablerade...

 

1876 West Virginia gubernatorial election ← 1872 October 10, 1876 1880 →   Nominee Henry M. Mathews Nathan Goff Jr. Party Democratic Republican Popular vote 56,206 43,477 Percentage 56.20% 43.47% Governor before election John J. Jacob People's Independent Elected Governor Henry M. Mathews Democratic Elections in West Virginia Federal government Presidential elections 1864 1868 1872 1876 1880 1884 1888 1892 1896 1900 1904 1908 1912 1916 1920 1924 1928 1932 1936...