Langage de programmation de haut niveauEn programmation informatique, un langage de programmation à haut niveau d'abstraction généralement appelé langage de haut niveau est un langage de programmation orienté autour du problème à résoudre, qui permet d'écrire des programmes en utilisant des mots usuels des langues naturelles (très souvent de l'anglais) et des symboles mathématiques familiers. Un langage de haut niveau fait abstraction des caractéristiques techniques du matériel utilisé pour exécuter le programme, tels que les registres et les drapeaux du processeur.
Navigateur webvignette|upright=2|Chronologie des versions de navigateurs. Un navigateur web, navigateur Web ou fureteur, est un logiciel conçu pour consulter et afficher le World Wide Web. Techniquement, c'est au minimum un client HTTP. Il existe de nombreux navigateurs web pour toutes sortes de matériels (ordinateur personnel, tablette tactile, téléphones mobiles, etc.) et pour différents systèmes d'exploitation (GNU/Linux, Windows, Mac OS, iOS et Android). Dans les années 2010, les plus utilisés sont Google Chrome, Mozilla Firefox, Internet Explorer/Microsoft Edge, Safari, Opera.
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 logicielLe génie logiciel, l'ingénierie logicielle ou l'ingénierie du logiciel (en software engineering) est une science de génie industriel qui étudie les méthodes de travail et les bonnes pratiques des ingénieurs qui développent des logiciels. Le génie logiciel s'intéresse en particulier aux procédures systématiques qui permettent d'arriver à ce que des logiciels de grande taille correspondent aux attentes du client, soient fiables, aient un coût d'entretien réduit et de bonnes performances tout en respectant les délais et les coûts de construction.
Système d'exploitation mobilealt=Système d'exploitation mobile MeeGo|vignette|Système d'exploitation mobile MeeGo |253x253px Un système d'exploitation mobile est un système d'exploitation conçu pour fonctionner sur un appareil mobile. Ce type de système d'exploitation se concentre entre autres sur la gestion de la connectivité sans fil et celle des différents types d'interface. thumb|250px|Parts de marché des systèmes d'exploitation mobiles sur smartphone au deuxième trimestre 2011.
Application-specific integrated circuitvignette|Un ASIC. Un ASIC (acronyme de l'anglais application-specific integrated circuit, littéralement « circuit intégré propre à une application ») est un circuit intégré spécialisé. En général, il regroupe sur la même puce un ou sur mesure. thumb|Autre exemple de puce ASIC. L'intérêt de l'intégration est de réduire les coûts de production et d'augmenter la fiabilité. Avantage pour le maître d'œuvre : un contrôle total du produit et un coût de production réduit.
Gestion de versionsthumb|Exemple d'arbre de gestion de versions La gestion de versions ( ou revision control) consiste à gérer l'ensemble des versions d'un ou plusieurs fichiers (généralement en texte). Essentiellement utilisée dans le domaine de la création de logiciels, elle concerne surtout la gestion des codes source. Cette activité étant fastidieuse et relativement complexe, un appui logiciel est presque indispensable. À cet effet, il existe différents logiciels de gestion de versions qui, bien qu'ayant des concepts communs, apportent chacun leur propre vocabulaire et leurs propres usages.
Software development processIn software engineering, a software development process is a process of planning and managing software development. It typically involves dividing software development work into smaller, parallel, or sequential steps or sub-processes to improve design and/or product management. It is also known as a software development life cycle (SDLC). The methodology may include the pre-definition of specific deliverables and artifacts that are created and completed by a project team to develop or maintain an application.
DebuggingIn computer programming and software development, debugging is the process of finding and resolving bugs (defects or problems that prevent correct operation) within computer programs, software, or systems. Debugging tactics can involve interactive debugging, control flow analysis, unit testing, integration testing, , monitoring at the application or system level, memory dumps, and profiling. Many programming languages and software development tools also offer programs to aid in debugging, known as debuggers.
Framework WebUn framework Web ou framework d'application Web est un framework logiciel conçu pour prendre en charge le développement d'applications Web, notamment des services Web, des ressources Web et des API Web. Les frameworks Web fournissent un moyen standard de créer et de déployer des applications Web sur le World Wide Web. Les frameworks Web visent à automatiser les mécanismes les plus courants du développement Web.