L'informatique - Computer science

Expression pour les chiffres de l'Église dans le calcul lambda Tracé d'un algorithme de tri rapide
Exemple d'animation par ordinateur produite à l'aide de la capture de mouvement Circuit demi-additionneur
L'informatique traite des fondements théoriques de l'information, des algorithmes et des architectures de son calcul ainsi que des techniques pratiques pour leur application.

L'informatique est l'étude des processus algorithmiques , des machines de calcul et du calcul lui-même. En tant que discipline, l'informatique couvre une gamme de sujets allant des études théoriques des algorithmes , du calcul et de l' information aux problèmes pratiques de la mise en œuvre de systèmes informatiques dans le matériel et les logiciels .

Ses domaines peuvent être divisés en disciplines théoriques et pratiques . Par exemple, la théorie du calcul concerne des modèles abstraits de calcul et des classes générales de problèmes qui peuvent être résolus en les utilisant, tandis que l'infographie ou la géométrie computationnelle mettent l'accent sur des applications plus spécifiques. Les algorithmes et les structures de données ont été appelés le cœur de l'informatique. La théorie du langage de programmation considère les approches de la description des processus informatiques, tandis que la programmation informatique implique leur utilisation pour créer des systèmes complexes . L'architecture informatique décrit la construction de composants informatiques et d'équipements commandés par ordinateur. L'intelligence artificielle vise à synthétiser des processus axés sur des objectifs tels que la résolution de problèmes, la prise de décision, l'adaptation environnementale, la planification et l' apprentissage chez les humains et les animaux. Un ordinateur numérique est capable de simuler divers processus d'information . La préoccupation fondamentale de l'informatique est de déterminer ce qui peut et ne peut pas être automatisé. Les informaticiens se concentrent généralement sur la recherche universitaire. Le prix Turing est généralement reconnu comme la plus haute distinction en informatique.

Histoire

Charles Babbage , parfois surnommé le « père de l'informatique ».
Ada Lovelace a publié le premier algorithme destiné au traitement sur ordinateur.

Les premières fondations de ce qui allait devenir l'informatique sont antérieures à l'invention de l' ordinateur numérique moderne . Des machines pour calculer des tâches numériques fixes telles que l' abaque existent depuis l'antiquité, facilitant des calculs tels que la multiplication et la division. Les algorithmes permettant d'effectuer des calculs existent depuis l'Antiquité, avant même le développement d'équipements informatiques sophistiqués.

Wilhelm Schickard a conçu et construit la première calculatrice mécanique fonctionnelle en 1623. En 1673, Gottfried Leibniz a fait la démonstration d'une calculatrice mécanique numérique, appelée Stepped Reckoner . Leibniz peut être considéré comme le premier informaticien et théoricien de l'information, pour, entre autres raisons, documenter le système des nombres binaires. En 1820, Thomas de Colmar lance l' industrie de la calculatrice mécanique en inventant son arithmomètre simplifié , la première machine à calculer suffisamment puissante et fiable pour être utilisée quotidiennement dans un environnement de bureau. Charles Babbage a commencé la conception de la première calculatrice mécanique automatique , son moteur de différence , en 1822, ce qui lui a finalement donné l'idée de la première calculatrice mécanique programmable , son moteur analytique . Il a commencé à développer cette machine en 1834, et « en moins de deux ans, il avait esquissé de nombreuses caractéristiques saillantes de l'ordinateur moderne ». « Une étape cruciale a été l'adoption d'un système de cartes perforées dérivé du métier Jacquard » le rendant programmable à l'infini. En 1843, lors de la traduction d'un article français sur le moteur analytique, Ada Lovelace a écrit, dans l'une des nombreuses notes qu'elle a incluses, un algorithme pour calculer les nombres de Bernoulli , qui est considéré comme le premier algorithme publié jamais spécialement conçu pour la mise en œuvre. sur un ordinateur. Vers 1885, Herman Hollerith inventa la tabulatrice , qui utilisait des cartes perforées pour traiter les informations statistiques ; finalement sa société est devenue une partie d' IBM . Après Babbage, bien qu'ignorant ses travaux antérieurs, Percy Ludgate publia en 1909 le deuxième des deux seuls modèles de moteurs analytiques mécaniques de l'histoire. En 1937, cent ans après le rêve impossible de Babbage, Howard Aiken a convaincu IBM, qui fabriquait toutes sortes d'équipements pour cartes perforées et était également dans le secteur des calculatrices, de développer sa calculatrice programmable géante, l' ASCC/Harvard Mark I , basée sur Babbage's Analytical Engine, qui lui-même utilisait des cartes et une unité centrale de calcul. Lorsque la machine a été terminée, certains l'ont saluée comme "le rêve de Babbage devenu réalité".

