b"\n_START_ARTICLE_\nProgramaci\xc3\xb3 d'ordinadors\n_START_PARAGRAPH_\nProgramaci\xc3\xb3 d'ordinadors o programaci\xc3\xb3 inform\xc3\xa0tica (sovint abreujat programaci\xc3\xb3 o codificaci\xc3\xb3) \xc3\xa9s el proc\xc3\xa9s d'escriure, provar, depurar/solucionar problemes, i mantenir el codi font de programes. Aquest codi font est\xc3\xa0 escrit en un llenguatge de programaci\xc3\xb3. El codi pot ser una modificaci\xc3\xb3 d'una font existent o una cosa completament nova. L'objectiu de la programaci\xc3\xb3 \xc3\xa9s crear un programa que mostra un determinat comportament desitjat (personalitzaci\xc3\xb3). El proc\xc3\xa9s d'escriure el codi font sovint requereix experi\xc3\xa8ncia en molts temes diferents, incloent coneixement de l'\xc3\xa0mbit d'aplicaci\xc3\xb3, dels algorismes especialitzats i l\xc3\xb2gica formal.\n_START_SECTION_\nResum\n_START_PARAGRAPH_\nDins d'enginyeria de programari, la programaci\xc3\xb3 (la implementaci\xc3\xb3) es considera com una fase en un proc\xc3\xa9s de desenvolupament de programari._NEWLINE_Hi ha un debat en curs sobre en quina mesura l'escriptura de programes \xc3\xa9s un art, un ofici o una disciplina d'enginyeria. En general, la bona programaci\xc3\xb3 es considera que \xc3\xa9s l'aplicaci\xc3\xb3 mesurada dels tres, amb l'objectiu de produir una soluci\xc3\xb3 de programari eficient i capa\xc3\xa7 d'evolucionar (els criteris d'\xc2\xabefici\xc3\xa8ncia\xc2\xbb i \xc2\xabevoluci\xc3\xb3\xc2\xbb varien considerablement). La disciplina es diferencia de moltes altres professions t\xc3\xa8cniques, ja que els programadors, en general, no necessiten ser llicenciats o passar per qualsevol proves de certificaci\xc3\xb3 estandarditzades (o regulatitzaci\xc3\xb3 governamental) per anomenar-se a si mateixos \xc2\xabprogramadors\xc2\xbb o fins i tot \xc2\xabenginyers de programari\xc2\xbb. No obstant aix\xc3\xb2, pel fet que la disciplina abasta moltes \xc3\xa0rees, que pot o no incloure aplicacions cr\xc3\xadtiques, \xc3\xa9s discutible la concessi\xc3\xb3 d'una llic\xc3\xa8ncia per a la professi\xc3\xb3 en el seu conjunt. En la majoria dels casos, la disciplina \xc3\xa9s autoregulada per les entitats que requereixen la programaci\xc3\xb3, i de vegades ambients molt estrictes es defineixen (per exemple, l'\xc3\xbas d'AdaCore a la For\xc3\xa7a A\xc3\xa8ria dels Estats Units i habilitacions de seguretat)._NEWLINE_Un altre debat en curs \xc3\xa9s el grau en qu\xc3\xa8 el llenguatge de programaci\xc3\xb3 utilitzat per escriure programes inform\xc3\xa0tics afecta la forma que el programa final pren. Aquest debat \xc3\xa9s an\xc3\xa0loga al que envolta la hip\xc3\xb2tesi de Sapir-Whorf en la ling\xc3\xbc\xc3\xadstica, que postula que la natura d'un idioma parlat determinat influeix en el pensament habitual dels seus parlants. Diferents patrons del llenguatge produeixen diferents patrons de pensament. Aquesta idea desafia la possibilitat de representar el m\xc3\xb3n a la perfecci\xc3\xb3 amb el llenguatge, perqu\xc3\xa8 reconeix que els mecanismes de qualsevol llenguatge condicionen els pensaments de la seva comunitat parlant._NEWLINE_Dit d'una altra manera, la programaci\xc3\xb3 \xc3\xa9s l'art de transformar requeriments en alguna cosa que un ordinador pot executar.\n_START_SECTION_\nUna breu hist\xc3\xb2ria de la programaci\xc3\xb3\n_START_PARAGRAPH_\nLa primera m\xc3\xa0quina programable (\xc3\xa9s a dir, m\xc3\xa0quina de la qual les possibilitats d'\xc3\xbas canvien quan es modifica el seu \xc2\xabprograma\xc2\xbb) \xc3\xa9s, probablement, el teler de Jacquard, que es va completar el 1801. La m\xc3\xa0quina utilitzava una s\xc3\xa8rie de cartrons perforats. Els forats indicaven el patr\xc3\xb3 que el teler seguia per realitzar un teixit; amb targetes diferents, el teler produ\xc3\xafa teixits diferents. Aquesta innovaci\xc3\xb3 ha estat llavors millorada per Herman Hollerith d'IBM per al desenvolupament de les famoses targetes perforades d'IBM._NEWLINE_El 1936, la publicaci\xc3\xb3 de l'article seminal de la ci\xc3\xa8ncia inform\xc3\xa0tica On Computable Numbers with an Application to the Entscheidungsproblem per Alan Mathison Turing, va posar en marxa la creaci\xc3\xb3 de l'ordinador programable. Ell presenta la seva m\xc3\xa0quina de Turing, el primer ordinador programable universal, i inventa els conceptes i les condicions de programaci\xc3\xb3 i programa._NEWLINE_Els primers programes inform\xc3\xa0tics eren realitzats amb un soldador i un gran nombre de tubs de buit (m\xc3\xa9s tard, transistors). Fent-se els programes m\xc3\xa9s complexos, all\xc3\xb2 s'ha fet gaireb\xc3\xa9 impossible, perqu\xc3\xa8 un sol error tornava el programa sencer inutilitzable. Amb els aven\xc3\xa7os en emmagatzematge de dades, es fa possible carregar el programa a partir de targetes perforades, contenint la llista de les instruccions en codi binari espec\xc3\xadfic per a un tipus particular d'ordinador. Augmentant la pot\xc3\xa8ncia dels ordinadors, se'ls va utilitzar per fer els programes, els programadors preferint, naturalment escriure el text, m\xc3\xa9s que com conjunts de 0 i d'1, deixant que la m\xc3\xa0quina mateixa va fer la traducci\xc3\xb3. Amb el temps, nous llenguatges de programaci\xc3\xb3 han aparegut, fent cada vegada m\xc3\xa9s l'abstracci\xc3\xb3 del maquinari sobre el qual s'hauria d'executar els programes. Aix\xc3\xb2 aporta beneficis en diversos aspectes: aquests llenguatges s\xc3\xb3n m\xc3\xa9s f\xc3\xa0cils d'aprendre, un programador pot produir un codi m\xc3\xa9s r\xc3\xa0pidament, i els programes produ\xc3\xafts es poden executar en diferents m\xc3\xa0quines."