Anda di halaman 1dari 10

Qu es un lenguaje de programacin?

Al igual que las personas nos comunicamos entre nosotras utilizando un lenguaje (por ejemplo Espaol
o Ingls), un lenguaje de programacin permite a las personas comunicarse con los
ordenadores para indicarles lo que tienen que hacer. Una persona que quiere que el ordenador realice
una determinada tarea escribe un programa en un lenguaje de programacin determinado, y el
ordenador (utilizando ciertos traductores llamados compiladores e intrpretes) es capaz de realizar
dicha tarea.

Los primeros lenguajes


En la dcada de los 40 empezaron a surgir los primeros lenguajes de programacin de ordenadores.
Estos primeros lenguajes (llamados lenguajes Ensamblador) estaban basados en smbolos o nemnicos
que se correspondan directamente con instrucciones de cdigo mquina (el cdigo que es capaz de
interpretar un ordenador sin necesidad de un intrprete o traductor).
En 1957 aparece el lenguaje Fortran (siglas de FORmula TRANslator), el primer lenguaje de alto nivel
ampliamente difundido y utilizado a nivel mundial. El primer compilador de Fortran fue desarrollado
por un equipo de IBM liderado por John W. Backus. Inicialmente Fortran fue muy utilizado en el mundo
cientfico y en alplicaciones militares, y se escribieron multitud de libreras matemticas para clculo
numrico, algunas de las cuales siguen utilizndose hoy en da.
Ya en 1960 aparece LISP, un lenguaje idneo para crear programas de inteligencia artificial porque
utilizaba conceptos de programacin funcional y recursividad. Aunque no es muy utilizado para el
desarrollo de aplicaciones empresariales, LISP sigue siendo utilizado hoy en da en entornos docentes
(yo mismo lo utilizo en una asignatura en la que se ensean diversos paradigmas de programacin).
Tambin en 1960 aparece COBOL, un lenguaje preparado para procesar grandes cantidades de
informacin. Esto hizo que fuese ampliamente adoptado en bancos y grandes organizaciones que
siguen utilizndolo hoy en da.
En 1964 se crea el lenguaje BASIC (Beginner's All-purpose Symbolic Instruction Code), especialmente
diseado para ensear a programar a principiantes. BASIC es el lenguaje que muchos (entre los que me
incluyo) utilizamos para hacer nuestros primeros pinitos en el mundo de la programacin, cuando
desterramos nuestros viejos ordenadores Comodore-64 sustituyndolos por el recin aparecido Amstrad
CPC 464 y su flamante unidad de cinta (que despus de leer un par de veces cada cinta era incapaz de
volver a hacerlo qu tiempos aquellos!). Ya en las primeras versiones de MS-DOS (el primer sistema
operativo de Microsoft) se inclua un intrprete de BASIC.

1. Lenguajes de programacin ms
populares: Java

En el ndice TIOBE correspondiente al mes de agosto de 2015, Java tiene el primer lugar
prcticamente indiscutido.
A partir del ao 2012 Java se ha convertido en uno de los lenguajes de programacin ms
populares. Cul es la razn de su xito? Uno de sus principales mritos es
laretrocompatibilidad (o compatibilidad regresiva), lo que lo diferencia de muchos otros
lenguajes de programacin que, al introducir nuevas versiones, dejan obsoletas las anteriores.
Java es de los lenguajes de programacin ms populares porque, adems, permite
crear apps para la web escalables para un sinnmero de usuarios. Java lleva la delantera al
momento de desarrollar aplicaciones para Android, sistema operativo de dispositivos mviles.
En resumen, el diseo de Java, su potencia, el respaldo de amplios sectores de la industria
del software y el hardware, su fiabilidad y su portabilidad lo han convertido en primero entre
loslenguajes de programacin ms populares.

2. Lenguajes de programacin ms
populares: C
Se trata, sin dudas, del lenguaje de programacin ms popular a la hora de crear software de
sistemas, aunque no son de desdear sus dotes para la creacin de aplicaciones. De
hecho, gran parte de la popularidad de C est basada en que se usa en propsitos diversos, y
no solo para los que fue diseado originalmente.
C es un lenguaje de programacin sencillo que tiene como una de sus principales virtudes que
se puede aprender rpidamente. No est ligado a ningn sistema operativo ni a una mquina
especfica.
Sus aplicaciones han sido variadas: desde la programacin en sistemas UNIX hasta el
desarrollo de sistemas operativos como GNU/Linux o Windows. Aplicaciones de escritorio
como GIMP programa de edicin de imgenes similar al Photoshop de Adobe, pero gratis!
tienen a C como principal lenguaje de programacin.
C se encontraba, hace exactamente un ao, en agosto de 2014, en el primer lugar del ndice
TIOBE, lo que habla muy bien de su popularidad como lenguaje de programacin.

3. Lenguajes de programacin ms
populares: C++
Podramos decir que se trata de una extensin del lenguaje de programacin C que permite la
manipulacin de objetos.
Se trata de un lenguaje verstil, multiplataforma, que ofrece gran rendimiento y que no parece
pasar de moda.
Photoshop, Autodesk y otros programas populares incluidos muchos videojuegos estn
hechos en C++, uno de los lenguajes preferidos por la industria.

4. Lenguajes de programacin ms
populares: C#
C# es el cuarto lugar de la lista TIOBE, en agosto, y es un lenguaje de programacin
orientado a objetos (OOP, segn las siglas en ingls). Ha sido desarrollado por el
gigante Microsoft. Est diseado para la utilizacin de la infraestructura de lenguaje comn.
Se deriva de la sintaxis del C y del C++. Es una herramienta ideal para abordar la creacin de
aplicaciones complejas con facilidad. Con C# no solo podemos escribir programas para la
web, sino otros de tipo ms general.
Los programadores recomiendan aprender C# sobre todo a los que se interesan en programar
apps para Windows, ya que el C# es su lenguaje de programacin estndar.

5. Lenguajes de programacin ms
populares: Python
Python es ampliamente considerado uno de los lenguajes de programacin ms
populares, sobre todo porque es de los ms fciles de aprender. Es el que recomendamos
para los programadores noveles.

Se trata de un lenguaje de programacin interpretado y multiparadigma (admite ms de


un paradigma de programacin, ms de un estilo).
Python surgi a fines de los aos ochenta del siglo pasado y est hecho para ser legible con
facilidad. Uno de sus puntos ms interesantes es el uso de palabras donde otros lenguajes
utilizan smbolos.
A su alrededor se ha constituido una nutrida comunidad de programadores y seguidores. Su
campo de aplicacin fundamental podra ser el de las ciencias, el desarrollo web y
deaplicaciones de escritorio (sobre todo para comenzar).

Lenguajes de programacion
Los lenguajes de programacin son la manera de cmo nos comunicamos con
la mquina, la manera de cmo el programador ordena ejecutar distintas
tareas en los distintos programas. Primeramente se debe destacar que en 1822
las computadoras eran mecnicas y elctricas, ni siquiera se conocan los
lenguajes de programacin, luego con los lenguajes de mquina que fueron los
primeros, se diseaba una mquina para cada tarea, y posteriormente y
siguiendo el desarrollo de los lenguajes surgen los cdigos fuentes.
Luego en los aos 50 surgen los lenguajes de alto nivel, entre los cuales
cabe mencionar FORTRAN que aparece por 1956 y contina en 1959 COBOL,
en 1964 BASIC, en 1974 PASCAL, a finales de los 80 con C, que despus
llega C++, y por ltimo en el 2000 llega JAVA que es una plataforma de
software capaz de que los programas creados en ella puedan ejecutarse sin
cambios en diferentes tipos de arquitecturas y dispositivos computacionales,
estos fueron un lenguaje de programacin de propsito general. A raz de todo
este continuo desarrollo, surgen los paradigmas de la programacin que son
modelos bsicos de diseo y de desarrollo de programas y determina la
estructura modular, cohesin, rentabilidad, entre otros, estas caractersticas
son las que han reinado los ltimos aos, para desarrollar las nuevas
tendencias en programacin.
La gran interrogante
Si nos detenemos a pensar un poco para preguntar
Cmo sern los lenguajes deprogramacin del futuro?
, no existe una respuesta concreta, pero algo es seguro, laprogramacin
continuar su vertiginosa carrera a la par de las nuevas tecnologas, donde
ciertastendencias de programacin tienen la posibilidad de ganarse un espacio;
todo seala que loslenguajes de programacin continuarn evolucionando en
direccin a los lenguajes naturales;as, los nuevos lenguajes de programacin
apuntan hacia lenguajes con auto-aprendizaje,experiencia propia y

colaborativos, trabajando de cierta manera con inteligencia para realizarlas


tareas que nosotros deseamos, an cuando no se faciliten todos los detalles.
Hoy en da esevidente que la lnea que separa al usuario de los programas est
desapareciendo poco a poco, ypor ende es lgico pensar que, a la par que la
programacin se torne como una actividad msfcil de realizar y con ms
potencialidades, en un futuro no muy lejano cualquier usuario podrdesarrollar
sus propias aplicaciones (Cancelo y Alonso, 2007).
El nuevo rumbo
Todo indica que la programacin de alto nivel continuar evolucionando,
mutando de acuerdo alos nuevos ambientes tecnolgicos y tipos de usuarios,
convergiendo hacia un estilo deprogramacin mucho ms sencilla; donde no se
requerir conocer y dominar tecnicismospropios de algn lenguaje de
programacin como su lxico, sintaxis, manejo del entorno ycreacin de
componentes entre otros. Esta nueva generacin de lenguajes prev el uso
deventanas para crear todo tipo de tareas como: leer, mostrar y almacenar
datos;er as como paralectura de archivos y procesamiento de informacin. Es
decir, la accin de programar consistiren configurar una serie de ventanas,
utilizadas nicamente para definir el tipo de tarea querealizar el programa
(Poratti, 2010).
Nueva tcnica
Aunque si se trata de la ltima tendencia de los lenguajes de programacin
resaltan laprogramacin intencional; segn esta tcnica se contar con
herramientas que resolvern lascomplejidades del cdigo y con nicamente
conocimientos sobre un tema particular se podrfcilmente crear una solucin
al problema planteado, donde la codificacin pasar a segundotrmino, pues
esta tarea correra por cuenta de la propia herramienta (Poratti,
2010).Definitivamente lenguajes con entornos totalmente amigables, donde
cada elemento requeridoen la aplicacin, se incorpore a ella con un solo clic,
formidable no creen?
CONCLUSIN
Es indiscutible que la tecnologa seguir avanzando a un ritmo acelerado y
obviamente lasherramientas de software le seguirn de la mano; poniendo de
manifiesto la creatividad eingenio de las personas que se dedican al desarrollo
de este tipo de herramientas, deparandonuevos retos y una cantidad ilimitada
de elementos que conllevarn en un tiempo no muy lejano

a lenguajes de programacin inteligentes que permitan a cualquier usuario de


computadora unacomunicacin con la mquina semejante a la realizada entre
personas, dejando que lasherramientas de programacin puedan con pocos
detalles buscar e implementar la solucinadecuada en cuestin de

segundos.Por ahora dediqumonos a utilizar y explotar las nuevos elementos y


potencialidades quebrindan los actuales lenguajes de programacin a travs de
sus entornos o ambientes dedesarrollo y su vasto conjunto de libreras; Adems
de poder conocer en un futuro prximo loslenguajes de programacin que se
vaticina existirn como resultado del continuo procesoevolutivo de la
tecnologa.

Las Buenas Prcticas de Programacin?


Posted on January 26, 2012 by Global Mentoring No Comments

Un lenguaje consta de reglas que ayudan a las personas que lo conocen a


dar un mensaje; por poner un ejemplo, el idioma espaol al ser escrito
necesita cumplir ciertas reglas ortogrficas para poderle dar estructura y
homogenizacin, de no ser as el mal uso del lenguaje podra ir daar el
mensaje.
En los lenguajes de programacin tambin son necesarias ciertas reglas
que le dan una estructura a nuestros programas, estas reglas son las
buenas prcticas de programacin. Muchas veces se cree que los
programadores ms hbiles son aquellos que son capaces de torcer el
lenguaje y darle una solucin compleja y desordenada a un problema. Esto
es una mentira.
Un programa debe poder ser entendido por cualquiera, debe de bastar con dar una
lectura rpida a este para mirar que solucin le est dando el desarrollador y si esta
es ptima o no. Esto tal vez no suene tan importante para los programadores
solitarios, pero a los que son parte de un equipo de trabajo es fundamental poder leer
el cdigo de sus compaeros para darle ms fluidez al desarrollo del proyecto.
Estas son algunas buenas prcticas de programacin (Estas son genricas sin
importar el lenguaje)
1. Escriba sus programas de sencillo. Esto a veces se conoce como mantenlo
simple.
2. Lea los manuales y la de su lenguaje.

3.- Utilice comentarios, no importa que sencillo o absurdo parezca esto, un cdigo que
quedo claro hace un ao, ahora puede ser muy oscuro.
4.- Ponga nombre a funciones y variables que sean descriptivas, evite; entero A,
Funcin Z, etc.
4. Cada programa debe comenzar con un comentario que describa su propsito.
6. Dentro de los corchetes que definen el cuerpo de una funcin, sangre el cuerpo de
la funcin un nivel. Esto resalta la estructura funcional de los programas y ayuda a
simplificar su lectura.
7. Establezca una convencin para el tamao de las sangras y luego aplquela de
manera uniforme. La tecla Tab sirve para crear sangras, pero las tabulaciones
pueden variar.
8. Como en lgebra, para hacer ms clara a una expresin es aceptable agregarle
parntesis innecesarios. Estos se emplean normalmente para agrupar subexpresiones
de expresiones ms grandes.
9. Realice un seudo cdigo o un diagrama de su programa. Esto parecer que no es
una buena prctica de programacin porque an no empieza a escribir cdigo, pero
es muy bueno para documentar y es crear desde el punto de salida un Mapa de
como debe ir nuestro programa.
C#

La sintaxis de C# es muy expresiva, pero tambin es sencilla y fcil de aprender. La


sintaxis de C# basada en signos de llave podr ser reconocida inmediatamente por
cualquier persona familiarizada con C, C++ o Java. Los desarrolladores que conocen
cualquiera de estos lenguajes pueden empezar a trabajar de forma productiva en C#
en un plazo muy breve. La sintaxis de C# simplifica muchas de las complejidades de
C++ y proporciona caractersticas eficaces tales como tipos de valor que admiten
valores NULL, enumeraciones, delegados, expresiones lambda y acceso directo a
memoria, que no se encuentran en Java. C# admite mtodos y tipos genricos, que
proporcionan mayor rendimiento y seguridad de tipos, e iteradores, que permiten a los
implementadores de clases de coleccin definir comportamientos de iteracin
personalizados que el cdigo cliente puede utilizar fcilmente. Las expresiones

Language-Integrated Query (LINQ) convierten la consulta fuertemente tipada en una


construccin de lenguaje de primera clase.
Como lenguaje orientado a objetos, C# admite los conceptos de encapsulacin,
herencia y polimorfismo. Todas las variables y mtodos, incluido el mtodo Main que es
el punto de entrada de la aplicacin, se encapsulan dentro de definiciones de
clase. Una clase puede heredar directamente de una clase primaria, pero puede
implementar cualquier nmero de interfaces. Los mtodos que reemplazan a los
mtodos virtuales en una clase primaria requieren la palabra clave override como
medio para evitar redefiniciones accidentales. En C#, una struct es como una clase
sencilla; es un tipo asignado en la pila que puede implementar interfaces pero que no
admite la herencia.
Adems de estos principios bsicos orientados a objetos, C# facilita el desarrollo de
componentes de software a travs de varias construcciones de lenguaje innovadoras,
entre las que se incluyen las siguientes:
Firmas de mtodos encapsulados denominadas delegados, que habilitan
notificaciones de eventos con seguridad de tipos.
Propiedades, que actan como descriptores de acceso para variables miembro
privadas.
Atributos, que proporcionan metadatos declarativos sobre tipos en tiempo de
ejecucin.
Comentarios en lnea de documentacin XML.
Language-Integrated Query (LINQ) que proporciona funciones de consulta
integradas en una gran variedad de orgenes de datos.
Si necesita interactuar con otro software de Windows, como objetos COM o archivos
DLL nativos de Win32, podr hacerlo en C# mediante un proceso denominado
"interoperabilidad". La interoperabilidad habilita los programas de C# para que puedan
realizar prcticamente las mismas tareas que una aplicacin C++ nativa. C# admite
incluso el uso de punteros y el concepto de cdigo "no seguro" en los casos en que el
acceso directo a la memoria es totalmente crtico.
El proceso de compilacin de C# es simple en comparacin con el de C y C++, y es
ms flexible que en Java. No hay archivos de encabezado independientes, ni se
requiere que los mtodos y los tipos se declaren en un orden determinado. Un archivo
de cdigo fuente de C# puede definir cualquier nmero de clases, structs, interfaces y
eventos.
A continuacin se enumeran otros recursos de C#:
Para disponer de una introduccin general al lenguaje, vea el captulo 1
de Especificacin del lenguaje C#.
Para obtener informacin detallada sobre aspectos concretos del lenguaje C#,
vea Referencia de C#.
Para obtener ms informacin sobre LINQ, vea LINQ (Language-Integrated
Query).
Para buscar los artculos y recursos ms recientes del equipo de Visual C#,
vea Visual C#.

Con la idea de que los programadores ms experimentados puedan obtener


una visin general del lenguaje, a continuacin se recoge de manera resumida
las principales caractersticas de C# Alguna de las caractersticas aqu

sealadas no son exactamente propias del lenguaje sino de la plataforma .NET


en general. Sin embargo, tambin se comentan aqu tambin en tanto que
tienen repercusin directa en el lenguaje, aunque se indicar explcitamente
cules son este tipo de caractersticas cada vez que se toquen: Sencillez: C#
elimina muchos elementos que otros lenguajes incluyen y que son innecesarios
en .NET. Por ejemplo: El lenguaje de programacin C# Tema 2: Introduccin a
C# Jos Antonio Gonzlez Seco Pgina 22 o El cdigo escrito en C# es
autocontenido, lo que significa que no necesita de ficheros adicionales al
propio fuente tales como ficheros de cabecera o ficheros IDL o El tamao de los
tipos de datos bsicos es fijo e independiente del compilador, sistema
operativo o mquina para quienes se compile (no como en C++), lo que facilita
la portabilidad del cdigo. o No se incluyen elementos poco tiles de lenguajes
como C++ tales como macros, herencia mltiple o la necesidad de un operador
diferente del punto (.) acceder a miembros de espacios de nombres (::)
Modernidad: C# incorpora en el propio lenguaje elementos que a lo largo de los
aos ha ido demostrndose son muy tiles para el desarrollo de aplicaciones y
que en otros lenguajes como Java o C++ hay que simular, como un tipo bsico
decimal que permita realizar operaciones de alta precisin con reales de 128
bits (muy til en el mundo financiero), la inclusin de una instruccin foreach
que permita recorrer colecciones con facilidad y es ampliable a tipos definidos
por el usuario, la inclusin de un tipo bsico string para representar cadenas o
la distincin de un tipo bool especfico para representar valores lgicos.
Orientacin a objetos: Como todo lenguaje de programacin de propsito
general actual, C# es un lenguaje orientado a objetos, aunque eso es ms bien
una caracterstica del CTS que de C#. Una diferencia de este enfoque
orientado a objetos respecto al de otros lenguajes como C++ es que el de C#
es ms puro en tanto que no admiten ni funciones ni variables globales sino
que todo el cdigo y datos han de definirse dentro de definiciones de tipos de
datos, lo que reduce problemas por conflictos de nombres y facilita la
legibilidad del cdigo. C# soporta todas las caractersticas propias del
paradigma de programacin orientada a objetos: encapsulacin, herencia y
polimorfismo. En lo referente a la encapsulacin es importante sealar que
aparte de los tpicos modificadores public, private y protected, C# aade un
cuarto modificador llamado internal, que puede combinarse con protected e
indica que al elemento a cuya definicin precede slo puede accederse desde
su mismo ensamblado. Respecto a la herencia -a diferencia de C++ y al igual
que Java- C# slo admite herencia simple de clases ya que la mltiple provoca
ms quebraderos de cabeza que facilidades y en la mayora de los casos su
utilidad puede ser simulada con facilidad mediante herencia mltiple de
interfaces. De todos modos, esto vuelve a ser ms bien una caracterstica
propia del CTS que de C#. Por otro lado y a diferencia de Java, en C# se ha
optado por hacer que todos los mtodos sean por defecto sellados y que los
redefinibles hayan de marcarse con el modificador virtual (como en C++), lo
que permite evitar errores derivados de redefiniciones accidentales. Adems,
un efecto secundario de esto es que las llamadas a los mtodos sern ms
eficientes por defecto al no tenerse que buscar en la tabla de funciones
virtuales la implementacin de los mismos a la que se ha de llamar. Otro efecto

secundario es que permite que las llamadas a los mtodos El lenguaje de


programacin C# Tema 2: Introduccin a C# Jos Antonio Gonzlez Seco
Pgina 23 virtuales se puedan hacer ms eficientemente al contribuir a que el
tamao de dicha tabla se reduzca

video
https://youtu.be/kIf9MauAFUA
ambetancurc@unadvirtual.edu.co

Anda mungkin juga menyukai