Au cours des années 1940, avec le développement de nouvelles machines informatiques plus puissantes telles que l' ordinateur Atanasoff-Berry et ENIAC , le terme ordinateur en est venu à désigner les machines plutôt que leurs prédécesseurs humains. Lorsqu'il est devenu évident que les ordinateurs pouvaient être utilisés pour plus que de simples calculs mathématiques, le domaine de l'informatique s'est élargi pour étudier le calcul en général. En 1945, IBM a fondé le Watson Scientific Computing Laboratory à l'Université Columbia à New York . La maison de fraternité rénovée dans le West Side de Manhattan a été le premier laboratoire d'IBM consacré à la science pure. Le laboratoire est le précurseur de la division Recherche d'IBM, qui exploite aujourd'hui des installations de recherche dans le monde entier. En fin de compte, la relation étroite entre IBM et l'université a contribué à l'émergence d'une nouvelle discipline scientifique, Columbia offrant l'un des premiers cours universitaires crédités en informatique en 1946. L'informatique a commencé à s'établir comme une discipline académique distincte dans les années 50 et le début des années 60. Le premier programme d' études en informatique au monde, le Cambridge Diploma in Computer Science , a débuté au Laboratoire d'informatique de l' Université de Cambridge en 1953. Le premier département d'informatique aux États-Unis a été créé à l' Université Purdue en 1962. Depuis que des ordinateurs pratiques sont devenus disponibles, de nombreux les applications de l'informatique sont devenues des domaines d'étude distincts à part entière.

Étymologie

Bien que proposé pour la première fois en 1956, le terme « informatique » apparaît dans un article de 1959 dans Communications of the ACM , dans lequel Louis Fein plaide pour la création d'une Graduate School in Computer Sciences analogue à la création de la Harvard Business School en 1921, justifiant la le nom en faisant valoir que, comme la science de gestion , le sujet est de nature appliquée et interdisciplinaire, tout en ayant les caractéristiques typiques d'une discipline académique. Ses efforts, et ceux d'autres tels que l'analyste numérique George Forsythe , ont été récompensés : les universités ont continué à créer de tels départements, en commençant par Purdue en 1962. Malgré son nom, une part importante de l'informatique n'implique pas l'étude des ordinateurs eux-mêmes. Pour cette raison, plusieurs noms alternatifs ont été proposés. Certains départements de grandes universités préfèrent le terme d' informatique , pour souligner précisément cette différence. Le scientifique danois Peter Naur a suggéré le terme datalogie , pour refléter le fait que la discipline scientifique tourne autour des données et du traitement des données, sans nécessairement impliquer les ordinateurs. La première institution scientifique à utiliser le terme a été le Département de datalogie de l'Université de Copenhague, fondé en 1969, Peter Naur étant le premier professeur de datalogie. Le terme est principalement utilisé dans les pays scandinaves. Un terme alternatif, également proposé par Naur, est la science des données ; ceci est maintenant utilisé pour un domaine multidisciplinaire d'analyse de données, y compris les statistiques et les bases de données.

Aux premiers jours de l'informatique, un certain nombre de termes pour les praticiens du domaine de l'informatique ont été suggérés dans les communications de l'ACM - turingineer , turologist , flow-charts-man , méta-mathématicien appliqué et épistémologue appliqué . Trois mois plus tard dans la même revue, un comptologue a été suggéré, suivi l'année suivante par un hypologue . Le terme informatique a également été suggéré.En Europe, des termes dérivés de traductions contractuelles de l'expression « information automatique » (par exemple « informazione automatica » en italien) ou « information et mathématiques » sont souvent utilisés, par exemple informatique (français), Informatik (allemand), informatica (italien, néerlandais ), Informática (espagnol, portugais), informatika ( langues slaves et hongrois ) ou Pliroforiki ( πληροφορική , ce qui signifie informatique) en grec . Des mots similaires ont également été adoptés au Royaume-Uni (comme à la School of Informatics, University of Edinburgh ). « Aux États-Unis, cependant, l' informatique est liée à l'informatique appliquée, ou à l'informatique dans le contexte d'un autre domaine.

