un lengua[e de programacln es un ldloma arLlflclal dlsenado para expresar compuLaclones
que pueden ser llevadas a cabo por mqulnas como las compuLadoras ueden usarse para crear programas que conLrolen el comporLamlenLo flslco y lglco de una mqulna para expresar algorlLmos con preclsln o como modo de comunlcacln humana 1 LsL formado por un con[unLo de slmbolos y reglas slnLcLlcas y semnLlcas que deflnen su esLrucLura y el slgnlflcado de sus elemenLos y expreslones Al proceso por el cual se escrlbe se prueba se depura se complla y se manLlene el cdlgo fuenLe de un programa lnformLlco se le llama programacln Tambien la palabra programacion se deIine como el proceso de creacion de un programa de computadora, mediante la aplicacion de procedimientos logicos, a traves de los siguientes pasos: O l desarrollo logico del programa para resolver un problema en particular. O scritura de la logica del programa empleando un lenguaje de programacion especiIico (codiIicacion del programa). O nsamblaje o compilacion del programa hasta convertirlo en lenguaje de maquina. O Prueba y depuracion del programa. O esarrollo de la documenLacln Lenguajes de programacin imperativos y funcionales os lenguajes de programacion generalmente se dividen en dos grupos principales en base al procesamiento de sus comandos: O lenguajes imperativos; O lenguajes Iuncionales. Lengua|e de programacin imperativo &n lenguaje imperativo programa mediante una serie de comandos, agrupados en bloques y compuestos de ordenes condicionales que permiten al programa retornar a un bloque de comandos si se cumple la condicion. stos Iueron los primeros lenguajes de programacion en uso y aun hoy muchos lenguajes modernos usan este principio. No obstante, los lenguajes imperativos estructurados carecen de Ilexibilidad debido a la secuencialidad de las instrucciones. Lengua|e de programacin funcional &n lenguaje de programacion Iuncional(a menudo llamado lenguafe procedimental) es un lenguaje que crea programas mediante Iunciones, devuelve un nuevo estado de resultado y recibe como entrada el resultado de otras Iunciones. Cuando una Iuncion se invoca a si misma, hablamos de recursividad.
nterpretacin y compilacin os lengua[es de programacln pueden en llneas generales dlvldlrse en dos caLegorlas O |engua[es |nterpretados O |engua[es comp||ados Lengua|e interpretado &n lenguaje de programacion es, por deIinicion, diIerente al lenguaje maquina. Por lo tanto, debe traducirse para que el procesador pueda comprenderlo. &n programa escrito en un lenguaje interpretado requiere de un programa auxiliar (el interprete), que traduce los comandos de los programas segun sea necesario. Lengua|e compilado &n programa escrito en un lenguaje "compilado" se traduce a traves de un programa anexo llamado compilador que, a su vez, crea un nuevo archivo independiente que no necesita ningun otro programa para ejecutarse a si mismo. ste archivo se llama ejecutable. Lengua|es intermediarios Algunos lenguajes pertenecen a ambas categorias ($P, Java, Python...) dado que el programa escrito en estos lenguajes puede, en ciertos casos, suIrir una Iase de compilacion intermediaria, en un archivo escrito en un lenguaje ininteligible (por lo tanto diIerente al archivo Iuente ) y no ejecutable (requeriria un interprete). os applets Java, pequeos programas que a menudo se cargan en paginas web, son archivos compilados que solo pueden ejecutarse dentro de un navegador web (son archivos con la extension .class). istoria Para que la computadora entienda nuestras instrucciones debe usarse un lenguaje especiIico conocido como codigo maquina, el cual la maquina comprende Iacilmente, pero que lo hace excesivamente complicado para las personas. De hecho solo consiste en cadenas extensas de numeros 0 y 1. Para Iacilitar el trabajo, los primeros operadores de computadoras decidieron hacer un traductor para reemplazar los 0 y 1 por palabras o abstraccion de palabras y letras provenientes del ingles; este se conoce como lenguaje ensamblador. Por ejemplo, para sumar se usa la letra A de la palabra inglesa add (sumar). l lenguaje ensamblador sigue la misma estructura del lenguaje maquina, pero las letras y palabras son mas Iaciles de recordar y entender que los numeros.
ava l lenguaje de programacion Java, Iue diseado por la compaia $un Microsystems nc, con el proposito de crear un lenguaje que pudiera Iuncionar en redes computacionales heterogeneas ( redes de computadoras Iormadas por mas de un tipo de computadora, ya sean PC, MAC's, estaciones de trabajo, etc.),y que Iuera independiente de la plataIorma en la que se vaya a ejecutar. sto signiIica que un programa de Java puede ejecutarse en cualquier maquina o plataIorma.
PROGRAMMG LAGUAGE A programmlng language ls an arLlflclal language deslgned Lo express compuLaLlons LhaL can be performed by machlnes and compuLers Can be used Lo creaLe programs LhaL conLrol Lhe physlcal and loglcal behavlor of a machlne Lo express algorlLhms preclsely or as a means of human communlcaLlon lL conslsLs of a seL of symbols and synLacLlc and semanLlc rules LhaL deflne lLs sLrucLure and meanlng of lLs elemenLs and expresslons 1he process by whlch lL ls wrlLLen LesLed debugged complled and malnLalned Lhe source code of a compuLer program ls called programmlng Also Lhe word programmlng ls deflned as Lhe process of creaLlng a compuLer program Lhrough Lhe appllcaLlon of loglcal procedures Lhrough Lhe followlng sLeps - 1he loglcal developmenL of Lhe program Lo solve a parLlcular problem - WrlLlng Lhe program loglc uslng a speclflc programmlng language (program code) - Assembly or compllaLlon of Lhe program Lo converL machlne language - 1esL and debug Lhe program - evelopmenL of documenLaLlon Imperat|ve programm|ng |anguages and funct|ona| rogrammlng languages are generally dlvlded lnLo Lwo ma[or groups accordlng Lo Lhe processlng of commands - lmperaLlve languages - funcLlonal languages Imperat|ve programm|ng |anguage An lmperaLlve language program Lhrough a serles of commands grouped lnLo blocks comprlslng of condlLlonal sLaLemenLs LhaL allow Lhe program Lo reLurn Lo a command block lf Lhe condlLlon ls meL 1hese were Lhe flrsL programmlng languages sLlll ln use and many modern languages use Lhls prlnclple Powever sLrucLured lmperaLlve languages lack flexlblllLy due Lo Lhe sequenLlallLy of lnsLrucLlons
unct|ona| programm|ng |anguage A funcLlonal programmlng language (ofLen called procedural language) ls a language LhaL creaLes programs uslng funcLlons reLurns a new ouLpuL sLaLe and recelves as lnpuL Lhe resulL of oLher funcLlons When a funcLlon lnvokes lLself we speak of recurslon Interpretat|on and comp||at|on rogrammlng languages can broadly be dlvlded lnLo Lwo caLegorles - lnLerpreLed languages - complled languages |nterpreted |anguage A programmlng language ls by deflnlLlon dlfferenL Lo machlne language 1herefore lL musL be LranslaLed so LhaL Lhe processor can undersLand A program wrlLLen ln an lnLerpreLed language requlres a program (Lhe lnLerpreLer) whlch LranslaLes Lhe commands of Lhe programs as needed comp||ed |anguage A program wrlLLen ln a complled ls LranslaLed Lhrough a program called a compller whlch ln Lurn creaLes a new separaLe flle LhaL does noL need any oLher program Lo execuLe lLself 1hls execuLable flle ls called |ntermed|ary |anguages Some languages belong Lo boLh caLegorles (lS !ava yLhon ) slnce Lhe program wrlLLen ln Lhese languages may ln some cases undergo an lnLermedlary compllaLlon phase ln a flle wrlLLen ln an unlnLelllglble language (and Lherefore dlfferenL Lhe source flle) and execuLable (requlrlng an lnLerpreLer) !ava appleLs small programs LhaL are ofLen loaded ln web pages are complled flles LhaL can only run wlLhln a web browser (Lhese are flles wlLh Lhe exLenslon Class) n|story lor Lhe compuLer Lo undersLand our lnsLrucLlons musL use a speclflc language called machlne code whlch Lhe machlne ls easlly undersLood buL LhaL makes lL Loo compllcaLed for people ln facL only conslsLs of exLenslve chalns of numbers 0 and 1 To Iacilitate this, the Iirst computer operators decided to make a translator to replace the 0 and 1 by words or abstraction oI words and letters Irom the nglish, this is known as assembly language. For example, to add the letter A is used the nglish word add (add). Assembly language is the very structure oI machine language, but the letters and words are easier to remember and understand the numbers.
ava
The Java programming language was designed by $un Microsystems nc, in order to create a language that could run on computer networks, heterogeneous (computer networks consist oI more than one type oI computer, whether PC, MAC's, stations work, etc..), and that was independent oI the platIorm on which they take place. This means that a Java program can run on any machine or platIorm.