miércoles, 30 de marzo de 2011

Lenguajes de programacion

Los lenguajes de programación son idiomas artificiales diseñados para posibilitar la interacción humano-maquina.
“El programador es el encargado de utilizar un lenguaje de programación para crear un conjunto de instrucciones que, al final, constituirá un programa o subprograma informático.”-Wikipedia

Algol 68


El lenguaje Algol existía ya en 1960, pero su versión más completa no vio la luz sino hasta 1968, después de varios años de revisión. El principal autor de esta versión de Algol es Adriaan van Wijngaarden .
Algol 68 buscaba ser una herramienta para la enseñanza,  funcionaba comunicando algoritmos, ejecutándolos en diferentes arquitecturas. “Su semántica fue definida formalmente antes de ser implementado en base al formalismo llamado gramáticas de dos niveles.

C


C es un lenguaje de programación de bajo nivel desarrollado entre 1969 y 1973 por Dennis Ritchie y Bell Telephone Laboratories, para los sistemas operativos Unix.
Aunque C se diseño para implementar software de sistemas, a encontrado un amplio uso en el desarrollo de software de aplicación.
Siendo uno de los lenguajes de programación más populares de todos los itempos, existen pocas arquitecturas que no sean compatibles con C.

C++

C++ es un lenguaje compilado de uso general, se le considera como lenguaje de medio nivel. Creado en 1979 comenzó como una extensión de C, heredando casi toda su sintaxis, originalmente llamado “C con clases”, su nombre no fue cambiado sino hasta 1983.
Siendo el más popular de los lenguajes de programación,  es el mas usado en muchas áreas de programación, incluyendo software de aplicación, drivers, aplicaciones cliente-servidor, videojuegos, etc…
C++ sirvió como influencia para lenguajes más modernos como C# y Java.

C#

Es un lenguaje de programación multiparadigma de alto nivel, es un lenguaje orientado a objetos . C# fue diseñado para ser un lenguaje de usos multiples fácil y amigable de utilizar, utilizando una infraestructura de lenguaje común, su desarrollo es liderado por Anders Hejlsber .
Su principal objetivo es el desarrollo de componentes de software. Está diseñado para ser amigable con el uso de poder de procesamiento. C# se utiliza en la plataforma .Net de Microsoft.

PHP

Es un lenguaje de programación de alto nivel orientado a objetos. Fue desarrollado originalmente para usarse en aplicaciones de páginas web dinámicas. Es uno de los lenguajes más flexibles en el mercado, permitiendo incorporaciones de HTML, JavaScript y CSS, fue lanzado bajo una licencia propia.
Fue creado por  Rasmus Lerdorf en 1995, pero Andi Gutmans y Zeev Suraski rediseñaron el analizador sintáctico para PHP3. La versión más reciente es PHP5 lanzado en 2004.

Java

Java es un lenguaje de programación orientado a objetos, desarrollado por Sun Microsystems a principios de los 90. Java se creó como una herramienta de programación para ser usada en un proyecto de set-top-box en una pequeña operación denominada “the Green Project” en Sun Microsystems en el año 1991. En Java el problema de las fugas de memoria se evita en gran medida gracias a la recolección de basura (o automatic garbage collector). El programador determina cuándo se crean los objetos y el entorno en tiempo de ejecución de Java (Java runtime) es el responsable de gestionar el ciclo de vida de los objetos.

martes, 22 de marzo de 2011

Interfaces

En el mundo moderna, innegablemente, la tecnología se ha vuelto un bien necesario, ya sea para satisfacer las necesidades de las personas, o para ayudarlas a llevar a cabo una visión. Sin lugar a dudas, el instrumento tecnológico mas importante en la actualidad, es la computadora, su importancia a crecido exponencialmente a través de los últimos años. Tanto así que, hoy por hoy, el que no es capaz de utilizar, por lo menos las funciones básicas de un ordenador, no tiene futuro alguno en el ámbito laboral.
Los humanos necesitan de la tecnología, pero deben primero aprender a utilizarla. Es aquí donde entran las interfaces.
La interfaz es el medio con que el usuario puede comunicarse con una máquina o una computadora, y comprende todos los puntos de contacto entre el usuario y el equipo, estas interfaces deben ser lo mas fáciles de entender de accionar como sea posible.


Todos los días nosotros interactuamos con nuestros ordenadores utilizando cientos de interfaces, esto lo hacemos por medio de dispositivos periféricos como lo son los dispositivos de entrada/salida de nuestras computadoras.


Pero, ¿A que me refiero con dispositivos de entrada/salida? y ¿Cuales son? Bastante sencillo.

Los dispositivos de entrada/salida o I/O (Input/Output) son dispositivos utilizados para la comunicación entre un ordenador y el mundo exterior, que bien podría ser un humano u otro sistema de procesamiento.

Los inputs, o señales de entrada son señales o dates recibidos por el sistema, y los outputs o señales de salida son señales o datos enviados desde el computador hacia el mundo exterior.
Los I/O son utilizados por los humanos para hacer posible la comunicación de humano a computadora y viceversa. 
Ejemplos de dispositivos de entrada serian el mouse y el teclado, instrumentos que utiliza el humano para mandar datos, señales u órdenes  a la computadora. Ejemplos de dispositivos de salida serían las impresoras y los monitores, que son manejados principalmente por el ordenador para mandar o responder a las instrucciones dadas por el humano.


Estos son, solo algunos ejemplos de los muchos dispositivos que utilizamos diariamente para comunicarnos con nuestros ordenadores:


Dispositivos entrada/salida
- DVD 
- USB
- Router
- Fax


Dispositivos de entrada
- Teclado
Ratón
- Escaner
Micrófono


Dispositivos de salida
- Bocinas
- Monitor
- Impresora
- Proyector 


Resumiendo de una manera mas sencilla, podemos decir que los dispositivos de entrada son aquellos que el mundo real utiliza para comunicarse con la maquina, los dispositivos de salida son utilizados por la maquina para comunicarse con el mundo real y los dispositivos de entrada/salida son aquellos que ofrecen una interacción mutua entre ambos mundos.