Une citation folklorique, souvent attribuée à – mais presque certainement pas formulée pour la première fois par – Edsger Dijkstra , déclare que « l'informatique ne concerne pas plus les ordinateurs que l'astronomie ne concerne les télescopes ». La conception et le déploiement d'ordinateurs et de systèmes informatiques sont généralement considérés comme relevant de disciplines autres que l'informatique. Par exemple, l'étude du matériel informatique est généralement considérée comme faisant partie de l'ingénierie informatique , tandis que l'étude des systèmes informatiques commerciaux et de leur déploiement est souvent appelée technologie de l' information ou systèmes d'information . Cependant, il y a eu beaucoup d'échanges d'idées entre les différentes disciplines liées à l'informatique. La recherche en informatique recoupe également souvent d'autres disciplines, telles que la philosophie, les sciences cognitives , la linguistique , les mathématiques , la physique , la biologie , les sciences de la Terre , les statistiques et la logique .

L'informatique est considérée par certains comme ayant une relation beaucoup plus étroite avec les mathématiques que de nombreuses disciplines scientifiques, certains observateurs affirmant que l'informatique est une science mathématique. Les premières sciences informatiques ont été fortement influencées par les travaux de mathématiciens tels que Kurt Gödel , Alan Turing , John von Neumann , Rózsa Péter et Alonzo Church et il continue d' y avoir un échange d' idées utile entre les deux domaines dans des domaines tels que la logique mathématique , la catégorie théorie , théorie des domaines et algèbre .

La relation entre l'informatique et le génie logiciel est une question controversée, qui est encore plus brouillée par des différends sur la signification du terme « génie logiciel » et la définition de l'informatique. David Parnas , s'inspirant de la relation entre d'autres disciplines de l'ingénierie et des sciences, a affirmé que l'objectif principal de l'informatique est d'étudier les propriétés du calcul en général, tandis que l'objectif principal du génie logiciel est la conception de calculs spécifiques pour atteindre des objectifs pratiques. objectifs, faisant des deux disciplines distinctes mais complémentaires.

Les aspects académiques, politiques et de financement de l'informatique ont tendance à dépendre du fait qu'un département est formé avec une spécialisation en mathématiques ou en ingénierie. Les départements d'informatique avec un accent sur les mathématiques et avec une orientation numérique envisagent de s'aligner sur la science informatique . Les deux types de départements ont tendance à s'efforcer de faire le lien entre le domaine de l'éducation, voire l'ensemble de la recherche.

Philosophie

Epistémologie de l'informatique

Malgré le mot "science" dans son nom, il y a un débat pour savoir si l'informatique est ou non une discipline de la science, des mathématiques ou de l'ingénierie. Allen Newell et Herbert A. Simon ont soutenu en 1975,

L'informatique est une discipline empirique. Nous aurions appelé cela une science expérimentale, mais comme l'astronomie, l'économie et la géologie, certaines de ses formes uniques d'observation et d'expérience ne correspondent pas à un stéréotype étroit de la méthode expérimentale. Néanmoins, ce sont des expériences. Chaque nouvelle machine qui est construite est une expérience. En fait, construire la machine pose une question à la nature ; et nous écoutons la réponse en observant la machine en fonctionnement et en l'analysant par tous les moyens d'analyse et de mesure disponibles.

Il a depuis été soutenu que l'informatique peut être classée comme une science empirique car elle utilise des tests empiriques pour évaluer l'exactitude des programmes, mais un problème persiste dans la définition des lois et des théorèmes de l'informatique (le cas échéant) et la définition de la nature des expériences en informatique. Les partisans de la classification de l'informatique en tant que discipline d'ingénierie soutiennent que la fiabilité des systèmes informatiques est étudiée de la même manière que les ponts en génie civil et les avions en génie aérospatial . Ils soutiennent également que tandis que les sciences empiriques observent ce qui existe actuellement, l'informatique observe ce qui est possible d'exister et tandis que les scientifiques découvrent des lois à partir de l'observation, aucune loi appropriée n'a été trouvée en informatique et se préoccupe plutôt de créer des phénomènes.

Les partisans de la classification de l'informatique en tant que discipline mathématique soutiennent que les programmes informatiques sont des réalisations physiques d'entités mathématiques et que les programmes peuvent être raisonnés par déduction à l' aide de méthodes mathématiques formelles . Les informaticiens Edsger W. Dijkstra et Tony Hoare considèrent les instructions des programmes informatiques comme des phrases mathématiques et interprètent la sémantique formelle des langages de programmation comme des systèmes axiomatiques mathématiques .

Paradigmes de l'informatique

