Les informaticiens écrivent, testent, et mettent
à jour les instructions détaillées, appelées les programmes, que
les ordinateurs doivent suivre pour exécuter leurs fonctions.
Ils également conçoivent, conçoivent, et testent les
structures logiques pour résoudre des problèmes par ordinateur.
Beaucoup d'innovations techniques dans la programmation -- des
technologies de calcul avançées et de nouveaux langages
sophistiqués et des outils de programmation -- ont redéfini le rôle
d'un programmeur et ont élevé une grande partie du travail de
programmation effectué aujourd'hui. Les titres et les
descriptions du travail peuvent changer, selon l'organisation.
Dans ce rapport professionnel, l'informaticien se réfère aux
individus dont la fonction impression principale programme ; ce
groupe a un éventail de responsabilités et de milieux éducatifs.
Les programmes machine indiquent à l'ordinateur quoi
faire -- quelle information à identifier et accéder, comment la
traiter, et quel matériel pour utiliser. Les programmes
changent dépendre largement du type d'information à consulter ou
être produit. Par exemple, les instructions impliquées en
mettant les enregistrements financiers sont très différentes de ceux
exigées pour reproduire des conditions à bord d'un avion pour des
pilotes s'exerçant dans un simulateur de vol. Bien que des
programmes simples puissent être écrits en quelques heures, les
programmes qui utilisent les formules mathématiques complexes, dont
les solutions peuvent seulement être rapprochées, ou qui dessinent
des données de beaucoup de systèmes existants peuvent exiger plus
qu'une année de travail. Dans la plupart des cas, plusieurs
programmeurs fonctionnent ensemble en équipe sous la surveillance
d'un programmeur aîné.
Les programmeurs écrivent des programmes selon les
caractéristiques déterminées principalement par des Software
Engineers d'ordinateur et des analystes fonctionnels. (les
rapports séparés sur
des Software Engineers
d'ordinateur et sur des
analystes de systèmes informatiques, des administrateurs de base de
données, et des informaticiens apparaissent
ailleurs dans le manuel.)
Après que le processus de conception soit complet, c'est le
travail du programmeur de convertir cette conception en série logique
d'instructions que l'ordinateur peut suivre. Le programmeur code
alors ces instructions dans un langage de programmation conventionnel,
tel que COBOL ; un langage d'intelligence artificielle, tel que
le prolog ; ou un des langages orientés objectivement les plus
avançés tels que Java, C++, ou causerie. Différents langages
de programmation sont utilisés selon le but du programme.
COBOL, par exemple, est généralement utilisé pour des
applications d'affaires, tandis que le Fortran (abréviation la
"traduction de formule") est utilisé dans la science et
l'ingénierie. C++ est largement répandu pour des applications
scientifiques et d'affaires. On s'attend à ce qu'également
beaucoup de programmeurs au niveau d'entreprise sachent des langages
plateforme-spécifiques utilisés dans la programmation de base de
données. Les programmeurs savent généralement plus d'un
beaucoup de langages sont semblables, eux de programmation langage et,
parce que souvent peuvent apprendre de nouveaux langages relativement
facilement. Dans la pratique, des programmeurs souvent sont
mentionnés par le langage qu'ils savent, de même que les
programmeurs de Java, ou le type de fonction ils exécutent ou
l'environnement dans lequel ils travaillent, qui est la caisse pour
des programmeurs de base de données, unité centrale des
programmeurs, ou des programmeurs de Web.
La mise à jour de beaucoup de programmeurs, réparation,
modifient, et augmentent des programmes existants. Quand la
fabrication change en une section de code, appelée un sous-programme, programmeurs devez
mettre au courant d'autres utilisateurs du charger que le
sous-programme doit exécuter. Ils font ceci en insérant des
commentaires dans les instructions codées, de sorte que d'autres
puissent comprendre le programme. Beaucoup de programmeurs
utilisent des outils d'ingénierie logicielle assistée par ordinateur
(CAS) pour automatiser une grande partie de la programmation.
Ces outils permettent à un programmeur de se concentrer sur
écrire les seules parties du programme, parce que les outils
automatisent de divers morceaux du programme étant construit.
Les outils de CAS produisent des sections entières du code
automatiquement, plutôt que rayent par la ligne. Les
programmeurs utilisent également les bibliothèques du code
préécrit, qui peuvent alors être modifiées ou personnalisées pour
une application spécifique. Ceci également rapporte des
programmes plus fiables et plus conformés et augmente la
productivité des programmeurs en éliminant quelques étapes
courantes.
Les programmeurs testent un programme en l'exécutant pour
s'assurer que les instructions sont correctes et que le programme
produit les résultats désirés. Si les erreurs se produisent,
le programmeur doit faire le changement approprié et revérifier le
programme jusqu'à ce qu'il produise les résultats corrects. Ce
processus s'appelle test et mise au point. Les programmeurs
peuvent continuer à fixer ces problèmes durant toute la vie d'un
programme. Les programmeurs fonctionnant dans un environnement
d'unité centrale, qui implique un grand ordinateur centralisé,
peuvent préparer des instructions pour un opérateur sur ordinateur
qui exécutera le programme. (le rapport séparé de A sur des opérateurs sur ordinateur apparaît ailleurs dans le manuel.) Ils peuvent également contribuer à un manuel
pour les personnes qui utiliseront le programme.
Des programmeurs souvent sont groupés dans deux larges
types -- des programmeurs d'applications et des programmeurs système. Les programmeurs d'applications écrivent des programmes pour manipuler un travail
spécifique, tel qu'un programme de dépister le inventaire dans une
organisation. Ils peuvent également mettre à jour le logiciel
emballé existant ou personnaliser des applications génériques
appelées le logiciel personnalisé. Les
programmeurs système, d'autre part, écrivent les
programmes pour mettre à jour et le logiciel système d'ordinateur
pilote, tel que les systèmes d'exploitation, les systèmes gérés en
réseau, et les systèmes de base de données. Ces ouvriers font
des changements des ensembles d'instructions qui déterminent comment
le réseau, les postes de travail, et l'unité centrale de traitement
du traitement de système les divers travaux ils ont été donnés, et
comment ils communiquent avec le matériel périphérique tels comme
terminaux, imprimantes, et unités de disques. En raison de leur
connaissance du système informatique entier, les programmeurs
système aident souvent des programmeurs d'applications à déterminer
la source des problèmes qui peuvent se produire avec leurs
programmes.
Les programmeurs aux compagnies de développement de
logiciel peuvent travailler directement avec des experts de diverses
zones pour créer le logiciel -- les programmes conçus pour les
clients spécifiques ou le logiciel emballé pour l'usage général --
s'étendant des jeux et le logiciel éducatif aux programmes pour
l'édition de bureau et la planification financière. Beaucoup
de ce type de programmation a lieu dans la préparation du logiciel
emballé, qui constitue un des segments le plus rapidement croissants
de l'industrie de services informatiques.
Dans quelques organismes, en particulier les petits,
ouvriers généralement connus sous le nom de les
programmeur-analystes sont responsables de l'analyse
de systèmes et du travail de programmation réel. (la
description plus détaillée de A du travail des programmeur-analystes
est présentée dans le rapport sur
des analystes
de systèmes informatiques, des administrateurs de base de données,
et des informaticiens ailleurs dans le manuel.) a avancé des langages de
programmation et les nouvelles capacités de programmation orientées
objectivement augmentent l'efficacité et la productivité des
programmeurs et des utilisateurs. La transition d'un
environnement d'unité centrale à un qui est basé principalement sur
les PC (PCS) a brouillé la distinction une fois rigide entre
le programmeur et l'utilisateur. De plus en plus, les
utilisateurs versés succèdent beaucoup de charge
précédemment exécuté par des programmeurs. Par exemple,
l'utilisation croissante du logiciel emballé, tel que des progiciels
de gestion de tableur et de base de données, permet à des
utilisateurs d'écrire des programmes simples pour accéder à des
données et pour exécuter des calculs.