IngénierieL'ingénierie est l'ensemble des fonctions qui mènent de la conception et des études, de l'achat et du contrôle de fabrication des équipements, à la construction et à la mise en service d'une installation technique ou industrielle. Par extension, le terme est aussi souvent utilisé dans d'autres domaines : on parle par exemple d'ingénierie informatique ou d'ingénierie financière.
Programmation déclarativevignette|Binario cropped. La programmation déclarative est un paradigme de programmation qui consiste à créer des applications sur la base de composants logiciels indépendants du contexte et ne comportant aucun état interne. Autrement dit, l'appel d'un de ces composants avec les mêmes arguments produit exactement le même résultat, quel que soit le moment et le contexte de l'appel. En programmation déclarative, on décrit le quoi, c'est-à-dire le problème.
Programmation procéduraleEn informatique, la programmation procédurale est un paradigme qui se fonde sur le concept d'appel procédural. Une procédure, aussi appelée routine, sous-routine ou fonction (à ne pas confondre avec les fonctions de la programmation fonctionnelle reposant sur des fonctions mathématiques), contient simplement une série d'étapes à réaliser. N'importe quelle procédure peut être appelée à n'importe quelle étape de l'exécution du programme, y compris à l'intérieur d'autres procédures, voire dans la procédure elle-même (récursivité).
Ingénierie des systèmesL'ingénierie des systèmes ou ingénierie système est une approche scientifique interdisciplinaire, dont le but est de formaliser et d'appréhender la conception et la validation de systèmes complexes. L'ingénierie des systèmes a pour objectif de maîtriser et de contrôler la conception de systèmes dont la complexité ne permet pas le pilotage simple. Par système, on entend un ensemble d'éléments humains ou matériels en interdépendance les uns les autres et qui inter-opèrent à l'intérieur de frontières ouvertes ou non sur l'environnement.
Programmation informatiquevignette|Liste d'instructions sur le Commodore 64 La programmation, appelée aussi codage dans le domaine informatique, désigne l'ensemble des activités qui permettent l'écriture des programmes informatiques. C'est une étape importante du développement de logiciels (voire de matériel). L'écriture d'un programme se fait dans un langage de programmation. Un logiciel est un ensemble de programmes (qui peuvent être écrits dans des langages de programmation différents) destiné à la réalisation de certaines tâches par un (ou plusieurs) utilisateurs du logiciel.
Génie civilLe génie civil représente l'ensemble des techniques de constructions civiles. Les ingénieurs civils ou ingénieurs en génie civil s’occupent de la conception, la réalisation, l’exploitation et la réhabilitation d’ouvrages de construction et d’infrastructures dont ils assurent la gestion afin de répondre aux besoins de la société, tout en assurant la sécurité du public et la protection de l’environnement. Très variées, leurs réalisations se répartissent principalement dans cinq grands domaines d’intervention : structures, géotechnique, hydraulique, transport, et environnement.
Ingénierie électroniquevignette|Amplificateur L’ingénierie électronique est la branche de l’ingénierie qui traite les nouvelles technologies (téléphone portable, télévision...). Ils peuvent aussi bien programmer que créer le produit en question. Cela inclut l’ingénierie des appareils électroniques ainsi que l'ingénierie de la programmation. D’autres branches de l’ingénierie comme l’ingénierie biomédicale, les télécommunications et le génie informatique ont été, au moment de leur naissance, seulement des spécialisations de l’ingénierie électronique.
Programmation fonctionnelleLa programmation fonctionnelle est un paradigme de programmation de type déclaratif qui considère le calcul en tant qu'évaluation de fonctions mathématiques. Comme le changement d'état et la mutation des données ne peuvent pas être représentés par des évaluations de fonctions la programmation fonctionnelle ne les admet pas, au contraire elle met en avant l'application des fonctions, contrairement au modèle de programmation impérative qui met en avant les changements d'état.
ÉlectrotechniqueL’électrotechnique se rapporte . Elle concerne par exemple la production, le transport, la distribution, le traitement, la transformation, la gestion et l’utilisation de l’énergie électrique. Parfois appelée « génie électrique », elle remonte à l'invention, en 1600, par William Gilbert, d'un électromètre permettant de déterminer la présence des charges électriques, et à l'invention, en 1672, par Otto von Guericke, d'un générateur électrostatique permettant de séparer des charges électriques à l'aide d'une machine.
Langage de programmationthumb|Fragment de code écrit dans le langage de programmation JavaScript. Un langage de programmation est un langage informatique destiné à formuler des algorithmes et produire des programmes informatiques qui les appliquent. D'une manière similaire à une langue naturelle, un langage de programmation est composé d'un alphabet, d'un vocabulaire, de règles de grammaire, de significations, mais aussi d'un environnement de traduction censé rendre sa syntaxe compréhensible par la machine.
Génie industrielSelon l'American Institute of Industrial Engineers, « Le génie industriel englobe la conception, l'amélioration et l'installation de systèmes intégrés. Il utilise les connaissances provenant des sciences mathématiques, physiques et sociales, ainsi que les principes et méthodes propres au “génie” ou, à l'art de l'ingénieur, dans le but de spécifier, prédire et évaluer les résultats découlant de ces systèmes. » On peut résumer tous les domaines qui touchent au génie industriel par la phrase : « Optimisation des performances globales de l'entreprise.
Génie informatiqueLe génie informatique, ou l'ingénierie informatique, est une discipline qui traite de la conception, du développement et de la fabrication de systèmes informatiques, aussi bien d'un point de vue matériels que logiciels. Le terme anglais computer engineering est parfois utilisé dans un sens plus restreint, considérant le génie informatique comme une discipline reliée au génie électrique, et fait alors référence à la conception, au développement et à la fabrication du matériel uniquement.
Engineering managementEngineering management is the application of the practice of management to the practice of engineering. Engineering management is a career that brings together the technological problem-solving ability of engineering and the organizational, administrative, legal and planning abilities of management in order to oversee the operational performance of complex engineering-driven enterprises. A Master of Engineering Management (MEM) is sometimes compared to a Master of Business Administration (MBA) for professionals seeking a graduate degree as a qualifying credential for a career in engineering management.
Stratégie de régulationUne stratégie (ou topologie) de régulation est, pour un procédé industriel, l'organisation du système de contrôle-commande en vue de maintenir une grandeur physique dans une plage de tolérance donnée. Le choix de stratégie est très important dans les industries de transformation (par exemple les industries chimiques, papetières, agroalimentaires) en raison de la variabilité d'un nombre élevé de grandeurs physiques incidentes (dites « perturbations ») qui y sont présentes.
Théorie du contrôleEn mathématiques et en sciences de l'ingénieur, la théorie du contrôle a comme objet l'étude du comportement de systèmes dynamiques paramétrés en fonction des trajectoires de leurs paramètres. On se place dans un ensemble, l'espace d'état sur lequel on définit une dynamique, c'est-à-dire une loi mathématiques caractérisant l'évolution de variables (dites variables d'état) au sein de cet ensemble. Le déroulement du temps est modélisé par un entier .
Programmation logiqueLa programmation logique est une forme de programmation qui définit les applications à l'aide : d'une base de faits : ensemble de faits élémentaires concernant le domaine visé par l'application, d'une base de règles : règles de logique associant des conséquences plus ou moins directes à ces faits, d'un moteur d'inférence (ou démonstrateur de théorème ) : exploite ces faits et ces règles en réaction à une question ou requête. Cette approche se révèle beaucoup plus souple que la définition d'une succession d'instructions que l'ordinateur exécuterait.
AutomatiqueL’automatique est une science qui traite de la modélisation, de l’analyse, de l’identification et de la commande des systèmes dynamiques. Elle inclut la cybernétique au sens étymologique du terme, et a pour fondements théoriques les mathématiques, la théorie du signal et l’informatique théorique. L’automatique permet de commander un système en respectant un cahier des charges (rapidité, précision, stabilité...). Les professionnels en automatique se nomment automaticiens.
Structure de contrôleEn programmation informatique, une structure de contrôle est une instruction particulière d'un langage de programmation impératif pouvant dévier le flot de contrôle du programme la contenant lorsqu'elle est exécutée. Si, au plus bas niveau, l'éventail se limite généralement aux branchements et aux appels de sous-programme, les langages structurés offrent des constructions plus élaborées comme les alternatives (if, if–else, switch...), les boucles (while, do–while, for...) ou encore les appels de fonction.
Commande optimaleLa théorie de la commande optimale permet de déterminer la commande d'un système qui minimise (ou maximise) un critère de performance, éventuellement sous des contraintes pouvant porter sur la commande ou sur l'état du système. Cette théorie est une généralisation du calcul des variations. Elle comporte deux volets : le principe du maximum (ou du minimum, suivant la manière dont on définit l'hamiltonien) dû à Lev Pontriaguine et à ses collaborateurs de l'institut de mathématiques Steklov , et l'équation de Hamilton-Jacobi-Bellman, généralisation de l'équation de Hamilton-Jacobi, et conséquence directe de la programmation dynamique initiée aux États-Unis par Richard Bellman.
Programmation par contraintesLa programmation par contraintes (PPC, ou CP pour constraint programming en anglais) est un paradigme de programmation apparu dans les années 1970 et 1980 permettant de résoudre des problèmes combinatoires de grande taille tels que les problèmes de planification et d'ordonnancement. En programmation par contraintes, on sépare la partie modélisation à l'aide de problèmes de satisfaction de contraintes (ou CSP pour Constraint Satisfaction Problem), de la partie résolution dont la particularité réside dans l'utilisation active des contraintes du problème pour réduire la taille de l'espace des solutions à parcourir (on parle de propagation de contraintes).