Un certain nombre d'informaticiens ont plaidé pour la distinction de trois paradigmes distincts en informatique. Peter Wegner a soutenu que ces paradigmes sont la science, la technologie et les mathématiques. Le groupe de travail de Peter Denning a soutenu qu'il s'agit de théorie, d'abstraction (modélisation) et de conception. Amnon H. Eden les a décrits comme le « paradigme rationaliste » (qui traite l'informatique comme une branche des mathématiques, qui prévaut en informatique théorique, et utilise principalement le raisonnement déductif ), le « paradigme technocratique » (qui pourrait être trouvé dans l'ingénierie approches, plus particulièrement en génie logiciel), et le "paradigme scientifique" (qui aborde les artefacts informatiques du point de vue empirique des sciences naturelles , identifiable dans certaines branches de l' intelligence artificielle ). L'informatique se concentre sur les méthodes impliquées dans la conception, la spécification, la programmation, la vérification, la mise en œuvre et les tests de systèmes informatiques fabriqués par l'homme.

Des champs

L'informatique ne concerne pas plus les ordinateurs que l'astronomie ne concerne les télescopes.

En tant que discipline, l'informatique couvre une gamme de sujets allant des études théoriques des algorithmes et des limites du calcul aux problèmes pratiques de la mise en œuvre de systèmes informatiques dans le matériel et les logiciels. Le CSAB , anciennement appelé Computing Sciences Accreditation Board—qui est composé de représentants de l' Association for Computing Machinery (ACM) et de l' IEEE Computer Society (IEEE CS)—identifie quatre domaines qu'il considère cruciaux pour la discipline de l'informatique : la théorie du calcul , des algorithmes et des structures de données , de la méthodologie et des langages de programmation , et des éléments et de l' architecture informatiques . En plus de ces quatre domaines, le CSAB identifie également des domaines tels que le génie logiciel, l'intelligence artificielle, les réseaux informatiques et la communication, les systèmes de bases de données, le calcul parallèle, le calcul distribué, l'interaction homme-machine, l'infographie, les systèmes d'exploitation et le calcul numérique et symbolique comme étant des domaines importants de l'informatique.

Informatique théorique

L'informatique théorique est d'esprit mathématique et abstrait, mais elle tire sa motivation du calcul pratique et quotidien. Son objectif est de comprendre la nature du calcul et, en conséquence de cette compréhension, de fournir des méthodologies plus efficaces.

Théorie du calcul

Selon Peter Denning , la question fondamentale sous-jacente à l'informatique est : « Que peut-on automatiser ? La théorie du calcul vise à répondre à des questions fondamentales sur ce qui peut être calculé et sur la quantité de ressources nécessaires pour effectuer ces calculs. Dans un effort pour répondre à la première question, la théorie de la calculabilité examine quels problèmes de calcul peuvent être résolus sur divers modèles théoriques de calcul . La deuxième question est abordée par la théorie de la complexité computationnelle , qui étudie les coûts en temps et en espace associés à différentes approches pour résoudre une multitude de problèmes de calcul.

Le fameux P = NP ? problème, l'un des problèmes du prix du millénaire , est un problème ouvert dans la théorie du calcul.

Exemple DFA.svg Syntaxe tree.svg Complexité classes.svg
Théorie des automates Langages formels Théorie de la calculabilité Théorie de la complexité computationnelle
Réseau d'interaction en tant que Configuration.png Blochsphere.svg XNOR ANSI Labelled.svg Kellerautomat.svg
Modèles de calcul Théorie de l'informatique quantique Théorie des circuits logiques Automates cellulaires

Théorie de l'information et du codage

La théorie de l'information, étroitement liée aux probabilités et aux statistiques , est liée à la quantification de l'information. Cela a été développé par Claude Shannon pour trouver des limites fondamentales sur les opérations de traitement du signal telles que la compression de données et sur le stockage et la communication de données de manière fiable. La théorie du codage est l'étude des propriétés des codes (systèmes de conversion d'informations d'une forme à une autre) et de leur adéquation à une application spécifique. Les codes sont utilisés pour la compression de données , la cryptographie , la détection et la correction d'erreurs , et plus récemment également pour le codage réseau . Les codes sont étudiés dans le but de concevoir des méthodes de transmission de données efficaces et fiables .

Hamming.jpg Canal symétrique binaire.svg Digitalteilchen.svg H0 h1 fehler.jpg Mandelpart2 rouge.png
Théorie du codage Capacité du canal Théorie algorithmique de l'information Théorie de la détection de signaux Complexité de Kolmogorov

Structures de données et algorithmes

Les structures de données et les algorithmes sont les études des méthodes de calcul couramment utilisées et de leur efficacité de calcul.

O ( n 2 ) Tri rapide anim.gif Arbre (informatique).svg TSP Allemagne 3.png SimplexRangeSearching.svg Sommets de contraction.jpg
Analyse des algorithmes Conception d'algorithmes Structures de données Optimisation combinatoire Géométrie computationnelle Algorithmes aléatoires

Théorie des langages de programmation et méthodes formelles

La théorie des langages de programmation est une branche de l'informatique qui traite de la conception, de la mise en œuvre, de l'analyse, de la caractérisation et de la classification des langages de programmation et de leurs caractéristiques individuelles . Il relève de la discipline de l'informatique, à la fois dépendant et affectant les mathématiques , le génie logiciel et la linguistique . C'est un domaine de recherche actif, avec de nombreuses revues académiques dédiées.

Les méthodes formelles sont un type particulier de technique mathématique pour la spécification , le développement et la vérification de systèmes logiciels et matériels . L'utilisation de méthodes formelles pour la conception de logiciels et de matériel est motivée par l'attente que, comme dans d'autres disciplines d'ingénierie, l'exécution d'une analyse mathématique appropriée peut contribuer à la fiabilité et à la robustesse d'une conception. Ils constituent un fondement théorique important pour le génie logiciel, en particulier lorsque la sûreté ou la sécurité est impliquée. Les méthodes formelles sont un complément utile aux tests de logiciels car elles aident à éviter les erreurs et peuvent également fournir un cadre pour les tests. Pour une utilisation industrielle, un support d'outil est nécessaire. Cependant, le coût élevé de l'utilisation de méthodes formelles signifie qu'elles ne sont généralement utilisées que dans le développement de systèmes à haute intégrité et vitaux , où la sûreté ou la sécurité est de la plus haute importance. Les méthodes formelles sont mieux décrites comme l'application d'une assez large variété de fondements théoriques de l'informatique , en particulier les calculs logiques , les langages formels , la théorie des automates et la sémantique des programmes , mais aussi les systèmes de types et les types de données algébriques à des problèmes de spécification logicielle et matérielle et vérification.

IF-THEN-ELSE-END flowchart.svg Compilateur.svg Python add5 syntax.svg Prop-tableau-1.svg Coq plus comm capture d'écran.jpg
Sémantique formelle Théorie des types Conception du compilateur Langages de programmation Vérification formelle Démonstration automatisée du théorème

Systèmes informatiques et processus de calcul

Intelligence artificielle

L'intelligence artificielle (IA) vise ou est nécessaire pour synthétiser des processus axés sur des objectifs tels que la résolution de problèmes, la prise de décision, l'adaptation environnementale, l'apprentissage et la communication que l'on trouve chez les humains et les animaux. Depuis ses origines dans la cybernétique et dans la conférence de Dartmouth (1956), la recherche en intelligence artificielle a été nécessairement transversale, s'appuyant sur des domaines d'expertise tels que les mathématiques appliquées , la logique symbolique , la sémiotique , le génie électrique , la philosophie de l'esprit , la neurophysiologie et les sciences sociales. intelligence . L'IA est associée dans l'esprit populaire au développement robotique , mais le principal domaine d'application pratique a été en tant que composant intégré dans les domaines du développement de logiciels , qui nécessitent une compréhension informatique. Le point de départ à la fin des années 1940 était la question d' Alan Turing « Les ordinateurs peuvent-ils penser ? », et la question reste effectivement sans réponse, bien que le test de Turing soit toujours utilisé pour évaluer la production informatique à l'échelle de l'intelligence humaine. Mais l'automatisation des tâches évaluatives et prédictives a de plus en plus de succès en tant que substitut à la surveillance et à l'intervention humaines dans les domaines d'application informatique impliquant des données complexes du monde réel.

Le rendu du cerveau humain par Nicolas P. Rougier.png Oeil humain, rendu à partir de Eye.png Réseau de neurones colorés.svg Processus de décision de Markov.svg
Théorie de l'apprentissage informatique Vision par ordinateur Les réseaux de neurones Planification et ordonnancement
Français.png Tour du chevalier.svg Ackley.gif AutonomicSystemModel.png
Traitement du langage naturel Théorie des jeux informatiques Calcul évolutif Informatique autonome
Neuron.svg KnnClassification.svg ROS C logo.jpg Alignement des règles.gif
Représentation et raisonnement La reconnaissance de formes Robotique L'intelligence en essaim

Architecture et organisation informatique

L'architecture informatique, ou organisation informatique numérique, est la conception conceptuelle et la structure opérationnelle fondamentale d'un système informatique. Il se concentre en grande partie sur la manière dont l'unité centrale de traitement s'exécute en interne et accède aux adresses en mémoire. Les ingénieurs informaticiens étudient la logique de calcul et la conception du matériel informatique , des composants individuels du processeur , des microcontrôleurs , des ordinateurs personnels aux superordinateurs et aux systèmes embarqués . Le terme « architecture » dans la littérature informatique peut être attribué aux travaux de Lyle R. Johnson et Frederick P. Brooks, Jr. , membres du département Machine Organization du principal centre de recherche d'IBM en 1959.

OrdinateurBasic.gif Intel Core2 arch.svg SIMD.svg Z80 arch.svg
Unité de traitement Microarchitecture Multitraitement Conception du processeur
Roomba original.jpg Organigramme.png Disposition du noyau.svg Uarm métal wiki2.jpg
Informatique omniprésente Architecture des systèmes Systèmes d'exploitation Entrée sortie
Informatique physique.svg Filtre FIR Général.svg Dép-1.svg Linker.svg
Système embarqué Informatique en temps réel Fiabilité Interprète

Calculs simultanés, parallèles et distribués

La concurrence est une propriété des systèmes dans lesquels plusieurs calculs s'exécutent simultanément et interagissent potentiellement les uns avec les autres. Un certain nombre de modèles mathématiques ont été développés pour le calcul simultané général, notamment les réseaux de Petri , les calculs de processus et le modèle de machine à accès aléatoire parallèle . Lorsque plusieurs ordinateurs sont connectés à un réseau tout en utilisant la concurrence, il s'agit d'un système distribué. Les ordinateurs de ce système distribué ont leur propre mémoire privée et les informations peuvent être échangées pour atteindre des objectifs communs.

Réseaux informatiques

Cette branche de l'informatique vise à gérer les réseaux entre ordinateurs du monde entier.

Sécurité informatique et cryptographie

La sécurité informatique est une branche de la technologie informatique dont l'objectif est de protéger les informations contre les accès non autorisés, les perturbations ou les modifications tout en maintenant l'accessibilité et la convivialité du système pour les utilisateurs auxquels il est destiné. La cryptographie est la pratique et l'étude de la dissimulation (chiffrement) et donc du déchiffrement (déchiffrement) des informations. La cryptographie moderne est en grande partie liée à l'informatique, car de nombreux algorithmes de cryptage et de décryptage sont basés sur leur complexité de calcul.

Bases de données et data mining

Une base de données est destinée à organiser, stocker et récupérer facilement de grandes quantités de données. Les bases de données numériques sont gérées à l'aide de systèmes de gestion de bases de données pour stocker, créer, maintenir et rechercher des données, via des modèles de base de données et des langages de requête . L'exploration de données est un processus de découverte de modèles dans de grands ensembles de données.

Infographie et visualisation

L'infographie est l'étude des contenus visuels numériques et implique la synthèse et la manipulation de données d'images. L'étude est liée à de nombreux autres domaines de l'informatique, notamment la vision par ordinateur , le traitement d'images et la géométrie computationnelle , et est fortement appliquée dans les domaines des effets spéciaux et des jeux vidéo .

Simx2=transl OK.svg FWDvsINV Cinématique HighResTransp.png 5-cell.gif Hud sur le chat.jpg Algorithme de suivi oculaire en lumière visible.jpg Csg tree.png
infographie 2D Animation par ordinateur Le rendu Réalité mixte Réalité virtuelle Modélisation solide

Traitement de l'image et du son

Les informations peuvent prendre la forme d'images, de sons, de vidéos ou d'autres supports multimédias. Des bits d'information peuvent être diffusés via des signaux . Son traitement est la notion centrale de l' informatique , la vision européenne de l' informatique , qui étudie les algorithmes de traitement de l'information indépendamment du type de support d'information - qu'il soit électrique, mécanique ou biologique. Ce domaine joue un rôle important dans la théorie de l'information , les télécommunications , l' ingénierie de l'information et a des applications dans le calcul d'images médicales et la synthèse vocale , entre autres. Quelle est la borne inférieure de la complexité des algorithmes de transformée de Fourier rapide ? est l'un des problèmes non résolus de l'informatique théorique .

DIT-FFT-papillon.png Modèle Bayer sur sensor.svg Comparaison de la qualité Opus daltonien compatible.svg Comparaison de la qualité jpg vs saveforweb.jpg MéningiomeMRISegmentation.png toms - Translation.svg
Algorithmes FFT Traitement d'image Reconnaissance de la parole Compression de données Informatique médicale Synthèse de discours

Informatique appliquée

Sciences informatiques, finance et ingénierie

L'informatique scientifique (ou science computationnelle ) est le domaine d'études concerné par la construction de modèles mathématiques et de techniques d' analyse quantitative et l'utilisation d'ordinateurs pour analyser et résoudre des problèmes scientifiques . Une utilisation majeure du calcul scientifique est la simulation de divers processus, y compris la dynamique des fluides computationnelle , les systèmes et circuits physiques, électriques et électroniques, ainsi que les sociétés et les situations sociales (notamment les jeux de guerre) ainsi que leurs habitats, entre autres. Les ordinateurs modernes permettent d'optimiser des conceptions telles que des avions complets. SPICE, ainsi que des logiciels pour la réalisation physique de conceptions nouvelles (ou modifiées), sont remarquables dans la conception de circuits électriques et électroniques. Ce dernier comprend des logiciels de conception essentiels pour les circuits intégrés .

Attracteur de Lorenz yb.svg Quark wiki.jpg Naphtalène-3D-balls.png 1u04-argonaute.png GalvesLocherbach - Basse résolution.gif Plutchik-roue.svg Radiographie de la main, où l'âge osseux est automatiquement trouvé par le logiciel BoneXpert.jpg Elmer-pump-heatequation.png Bachlut1.png
Analyse numérique Physique computationnelle Chimie computationnelle Bioinformatique Neuroinformatique Psychoinformatique Informatique médicale Ingénierie informatique Musicologie computationnelle

Informatique sociale et interaction homme-machine

L'informatique sociale est un domaine qui s'intéresse à l'intersection du comportement social et des systèmes informatiques. La recherche sur l'interaction homme-machine développe des théories, des principes et des lignes directrices pour les concepteurs d'interfaces utilisateur.

Génie logiciel

Le génie logiciel est l'étude de la conception, de la mise en œuvre et de la modification du logiciel afin de s'assurer qu'il est de haute qualité, abordable, maintenable et rapide à construire. Il s'agit d'une approche systématique de la conception de logiciels, impliquant l'application de pratiques d'ingénierie au logiciel. Le génie logiciel s'occupe de l'organisation et de l'analyse des logiciels, il ne s'occupe pas seulement de la création ou de la fabrication de nouveaux logiciels, mais de leur agencement interne et de leur maintenance. Par exemple, les tests de logiciels , l'ingénierie des systèmes , la dette technique et les processus de développement de logiciels .

Découvertes

Le philosophe de l'informatique Bill Rapaport a noté trois grandes idées de l'informatique :

Toutes les informations sur n'importe quel problème calculable peuvent être représentées en utilisant uniquement 0 et 1 (ou toute autre paire bistable qui peut basculer entre deux états facilement distinguables, tels que "marche/arrêt", "magnétisé/démagnétisé", "haut -tension/basse tension", etc.).
  • L'intuition d' Alan Turing : il n'y a que cinq actions qu'un ordinateur doit effectuer pour faire « n'importe quoi ».
Chaque algorithme peut être exprimé dans un langage pour un ordinateur composé de seulement cinq instructions de base :
  • déplacer à gauche d'un endroit ;
  • déplacer à droite d'un endroit ;
  • lire le symbole à l'emplacement actuel ;
  • imprimer 0 à l'emplacement actuel ;
  • imprimer 1 à l'emplacement actuel.
  • Le point de vue de Corrado Böhm et Giuseppe Jacopini : il n'y a que trois façons de combiner ces actions (en d'autres plus complexes) qui sont nécessaires pour qu'un ordinateur puisse faire « n'importe quoi ».
