Langage intermédiaireEn informatique, un langage intermédiaire (parfois abrégé en IL, de l'anglais Intermediate Language) est le langage d'une machine abstraite conçu pour l'analyse d'un programme informatique. Le terme vient de son utilisation dans les compilateurs, où un compilateur transcrit d'abord le code source d'un programme en une forme plus adaptée pour les transformations d'amélioration de code, comme un état intermédiaire avant de générer du code objet ou du langage machine pour une machine cible, c’est-à-dire la machine sur laquelle sera exécutée le programme.
Symmetric multiprocessingUn multiprocesseur symétrique (à mémoire partagée), ou symmetric shared memory multiprocessor (SMP), est une architecture parallèle qui consiste à multiplier les processeurs identiques au sein d'un ordinateur, de manière à augmenter la puissance de calcul, tout en conservant une unique mémoire. Disposer de plusieurs processeurs permet d'exécuter simultanément plusieurs processus du système, utilisateur ou noyau en leur allouant l'un ou l'autre des processeurs disponibles, ce qui augmente la fluidité lors de l'exécution de plusieurs programmes, et permet à un processus d'utiliser plus de ressources de calcul en créant plusieurs threads.
Documentation logicielleLa documentation logicielle est un texte, généralement accompagné de captures d'écran, qui concerne un logiciel informatique. Elle explique comment le logiciel fonctionne, et/ou comment on doit l'employer. Le terme peut avoir des significations différentes pour des personnes de différents profils. La documentation constitue une partie importante de l'ingénierie logicielle, qui est souvent négligée. La documentation peut être de plusieurs types : L'expression de besoin - Définit le besoin du métier lors d'une demande.
Intelligent code completionIntelligent code completion is a context-aware code completion feature in some programming environments that speeds up the process of coding applications by reducing typos and other common mistakes. Attempts at this are usually done through auto-completion popups while typing, querying parameters of functions, and query hints related to syntax errors. Intelligent code completion and related tools serve as documentation and disambiguation for variable names, functions, and methods, using reflection.
Régression logicielleA software regression is a type of software bug where a feature that has worked before stops working. This may happen after changes are applied to the software's source code, including the addition of new features and bug fixes. They may also be introduced by changes to the environment in which the software is running, such as system upgrades, system patching or a change to daylight saving time. A software performance regression is a situation where the software still functions correctly, but performs more slowly or uses more memory or resources than before.
Pliage de codevignette|upright|Exemple de pliage de code PHP sous vim. Dans un éditeur de texte ou dans certains environnements de développement intégrés, le pliage de code ou repliage (folding en anglais) est une fonctionnalité permettant de masquer des parties du texte, bien souvent en le remplaçant par une seule ligne descriptive de son contenu. Son principal intérêt est de permettre à l'utilisateur d'avoir une vue d'ensemble de son document, tout en conservant la possibilité d'accéder aux détails de telle ou telle partie.
Programming toolA programming tool or software development tool is a computer program that software developers use to create, debug, maintain, or otherwise support other programs and applications. The term usually refers to relatively simple programs, that can be combined to accomplish a task, much as one might use multiple hands to fix a physical object. The most basic tools are a source code editor and a compiler or interpreter, which are used ubiquitously and continuously.
Système de preuve interactivevignette|504x504px|Un système de preuve interactive est composé de deux machines abstraites : un prouveur et un vérificateur qui s'échangent des messages. En théorie de la complexité des algorithmes, un système de preuve interactive est un protocole formel de démonstration de théorèmes qui fait intervenir deux participants qui échangent des messages. Cela permet de définir des classes de complexité intéressantes, notamment la classe IP qui est le modèle utilisé dans le théorème PCP qui caractérise la classe NP.
Include directiveMany programming languages and other computer files have a directive, often called include, import, or copy, that causes the contents of the specified file to be inserted into the original file. These included files are called s or copybooks. They are often used to define the physical layout of program data, pieces of procedural code, and/or forward declarations while promoting encapsulation and the reuse of code or data. In computer programming, a header file is a file that allows programmers to separate certain elements of a program's source code into reusable files.
Lint (logiciel)lint (en lettres minuscules ; de l'anglais lint : « touffe hirsute » ) est une commande UNIX de préprocesseur permettant l’analyse statique de code source en langage C. L'utilitaire lint a été l'un des premiers outils d'analyse statique de code source. Sa création visait à remédier aux faiblesses des compilateurs des années 1970-1980, qui présupposaient que les programmes ne comportaient que des erreurs ponctuelles et n'effectuaient que des vérifications rudimentaires.