En informatique, le concept d'abstraction identifie et regroupe des caractéristiques et traitements communs applicables à des entités ou concepts variés ; une représentation abstraite commune de tels objets permet d'en simplifier et d'en unifier la manipulation. thumb|upright=1.4|Différentes couches de logiciel, partant d'en bas, le matériel est programmé en langage binaire, via un firmware, qui permet une abstraction pour le noyau, puis lui même pour le système d'exploitation, qui a son tour permet une abstraction pour les applications. Les différentes couches ont une abstraction de plus en plus importante, et chaque couche ne doit réussir à communiquer qu'avec celle d'en dessous ou celle d'au dessus, permettant une mutualisation des couches intermédiaires : par exemple le système d'exploitation est commun aux deux applications. thumb|Exemple de couche unifiée (la couche SDL) pour programmer les applications via une interface unique vers SDL, quels que soient le système d'exploitation et le matériel réellement utilisés. Un langage informatique est déjà une abstraction en lui-même, puisqu'il fait correspondre à un langage ésotérique (le langage machine s'écrit en binaire, c'est-à-dire composé uniquement de zéros et de uns) un autre langage mieux adapté à la compréhension humaine. Une des abstractions est la généralisation du code pour le détacher au maximum du contexte. L’un des outils les plus connus de l’abstraction informatique est la variable, notamment la variable d'environnement. Par exemple, sous Windows XP, le chemin du système est généralement C:\WINDOWS\system32. Mais il ne s’agit que d’un cas particulier, ce pourrait très bien être D:\OS_XP. En revanche, la variable d’environnement pour les fichiers système est %WINDIR% (ou %SYSTEMROOT%). Cette variable d’environnement est une valeur abstraite dont C:\WINDOWS\system32 est une application possible. Beaucoup d’erreurs de programmes viennent du fait que les dits programmes utilisent des valeurs concrètes au lieu de valeurs abstraites (comme les variables d’environnement).

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Séances de cours associées (38)
Recherche combinatoire et for-expressions
Explore la recherche combinatoire et introduit for-expressions comme un moyen plus intuitif de manipuler des listes dans Scala.
Abstraction de données : nombres rationnels
Couvre l'abstraction de données en nombres rationnels, y compris la vue du client, l'auto-référence, les conditions préalables, les assertions, les constructeurs et les marqueurs de fin.
Programmation orientée objet: Aperçu du mini-projet
Présente le mini-projet 2, axé sur la pratique des concepts de programmation orientés objet.
Afficher plus
Publications associées (161)
Concepts associés (30)
Programmation orientée objet
La programmation orientée objet (POO), ou programmation par objet, est un paradigme de programmation informatique. Elle consiste en la définition et l'interaction de briques logicielles appelées objets ; un objet représente un concept, une idée ou toute entité du monde physique, comme une voiture, une personne ou encore une page d'un livre. Il possède une structure interne et un comportement, et il sait interagir avec ses pairs.
Programmation impérative
En informatique, la programmation impérative est un paradigme de programmation qui décrit les opérations en séquences d'instructions exécutées par l'ordinateur pour modifier l'état du programme. Ce type de programmation est le plus répandu parmi l'ensemble des langages de programmation existants, et se différencie de la programmation déclarative (dont la programmation logique ou encore la programmation fonctionnelle sont des sous-ensembles).
C++
C++ est un langage de programmation compilé permettant la programmation sous de multiples paradigmes, dont la programmation procédurale, la programmation orientée objet et la programmation générique. Ses bonnes performances, et sa compatibilité avec le C en font un des langages de programmation les plus utilisés dans les applications où la performance est critique. Créé initialement par Bjarne Stroustrup dans les années 1980, le langage C++ est aujourd'hui normalisé par l'ISO.
Afficher plus
MOOCs associés (18)
Parallelism and Concurrency
(merge of parprog1, scala-reactive, scala-spark-big-data)
Functional Programming
In this course you will discover the elements of the functional programming style and learn how to apply them usefully in your daily programming tasks. You will also develop a solid foundation for rea
Functional Programming Principles in Scala [retired]
This advanced undergraduate programming course covers the principles of functional programming using Scala, including the use of functions as values, recursion, immutability, pattern matching, higher-
Afficher plus

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.