L'informatique

Un article de Wikipédia, l'encyclopédie libre
Aller à la navigation Aller à la recherche

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. [1] 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 . [2] [3]

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. [4] La théorie du langage de programmation considère les approches de la description des processus de calcul, 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 . [5] La préoccupation fondamentale de l'informatique est de déterminer ce qui peut et ne peut pas être automatisé. [6] 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 ». [7]
Ada Lovelace a publié le premier algorithme destiné au traitement sur ordinateur. [8]

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. [9] En 1673, Gottfried Leibniz a fait la démonstration d'une calculatrice mécanique numérique, appelée Stepped Reckoner . [10] Leibniz peut être considéré comme le premier informaticien et théoricien de l'information, pour, entre autres raisons, documenter le système de nombres binaires. En 1820, Thomas de Colmar lance l' industrie de la calculatrice mécanique [note 1] 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 . [11] Il a commencé à développer cette machine en 1834 et "en moins de deux ans, il avait esquissé plusieurs des caractéristiques saillantes de l'ordinateur moderne". [12] « Une étape cruciale a été l'adoption d'un système de cartes perforées dérivé du métier Jacquard » [12] le rendant programmable à l'infini. [note 2]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. [13] 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 . À la suite de Babbage, bien qu'ignorant ses travaux antérieurs, Percy Ludgate publia en 1909 [14]le 2e 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 convainquit IBM, qui fabriquait toutes sortes d'équipements pour cartes perforées et était également dans le secteur des calculatrices [15], de développer sa calculatrice programmable géante, l' ASCC/Harvard Mark I , basée sur sur le moteur analytique de Babbage, 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é". [16]

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. [17] Comme il est devenu clair que les ordinateurs pouvaient être utilisés pour plus que des 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. [18] 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. [19] L' informatique a commencé à être établie en tant que discipline académique distincte dans les années 1950 et au début des années 1960. [20] [21] Le premier programme d' études en informatique au monde, le Cambridge Diploma in Computer Science , a débuté à l' Université de Cambridge Laboratoire d'informatique en 1953. Le premier département d'informatique aux États-Unis a été formé à l' Université Purdue en 1962. [22] Depuis que les ordinateurs pratiques sont devenus disponibles, de nombreuses 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, [23] le terme « informatique » apparaît dans un article de 1959 dans Communications of the ACM , [24] dans lequel Louis Fein plaide pour la création d'une Graduate School in Computer Sciences analogue à la création de Harvard. Business School en 1921, [25] justifiant le nom en arguant que, comme les sciences de gestion , la matière est de nature appliquée et interdisciplinaire, tout en ayant les caractéristiques typiques d'une discipline académique. [24] 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. [26] 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. [27] 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 , [28]pour refléter le fait que la discipline scientifique tourne autour des données et du traitement des données, sans nécessairement faire appel à des 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é . [29] Trois mois plus tard dans le même journal, un comptologue a été suggéré, suivi l'année suivante par un hypologue . [30] Le terme informatique a également été suggéré. [31] 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 ). [32]« Aux États-Unis, cependant, l' informatique est liée à l'informatique appliquée, ou à l'informatique dans le contexte d'un autre domaine. [33]

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 ». [note 3] 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. [20] L'informatique primitive a été fortement influencée 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 utile d'idées entre les deux domaines dans des domaines tels que les mathématiques. la logique , la théorie des catégories , théorie de domaine , et l' algèbre . [23]

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. [34] 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, faisant des deux disciplines distinctes mais complémentaires. [35]

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

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. [36] Le groupe de travail de Peter Denning a soutenu qu'il s'agit de théorie, d'abstraction (modélisation) et de conception. [37] Amnon H. Eden les a décrits comme le « paradigme rationaliste » (qui traite l'informatique comme une branche des mathématiques, qui prévaut dans l'informatique théorique, et utilise principalement le raisonnement déductif), le « paradigme technocratique » (qui pourrait être trouvé dans les approches d'ingénierie, plus particulièrement en génie logiciel), et le « paradigme scientifique » (qui aborde les artefacts informatiques du point de vue empirique des sciences naturelles , identifiables dans certaines branches de l' artificiel renseignement ). [38] 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. [39]

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. [40] [41] CSAB , anciennement appelé Computing Sciences Accreditation Board—qui est composé de représentants de l' Association for Computing Machinery (ACM) et de la IEEE Computer Society (IEEE CS) [42] —identifie quatre domaines qu'il considère cruciales pour la discipline de l'informatique : théorie du calcul , algorithmes et structures de données , méthodologie et langages de programmation , etéléments informatiques et architecture . 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. [40]

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 ? [20] 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 , [43] est un problème ouvert dans la théorie du calcul.

Exemple DFA.svg Syntaxe tree.svg Classes de complexité.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. Ceci 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. [44] 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 de réseau. Les codes sont étudiés dans le but de concevoir des méthodes de transmission de données efficaces et fiables . [45]

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 . [46]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 pour 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 informatiques

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. [47] Les ingénieurs informaticiens étudient la logique informatique et la conception du matériel informatique , des composants de processeur individuels , 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

Informatique concurrente, parallèle et distribuée

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. [48] Un certain nombre de modèles mathématiques ont été développés pour le calcul simultané général, y compris les réseaux de Petri , les calculs de processus et le modèle Parallel Random Access Machine . [49] Lorsque plusieurs ordinateurs sont connectés à un réseau tout en utilisant la concurrence, cela s'appelle 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. [50]

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 à la 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

Science informatique, 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 est remarquable dans la conception de circuits électriques et électroniques, [51]ainsi que des logiciels pour la réalisation physique de conceptions nouvelles (ou modifiées). Ce dernier comprend des logiciels de conception essentiels pour les circuits intégrés . [ citation nécessaire ]

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 : [52]

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 : [53]
  • 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.
  • L'intuition de Corrado Böhm et Giuseppe Jacopini : il n'y a que trois manières de combiner ces actions (en d'autres plus complexes) qui sont nécessaires pour qu'un ordinateur puisse faire « n'importe quoi ». [54]
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. [55]
  • Programmation impérative , un paradigme de programmation qui utilise des instructions qui modifient l'état d'un programme. [56] 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. [57]
  • 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 plus que de capacités techniques. [58]

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. [59] [60] 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. [61]

É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. [62] 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 de niveau GCE O (11-16 ans) et les étudiants de niveau A en informatique . Son importance a été reconnue et il est devenu une partie obligatoire du programme d'études national, pour les Key Stage 3 & 4. En septembre 2014, il est devenu un droit pour tous les élèves de plus de 4 ans. [63]

Aux États - Unis , avec 14 000 districts scolaires décidant du programme d'études, l'offre était fracturée. [64] 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. [65]

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

Voir aussi

Remarques

  1. ^ En 1851
  2. ^ "L'introduction de cartes perforées dans le nouveau moteur était importante non seulement en tant que forme de contrôle plus pratique que les tambours, ou parce que les programmes pouvaient désormais être d'une étendue illimitée, et pouvaient être stockés et répétés sans risque d'introduire des erreurs de réglage la machine à la main ; c'était important aussi parce que cela servait à cristalliser le sentiment de Babbage qu'il avait inventé quelque chose de vraiment nouveau, quelque chose de bien plus qu'une machine à calculer sophistiquée. Bruce Collier , 1970
  3. ^ Voir l'entrée " Informatique " sur Wikiquote pour l'historique de cette citation.
  4. ^ Le mot "n'importe quoi" est écrit entre guillemets car il y a des choses que les ordinateurs ne peuvent pas faire. Un exemple est : répondre à la question si un programme informatique donné arbitraire finira par se terminer ou s'exécuter pour toujours (le problème de l' arrêt ).

Références

  1. ^ "Qu'est-ce que l'informatique ? - L'informatique. L'Université d'York" . www.cs.york.ac.uk . Consulté le 11 juin 2020 .
  2. ^ "Recherche WordNet—3.1" . Wordnetweb.princeton.edu . Consulté le 14 mai 2012 .
  3. ^ "Définition de l'informatique | Dictionary.com" . www.dictionary.com . Consulté le 11 juin 2020 .
  4. ^ Harel, David. (2014). Algorithmique L'esprit de l'informatique . Springer Berlin. ISBN 978-3-642-44135-6. OCLC  876384882 .
  5. ^ "INFORMATIQUE : LA DISCIPLINE" (PDF) . 25 mai 2006. Archivé (PDF) à partir de l'original le 25 mai 2006 . Consulté le 4 janvier 2021 .
  6. ^ La presse du MIT. "Que peut-on automatiser ? Étude de recherche en informatique et en ingénierie | La presse du MIT" . mitpress.mit.edu .
  7. ^ "Institut Charles Babbage : qui était Charles Babbage ?" . cbi.umn.edu . Consulté le 28 décembre 2016 .
  8. ^ "Ada Lovelace | Babbage Engine | Computer History Museum" . www.computerhistory.org . Consulté le 28 décembre 2016 .
  9. ^ "Wilhelm Schickard - Ein Computerpionier" (PDF) (en allemand).
  10. ^ Keates, Fiona (25 juin 2012). "Une brève histoire de l'informatique" . Le Dépôt . La Société Royale.
  11. ^ "Musée des sciences, moteur analytique de Babbage, 1834-1871 (modèle d'essai)" . Consulté le 11 mai 2020 .
  12. ^ un b Anthony Hyman (1982). Charles Babbage, pionnier de l'informatique .
  13. ^ "Une sélection et une adaptation des notes d'Ada trouvées dans Ada, L'enchanteresse des nombres", par Betty Alexandra Toole Ed.D. Strawberry Press, Mill Valley, CA" . Archivé de l'original le 10 février 2006 . Récupéré le 4 mai 2006 .
  14. ^ "La collection d'informatique John Gabriel Byrne" (PDF) . Archivé de l'original le 16 avril 2019 . Récupéré le 8 août 2019 .
  15. ^ "En ce sens, Aiken avait besoin d'IBM, dont la technologie comprenait l'utilisation de cartes perforées, l'accumulation de données numériques et le transfert de données numériques d'un registre à un autre", Bernard Cohen , p.44 (2000)
  16. ^ Brian Randell , p. 187, 1975
  17. ^ L' Association for Computing Machinery (ACM) a été fondée en 1947.
  18. ^ "Archives IBM : 1945" . IBM.com . Consulté le 19 mars 2019 .
  19. ^ "IBM100 - Les origines de l'informatique" . IBM.com. 15 septembre 1995 . Consulté le 19 mars 2019 .
  20. ^ A b c Denning, Peter J. (2000). "Informatique: La Discipline" (PDF) . Encyclopédie de l'informatique . Archivé de l'original (PDF) le 25 mai 2006.
  21. ^ "Quelques statistiques EDSAC" . Université de Cambridge . Consulté le 19 novembre 2011 .
  22. ^ "Le pionnier de l'informatique Samuel D. Conte décède à 85 ans" . Informatique de Purdue. 1er juillet 2002 . Consulté le 12 décembre 2014 .
  23. ^ un b Tedre, Matti (2014). La science de l'informatique : façonner une discipline . Taylor et Francis / CRC Press.
  24. ^ un b Louis Fine (1959). « Le rôle de l'université dans les ordinateurs, le traitement des données et les domaines connexes ». Communications de l'ACM . 2 (9) : 7-14. doi : 10.1145/368424.368427 . S2CID 6740821 .  
  25. ^ "Histoire orale de l'Université de Stanford" . Université de Stanford . Consulté le 30 mai 2013 .
  26. ^ Donald Knuth (1972). "George Forsythe et le développement de l'informatique" . Comm. ACM . Archivé le 20 octobre 2013 à la Wayback Machine
  27. ^ Matti Tedre (2006). « Le développement de l'informatique : une perspective socioculturelle » (PDF) . p. 260 . Consulté le 12 décembre 2014 .
  28. ^ Pierre Naur (1966). "La science de la datalogie". Communications de l'ACM . 9 (7) : 485. doi : 10.1145/365719.366510 . S2CID 47558402 .  
  29. ^ Weiss, EA; Corley, Henry PT "Lettres à l'éditeur". Communications de l'ACM . 1 (4) : 6. doi : 10.1145/368796.368802 . S2CID 5379449 . 
  30. ^ Communications de l'ACM 2(1):p.4
  31. ^ Ordinateur IEEE 28(12) : p.136
  32. ^ P. Mounier-Kuhn, L'Informatique en France, de la seconde guerre mondiale au Plan Calcul. L'émergence d'une science , Paris, PUPS, 2010, ch. 3 & 4.
  33. ^ Groth, Dennis P. (février 2010). « Pourquoi un diplôme en informatique ? » . Communications de l'ACM . Cacm.acm.org.
  34. ^ Tedre, M. (2011). « L'informatique en tant que science : une enquête sur les points de vue concurrents ». Esprits et machines . 21 (3) : 361-387. doi : 10.1007/s11023-011-9240-4 . S2CID 14263916 . 
  35. ^ Parnas, DL (1998). "Les programmes de génie logiciel ne sont pas des programmes d'informatique". Annales de génie logiciel . 6 : 19-37. doi : 10.1023/A:1018949113292 . S2CID 35786237 . , p. 19 : « Plutôt que de traiter le génie logiciel comme un sous-domaine de l'informatique, je le traite comme un élément de l'ensemble, Génie civil, Génie mécanique, Génie chimique, Génie électrique, […] »
  36. ^ Wegner, P. (13-15 octobre 1976). Paradigmes de recherche en informatique—Actes de la 2e Conférence internationale sur le génie logiciel . San Francisco, Californie, États-Unis : IEEE Computer Society Press, Los Alamitos, CA.
  37. ^ Denning, PJ; Comer, DE; Gries, D.; Mulder, MC; Tucker, A.; Turner, AJ ; Young, PR (janvier 1989). "L'informatique comme discipline". Communications de l'ACM . 32 : 9–23. doi : 10.1145/63238.63239 . S2CID 723103 . 
  38. ^ Eden, AH (2007). « Trois paradigmes de l'informatique » (PDF) . Esprits et machines . 17 (2) : 135-167. CiteSeerX 10.1.1.304.7763 . doi : 10.1007/s11023-007-9060-8 . S2CID 3023076 . Archivé de l'original (PDF) le 15 février 2016.   
  39. ^ Turner, Raymond; Angius, Nicola (2019). "La philosophie de l'informatique" . Dans Zalta, Edward N. (éd.). L'Encyclopédie de philosophie de Stanford .
  40. ^ un b "L'informatique en tant que Profession" . Bureau d'accréditation en sciences informatiques. 28 mai 1997. Archivé de l'original le 17 juin 2008 . Consulté le 23 mai 2010 .
  41. ^ Comité sur les principes fondamentaux de l'informatique : défis et opportunités, Conseil national de recherches (2004). Informatique : Réflexions sur le terrain, Réflexions sur le terrain . Presse des Académies nationales. ISBN 978-0-309-09301-9.
  42. ^ "CSAB Dirigeant l'Enseignement de l'Informatique" . CSAB. 3 août 2011 . Consulté le 19 novembre 2011 .
  43. ^ Clay Mathematics Institute P = NP Archivé le 14 octobre 2013, à la Wayback Machine
  44. ^ P. Collins, Graham (14 octobre 2002). "Claude E. Shannon : Fondateur de la théorie de l'information" . Scientifique américain . Consulté le 12 décembre 2014 .
  45. ^ Van Nam Huynh; Vladik Kreinovich ; Songsak Sriboonchitta; 2012. Analyse d'incertitude en économétrie avec applications. Springer Science & Business Media. p. 63. ISBN 978-3-642-35443-4 . 
  46. ^ Phillip A. Laplante, 2010. Encyclopédie du génie logiciel en trois volumes (imprimé). Presse CRC. p. 309. ISBN 978-1-351-24926-3 . 
  47. ^ A. Thisted, Ronald (7 avril 1997). "Architecture informatique" (PDF) . L'Université de Chicago.
  48. ^ Jiacun Wang, 2017. Systèmes embarqués en temps réel. Wiley. p. 12. ISBN 978-1-119-42070-5 . 
  49. ^ Gordana Dodig-Crnkovic; Raffaela Giovagnoli; 2013. Nature informatique : perspective du centenaire de Turing. Springer Science & Business Media. p. 247. ISBN 978-3-642-37225-4 . 
  50. ^ Simon Elias Bibri; 2018. Villes intelligentes et durables du futur : le potentiel inexploité de l'analyse des mégadonnées et de l'informatique contextuelle pour faire progresser la durabilité. Springer. p. 74. ISBN 978-3-319-73981-6 . 
  51. ^ Muhammad H. Rashid, 2016. SPICE pour l'électronique de puissance et l'énergie électrique. Presse CRC. p. 6. ISBN 978-1-4398-6047-2 . 
  52. ^ Rapaport, William J. (20 septembre 2013). « Qu'est-ce que le calcul ? » . Université d'État de New York à Buffalo.
  53. ^ B. Jack Copeland, 2012. Cerveau électronique d'Alan Turing : La lutte pour construire l'ACE, l'ordinateur le plus rapide du monde. OUP Oxford. p. 107. ISBN 978-0-19-960915-4 . 
  54. ^ Charles W. Herbert, 2010. Une introduction à la programmation à l'aide d'Alice 2.2. Cengager l'apprentissage. p. 122. ISBN 0-538-47866-7 . 
  55. ^ Md. Rezaul Karim; Sridhar Alla ; 2017. Scala et Spark pour Big Data Analytics : explorez les concepts de programmation fonctionnelle, de streaming de données et d'apprentissage automatique. Packt Publishing Ltd. p. 87. ISBN 978-1-78355-050-0 . 
  56. ^ Lex Sheehan, 2017. Apprendre la programmation fonctionnelle dans Go : Changez la façon dont vous abordez vos applications à l'aide de la programmation fonctionnelle dans Go. Packt Publishing Ltd. p. 16. ISBN 978-1-78728-604-7 . 
  57. ^ Evelio Padilla, 2015. Systèmes d'automatisation de sous-stations : conception et mise en œuvre. Wiley. p. 245. ISBN 978-1-118-98730-8 . 
  58. ^ "Langage de programmation multi-paradigme" . développeur.mozilla.org . Fondation Mozilla . Archivé de l'original le 21 août 2013.
  59. ^ Meyer, Bertrand (avril 2009). "Point de vue : Évaluation de la recherche pour l'informatique". Communications de l'ACM . 25 (4) : 31-34. doi : 10.1145/1498765.1498780 . S2CID 8625066 . 
  60. ^ Patterson, David (août 1999). "Évaluer les informaticiens et les ingénieurs pour la promotion et la permanence" . Association de recherche en informatique.
  61. ^ Fortnow, Lance (août 2009). "Point de vue : il est temps que l'informatique grandisse" . Communications de l'ACM . 52 (8) : 33-35. doi : 10.1145/1536616.1536631 .
  62. ^ Burns, Judith (3 avril 2016). « Style des années 70 en informatique de niveau A » . Consulté le 9 février 2019 .
  63. ^ Jones, Michael (octobre 1915). "Développement d'un programme d'études en informatique en Angleterre : Exploration des approches aux États-Unis" (PDF) . Fiducie commémorative Winston Churchill . Consulté le 9 février 2019 .
  64. ^ "Informatique : Plus seulement un cours au choix" . Semaine de l'éducation . 25 février 2014.
  65. ^ Wilson, Cameron; Sudol, Leigh Ann; Stephenson, Chris ; Stehlik, Marc (2010). « Courir à vide : l'échec à enseigner l'informatique de la maternelle à la 12e année à l'ère numérique » (PDF) . ACM.
  66. ^ "A est pour l'algorithme" . L'économiste . 26 avril 2014.
  67. ^ "Computer à l'école Comparaisons internationales" (PDF) . Consulté le 20 juillet 2015 .
  68. ^ "Ajout de code au programme d'études" . Le New York Times . 23 mars 2014.

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], à l'appui à la fois de l'enseignement et de 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 technologies de l'information . Groupe d'édition Greenwood. ISBN 978-1-57356-521-9.

Littérature sélectionnée

Articles

Curriculum et classification

Liens externes

Bibliographie et moteurs de recherche académiques

Organisations professionnelles

Divers