Seules trois règles sont nécessaires pour combiner n'importe quel ensemble d'instructions de base en d'autres plus complexes :
  • séquence : faites d'abord ceci, puis faites cela;
  • sélection : SI tel ou tel est le cas, ALORS faire ceci, AUTREMENT faire cela ;
  • répétition : PENDANT que tel ou tel est le cas, FAITES ceci.
Notez que les trois règles de l'insight de Boehm et Jacopini peuvent être encore simplifiées avec l'utilisation de goto (ce qui signifie qu'elle est plus élémentaire que la programmation structurée ).

Paradigmes de programmation

Les langages de programmation peuvent être utilisés pour accomplir différentes tâches de différentes manières. Les paradigmes de programmation courants incluent :

  • Programmation fonctionnelle , un style de construction de la structure et des éléments de programmes informatiques qui traite le calcul comme l'évaluation de fonctions mathématiques et évite les données d'état et mutables. C'est un paradigme de programmation déclarative, ce qui signifie que la programmation se fait avec des expressions ou des déclarations au lieu d'instructions.
  • Programmation impérative , un paradigme de programmation qui utilise des instructions qui modifient l'état d'un programme. De la même manière que le mode impératif dans les langues naturelles exprime des commandes, un programme impératif consiste en des commandes que l'ordinateur doit exécuter. La programmation impérative se concentre sur la description du fonctionnement d'un programme.
  • Programmation orientée objet , un paradigme de programmation basé sur le concept d'« objets », qui peuvent contenir des données, sous forme de champs, souvent appelés attributs ; et le code, sous forme de procédures, souvent appelées méthodes. Une caractéristique des objets est que les procédures d'un objet peuvent accéder et souvent modifier les champs de données de l'objet auquel elles sont associées. Ainsi, les programmes informatiques orientés objet sont constitués d'objets qui interagissent les uns avec les autres.
  • Programmation orientée services , un paradigme de programmation qui utilise les « services » comme unité de travail informatique, pour concevoir et mettre en œuvre des applications commerciales intégrées et des programmes logiciels essentiels à la mission

De nombreux langages prennent en charge plusieurs paradigmes, faisant de la distinction une question de style plutôt que de capacités techniques.

Académique

Les conférences sont des événements importants pour la recherche en informatique. Lors de ces conférences, des chercheurs des secteurs public et privé présentent leurs travaux récents et se rencontrent. Contrairement à la plupart des autres domaines académiques, en informatique, le prestige des articles de conférence est plus grand que celui des publications dans des revues. Une explication proposée pour cela est que le développement rapide de ce domaine relativement nouveau nécessite un examen et une distribution rapides des résultats, une tâche mieux gérée par des conférences que par des revues.

Éducation

L'informatique , connue sous ses synonymes proches, Informatique , études informatiques , est enseignée dans les écoles britanniques depuis l'époque du traitement par lots , des cartes sensibles et du ruban adhésif, mais généralement à un petit nombre d'étudiants. En 1981, la BBC a produit un réseau de micro-ordinateurs et de salles de classe et les études informatiques sont devenues courantes pour les étudiants du niveau GCE O (11-16 ans) et les étudiants en informatique au niveau A. Son importance a été reconnue et il est devenu un élément obligatoire du programme national pour les niveaux clés 3 et 4. En septembre 2014, il est devenu un droit pour tous les élèves de plus de 4 ans.

Aux États - Unis , avec 14 000 districts scolaires décidant du programme d'études, l'offre était fracturée. Selon un rapport de 2010 de l' Association for Computing Machinery (ACM) et de la Computer Science Teachers Association (CSTA), seuls 14 États sur 50 ont adopté des normes d'enseignement importantes pour l'informatique au lycée.

Israël, la Nouvelle-Zélande et la Corée du Sud ont inclus l'informatique dans leurs programmes nationaux d'enseignement secondaire, et plusieurs autres suivent.

Voir également

Remarques

Les références

Lectures complémentaires

Aperçu

  • Tucker, Allen B. (2004). Manuel d'informatique (2e éd.). Chapman et Hall/CRC. ISBN 978-1-58488-360-9.
    • "Dans plus de 70 chapitres, tous nouveaux ou considérablement révisés, on peut trouver toutes sortes d'informations et de références sur l'informatique que l'on peut imaginer. […] l'encyclopédie de 2,5 kilogrammes avec ses 110 articles d'enquête […]." (Christoph Meinel, Zentralblatt MATH )
  • van Leeuwen, Jan (1994). Manuel d'informatique théorique . La presse du MIT. ISBN 978-0-262-72020-5.
    • "[…] cet ensemble est le plus unique et peut-être le plus utile à la communauté [de l'informatique théorique], à la fois pour l'enseignement et la recherche […]. Les livres peuvent être utilisés par toute personne souhaitant simplement acquérir une compréhension d'un de ces domaines, ou par quelqu'un qui souhaite faire de la recherche sur un sujet, ou par des instructeurs souhaitant trouver des informations opportunes sur un sujet qu'ils enseignent en dehors de leurs principaux domaines d'expertise. (Rocky Ross, SIGACT News )
  • Ralston, Antoine ; Reilly, Edwin D. ; Hemmendinger, David (2000). Encyclopédie de l'informatique (4e éd.). Dictionnaires de Grove. ISBN 978-1-56159-248-7.
    • "Depuis 1976, c'est l'ouvrage de référence définitif sur l'informatique, l'informatique et l'informatique. […] Classés par ordre alphabétique et classés en grands domaines, les entrées couvrent le matériel, les systèmes informatiques, l'information et les données, les logiciels, les mathématiques de l'informatique , théorie du calcul, méthodologies, applications et milieu informatique. Les éditeurs ont fait un travail louable en mélangeant perspective historique et informations de référence pratiques. L'encyclopédie reste essentielle pour la plupart des collections de référence des bibliothèques publiques et universitaires. (Joe Accardin, Université du nord-est de l'Illinois, Chicago)
  • Edwin D. Reilly (2003). Jalons en informatique et technologie de l'information . Groupe d'édition Greenwood. ISBN 978-1-57356-521-9.

Littérature choisie

Des articles

Programme et classification

Liens externes

Bibliographie et moteurs de recherche académiques

Organisations professionnelles

Divers