lunes, 9 de febrero de 2015
lunes, 2 de febrero de 2015
Lenguages De La Programacion
Un lenguaje de la programacion es el conjunto de sentecis que sirven para decirle a una computadora que es lo que tiene que hacer.
Las computadoras solo entienden un lenguaje de la programacion llamado binario, por lo que es necesario crear lenguajes que sean mas cercanos a los humanos y que permita la comunicacion entre el programador y el computador, facilitando la tarea de programar.
Existen diversos lenguajes de programacion que se dividen en dos grandes tipos, los lenguajes interpretados y los lenguajes complicados.
En los lenguajes de programacion interpretados, la computadoras ejecutan las instruciones conforme las va leyendo; en los compilados existe un programa que toma en el lenguaje de programacion y lo convierte en un codigo ejecutable.
10 ejemplos de lenguaje de programacion
1. Ensamblador
2. Visual Basic
3. Cobol
4. Java
5. C
6. C++
7. C#
8. J#
9. SHELL's de UNIX
10. Oracle PL/SQL
Ensamblador
Se refiere a un tipo de programa informativo que se encarga de traducir un fichero fuente escrito en un lenguaje ensamblador, a un fichero objeto contiene codijo maquina, ejecutable directamente por el microprocesador.
Sintaxis de un lenguaje ensamblador
-Estructura en linea:
INSTRUCCIÓN EN ENSAMBLADOR
ETIQUETA, NEMOTÉCNICO, OPERANDOS, COMENTARIOS
INSTRUCCIÓN EN LENGUAJE MÁQUINA
DIRECCIÓN, CÓDIGO DE OPERACIÓN, DIRECCIÓN DE LOS OPERANDOS
En la revisión de 2002 se le añadió orientación a objetos, aunque desde la revisión de 1974 se podía crear un entorno de trabajo similar a la orientación a objetos, y un método de generación de pantallas gráficas estandarizado.
Antes de la inclusión de las nuevas características en el estándar oficial, muchos fabricantes de compiladores las añadían de forma no estándar. En la actualidad este proceso se está viendo con la integración de COBOL con Internet. Existen varios compiladores que permiten emplear COBOL como lenguaje de espringl y de servicio web. También existen compiladores que permiten generar código COBOL para la plataforma. NET y EJB.
El lenguaje de programación Java fue originalmente desarrollado por James Gosling de Sun Microsystems (la cual fue adquirida por la compañía Oracle) y publicado en 1995 como un componente fundamental de la plataforma Java de Sun Microsystems.
Su sintaxis deriva en gran medida de C y C++, pero tiene menos utilidades de bajo nivel que cualquiera de ellos. Las aplicaciones de Java son generalmente compiladas a bytecode (clase Java) que puede ejecutarse en cualquier máquina virtual Java (JVM) sin importar la arquitectura de la computadora subyacente.
La compañía Sun desarrolló la implementación de referencia original para los compiladores de Java, máquinas virtuales, y librerías de clases en 1991 y las publicó por primera vez en 1995. A partir de mayo de 2007, en cumplimiento con las especificaciones del Proceso de la Comunidad Java, Sun volvió a licenciar la mayoría de sus tecnologías de Java bajo la Licencia Pública General de GNU. Otros también han desarrollado implementaciones alternas a estas tecnologías de Sun, tales como el Compilador de Java de GNU y el GNU Classpath.
Al igual que B, es un lenguaje orientado a la implementación de Sistemas Operativos, concretamente Unix. C es apreciado por la eficiencia del código que produce y es el lenguaje de programación más popular para crear software de sistemas, aunque también se utiliza para crear aplicaciones.
Se trata de un lenguaje de tipos de datos estáticos, débilmente tipificado, de medio nivel pero con muchas características de bajo nivel. Dispone de las estructuras típicas de los lenguajes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar código en ensamblador con código C o acceder directamente a memoria o dispositivos periféricos.
La primera estandarización del lenguaje C fue en ANSI, con el estándar X3.159-1989. El lenguaje que define este estándar fue conocido vulgarmente como ANSI C. Posteriormente, en 1990, fue ratificado como estándar ISO (ISO/IEC 9899:1990). La adopción de este estándar es muy amplia por lo que, si los programas creados lo siguen, el código es portable entre plataformas y/o arquitecturas.
Posteriormente se añadieron facilidades de programación genérica, que se sumó a los otros dos paradigmas que ya estaban admitidos (programación estructurada y la programación orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma.
Actualmente existe un estándar, denominado ISO C++, al que se han adherido la mayoría de los fabricantes de compiladores más modernos. Existen también algunos intérpretes, tales como ROOT.
Una particularidad del C++ es la posibilidad de redefinir los operadores, y de poder crear nuevos tipos que se comporten como tipos fundamentales.
El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que C++ es una extensión de C.

- Características de los ensambladores modernos:
•
Formato libre.
•
Delimitadores de campo.
- Tipos de líneas en un programa ensamblador
•
Instrucciones.
∗
Ejecutables por el computador.
•
Pseudoinstrucciones
∗
Indicaciones o directivos para el traductor.
∗
No ejecutables por el computador.
Visual Basic
Es un lenguanje de programcion dirigido por eventos, desarollado por Alan Cooper para Misocrof. Este lenguaje de programacion es un dialecto de BASIC, con impotantes agragados. Su primera version fue presentaeda en 1991, con la intencion de simpleficar la Programacion utilizando un ambiente de desarrollo que facilicita en cierta medida de la programacion misma.
Cobol
Fue creado en el ano 1959 con el objetivo de crear un lenguaje de programacion universal utilizado en cualquier ordenador ya que en los anos 1960 existian numerosos modelos de ordenadores incompatibles entre si, y que estuviera orientado principalmente en los negocios, es decir, a la llamada informatica de gestion.
En la creación de este lenguaje participó la comisión CODASYL, compuesta por fabricantes de ordenadores, usuarios y el Deparatamento de defensa de estados unidos en mayo de 1959. La definición del lenguaje se completó en poco más de seis meses, siendo aprobada por la comisión en enero de 1960. El lenguaje COBOL fue diseñado inspirándose en el lenguaje Flow-Matic de Gracei Happer y el IBM COMTRAM de Bob Bemer, ya que ambos formaron parte de la comisión.
Caracteristicas
- COBOL fue dotado de unas excelentes capacidades de autodocumentación.
- Una buena gestión de archivos y una excelente gestión de los tipos de datos para la época, a través de la conocida sentencia PICTURE para la definición de campos estructurados. Para evitar errores de redondeo en los cálculos que se producen al convertir los números a binario y que son inaceptables en temas comerciales, COBOL puede emplear y emplea por defecto números en base diez. Para facilitar la creación de programas en COBOL, la sintaxis del mismo fue creada de forma que fuese parecida al idioma inglés, evitando el uso de símbolos que se impusieron en lenguajes de programación posteriores.
En la revisión de 2002 se le añadió orientación a objetos, aunque desde la revisión de 1974 se podía crear un entorno de trabajo similar a la orientación a objetos, y un método de generación de pantallas gráficas estandarizado.
Antes de la inclusión de las nuevas características en el estándar oficial, muchos fabricantes de compiladores las añadían de forma no estándar. En la actualidad este proceso se está viendo con la integración de COBOL con Internet. Existen varios compiladores que permiten emplear COBOL como lenguaje de espringl y de servicio web. También existen compiladores que permiten generar código COBOL para la plataforma. NET y EJB.
Java
Java es un lenguaje de programacion de propocito general, concurrente, orientado a objetos que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible. Su intención es permitir que los desarrolladores de aplicaciones escriban el programa una vez y lo ejecuten en cualquier dispositivo (conocido en inglés como WORA, o "write once, run anywhere"), lo que quiere decir que el código que es ejecutado en una plataforma no tiene que ser recompilado para correr en otra. Java es, a partir de 2012, uno de los lenguajes de programación más populares en uso, particularmente para aplicaciones de cliente-servidor de web, con unos 10 millones de usuarios reportados.El lenguaje de programación Java fue originalmente desarrollado por James Gosling de Sun Microsystems (la cual fue adquirida por la compañía Oracle) y publicado en 1995 como un componente fundamental de la plataforma Java de Sun Microsystems.
Su sintaxis deriva en gran medida de C y C++, pero tiene menos utilidades de bajo nivel que cualquiera de ellos. Las aplicaciones de Java son generalmente compiladas a bytecode (clase Java) que puede ejecutarse en cualquier máquina virtual Java (JVM) sin importar la arquitectura de la computadora subyacente.
La compañía Sun desarrolló la implementación de referencia original para los compiladores de Java, máquinas virtuales, y librerías de clases en 1991 y las publicó por primera vez en 1995. A partir de mayo de 2007, en cumplimiento con las especificaciones del Proceso de la Comunidad Java, Sun volvió a licenciar la mayoría de sus tecnologías de Java bajo la Licencia Pública General de GNU. Otros también han desarrollado implementaciones alternas a estas tecnologías de Sun, tales como el Compilador de Java de GNU y el GNU Classpath.
C
C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje B, a su vez basado en BCPL.Al igual que B, es un lenguaje orientado a la implementación de Sistemas Operativos, concretamente Unix. C es apreciado por la eficiencia del código que produce y es el lenguaje de programación más popular para crear software de sistemas, aunque también se utiliza para crear aplicaciones.
Se trata de un lenguaje de tipos de datos estáticos, débilmente tipificado, de medio nivel pero con muchas características de bajo nivel. Dispone de las estructuras típicas de los lenguajes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar código en ensamblador con código C o acceder directamente a memoria o dispositivos periféricos.
La primera estandarización del lenguaje C fue en ANSI, con el estándar X3.159-1989. El lenguaje que define este estándar fue conocido vulgarmente como ANSI C. Posteriormente, en 1990, fue ratificado como estándar ISO (ISO/IEC 9899:1990). La adopción de este estándar es muy amplia por lo que, si los programas creados lo siguen, el código es portable entre plataformas y/o arquitecturas.
Características
Propiedades
- Un núcleo del lenguaje simple, con funcionalidades añadidas importantes, como funciones matemáticas y de manejo de archivos, proporcionadas por bibliotecas.
- Es un lenguaje muy flexible que permite programar con múltiples estilos. Uno de los más empleados es el estructurado "no llevado al extremo" (permitiendo ciertas licencias de ruptura).
- Un sistema de tipos que impide operaciones sin sentido.
- Usa un lenguaje de preprocesado, el preprocesador de C, para tareas como definir macros e incluir múltiples archivos de código fuente.
- Acceso a memoria de bajo nivel mediante el uso de punteros.
- Interrupciones al procesador con uniones.
- Un conjunto reducido de palabras clave.
- Por defecto, el paso de parámetros a una función se realiza por valor. El paso por referencia se consigue pasando explícitamente a las funciones las direcciones de memoria de dichos parámetros.
- Punteros a funciones y variables estáticas, que permiten una forma rudimentaria de encapsulado y polimorfismo.
- Tipos de datos agregados (
struct) que permiten que datos relacionados (como un empleado, que tiene un id, un nombre y un salario) se combinen y se manipulen como un todo (en una única variable "empleado").
Carencias
- Recolección de basura nativa, sin embargo se encuentran a tal efecto bibliotecas como la "libgc" desarrollada por Sun Microsystems, o el Recolector de basura de Boehm.
- Soporte para programación orientada a objetos, aunque la implementación original de C++ fue un preprocesador que traducía código fuente de C++ a C.
- Funciones anidadas, aunque GCC tiene esta característica como extensión.
- Soporte nativo para programación multihilo.
C++
C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación C con mecanismos que permitan la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.Posteriormente se añadieron facilidades de programación genérica, que se sumó a los otros dos paradigmas que ya estaban admitidos (programación estructurada y la programación orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma.
Actualmente existe un estándar, denominado ISO C++, al que se han adherido la mayoría de los fabricantes de compiladores más modernos. Existen también algunos intérpretes, tales como ROOT.
Una particularidad del C++ es la posibilidad de redefinir los operadores, y de poder crear nuevos tipos que se comporten como tipos fundamentales.
El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que C++ es una extensión de C.
C#
Es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA (ECMA-334) e ISO (ISO/IEC 23270). C# es uno de los lenguajes de programación diseñados para la infraestructura de lenguaje común.
Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET, similar al de Java, aunque incluye mejoras derivadas de otros lenguajes.
El nombre C Sharp fue inspirado por la notación musical, donde '#' (sostenido, en inglés sharp) indica que la nota (C es la nota do en inglés) es un semitono más alta, sugiriendo que C# es superior a C/C++. Además, el signo '#' se compone de cuatro signos '+' pegados.
Aunque C# forma parte de la plataforma .NET, ésta es una API,
mientras que C# es un lenguaje de programación independiente diseñado
para generar programas sobre dicha plataforma. Ya existe un compilador implementado que provee el marco Mono - DotGNU, el cual genera programas para distintas plataformas como Windows, Unix, Android, iOS, Windows Phone, Mac OS y GNU/Linux.
J#
El lenguaje de programación J, diseñado por Kenneth Iverson y Roger Hui en los '90, es una síntesis de los lenguajes de programación APL (diseñado también por Iverson) y los lenguajes funcionales FP y FL creados por John Backus (famoso por FORTRAN, ALGOL y BNF).
Para eliminar el problema generado por el uso de un juego de
caracteres especiales en APL, J sólo requiere el juego de caracteres
básicos ASCII. Se usan tanto el punto como los dos puntos para extender el significado del juego de caracteres disponible.
Dado que se trata de un lenguaje de programación de array,
J es muy conciso y potente, y es útil para crear programas en los
campos de las matemáticas y de la estadística, especialmente cuando
involucran operaciones con matrices.
De la misma manera que los lenguajes FP/FL, J soporta Programación a nivel de funciones (también conocida como programación funcional de alto orden), gracias a sus características de programación tácita (nótese que la programación a nivel de funciones no es lo mismo que programación funcional).
A diferencia de muchos lenguajes que soportan la programación
orientada a objetos, el flexible esquema de espacio de nombres
jerárquico del lenguaje J (donde cada nombre existe en un ámbito
particular) puede ser usado con efectividad como un marco de trabajo
para realizar programación orientada a objetos basada tanto en clases,
como en instancias.
J es un lenguaje de programación no von Neumanniano, que sin embargo
permite que el programador use el estilo de programación von Neumann a
conveniencia.
Nótese que el lenguaje de programación J no está relacionado con J++, ni su nueva versión J# (una versión propietaria del Lenguaje de programación Java desarrollada por Microsoft).
Ejemplos
J es un lenguaje de programación extremadamente potente, y sus programas pueden ser muy tersos, pero incluso más crípticos.
El programa 'Hola Mundo' en J es:
'Hola Mundo'
Esta implementación de 'Hola Mundo' refleja el uso tradicional de J -- los programas son introducidos durante una sesión del intérprete
J, y los resultados de las expresiones se muestran de modo interactivo.
También es posible hacer que scripts en J se puedan ejecutar como
programas independientes, pero los mecanismos usados para asociar el
script con el intérprete son dependientes del sistema. En un sistema
Unix, se podría hacer como sigue:
#!/bin/jc echo 'Hello, world!' exit ''
Sin embargo, estos mecanismos no son usados por muchos programadores expertos de J.
A continuación se muestra un programa J que calcula la media de una lista de números:
avg =. +/ % #
avg 1 2 3 4
2.5
'#' - cuenta el número de elementos en la cadena. '+/' - suma todos
los elementos de la cadena. '%' - divide la suma de los elementos por el
número de elementos.
Ahora generaremos algunos números aleatorios y calcularemos su media:
a =. ?20$100
a
31 16 60 64 64 71 13 3 76 26 25 77 68 48 42 91 99 97 99 9
avg a
53.95
Sigue una implementación del algoritmo quicksort, sacada del diccionario de funciones de J:
sel=: adverb def 'x. # ['
quicksort=: verb define
if. 1 >: #y. do. y.
else.
(quicksort y. <sel e),(y. =sel e), quicksort y. >sel e=.y.{~?#y.
end.
)
La siguiente expresión (Roger Hui) calcula los primeros n dígitos de
pi, y demuestra la capacidad de J de usar precisión extendida:
n=.50 NB. asigna a n el número de dígitos requerido. <.@o. 10x^n NB. precisión extendida 10^nth * pi 314159265358979323846264338327950288419716939937510
SHELL's de UNIX
Una Shell de Unix o también shell, es el término usado en informática para referirse a un intérprete de comandos, el cual consiste en la interfaz de usuario tradicional de los sistemas operativos basados en Unix y similares como GNU/Linux.
Mediante las instrucciones que aporta el intérprete, el usuario puede comunicarse con el núcleo y por extensión, ejecutar dichas órdenes, así como herramientas que le permiten controlar el funcionamiento de la computadora.
Los comandos que aportan los intérpretes, pueden usarse a modo de
guion si se escriben en ficheros ejecutables denominados shell-scripts,
de este modo, cuando el usuario necesita hacer uso de varios comandos o
combinados de comandos con herramientas, escribe en un fichero de texto
marcado como ejecutable, las operaciones que posteriormente, línea por
línea, el intérprete traducirá al núcleo para que las realice. Sin ser
un shell estrictamente un lenguaje de programación, al proceso de crear
scripts de shell se le denomina programación shell o en inglés, shell programming o shell scripting.
En el sentido más genérico del término, shell
significa cualquier intérprete que los usuarios usen para escribir
comandos. Su etimología proviene del uso natural de consolas en
computadores funcionando bajo unix antaño, cuando los usuarios
conectaban al computador central, lo hacían mediante consolas,
(shells) por las cuales a través de un intérprete, hacían inicio de
sesión y manejaban la computadora principal. Posteriormente, con la
proliferación de los computadores personales y su filosofía monousuario,
un computador por usuario (entiéndase lo contrario de la filosofía
inicial de Unix, un computador, muchos usuarios conectados por
terminales), se desarrolló un software que emulase las características
principales de las consolas físicas, a modo de poder seguir usándolas
como clientes en un computador o núcleo que comprendiera la convención
estándar usada para configurar y llevar a cabo tareas de administración
de emergencia con servidores basados en Unix.
Los usuarios de Unix y similares, pueden elegir entre distintos
shells (programa que se debería ejecutar cuando inician la sesión, véase
bash, ash, csh, Zsh, ksh, tcsh). Las interfaces de usuario gráficas para Unix, como son GNOME, KDE y Xfce pueden ser llamadas shells visuales o shells gráficas. Por sí mismo, el término shell
es asociado usualmente con la línea de comandos. En Unix, cualquier
programa puede ser un shell de usuario. Los usuarios que desean utilizar
una sintaxis diferente para redactar comandos, pueden especificar un
intérprete diferente como su shell de usuario.
El término shell también hace referencia a un programa particular, tal como el Bourne shell, sh. El Bourne shell fue el shell usado en las primeras versiones de Unix y se convirtió en un estándar de facto;
todos los sistemas similares a Unix tienen al menos un shell compatible
con el Bourne shell. El programa Bourne shell se encuentra dentro de la
jerarquía de archivos de Unix en /bin/sh. En algunos sistemas, tal como BSD, /bin/sh es un Bourne shell o un equivalente, pero en otros sistemas como muchas distribuciones de Linux, /bin/sh es un enlace simbólico a un shell compatible con más características (como Bash). POSIX especifica su shell estándar como un subconjunto estricto del Korn shell.
Oracle PL/SQL
PL/SQL (Procedural Language/Structured Query Language) es un lenguaje de programación incrustado en Oracle.
PL/SQL soportara todas las consultas, ya que la manipulación de datos que se usa es la misma que en SQL, incluyendo nuevas características:
- El manejo de variables.
- Estructuras modulares.
- Estructuras de control de flujo y toma de decisiones.
- Control de excepciones.
El lenguaje PL/SQL está incorporado en:
- Servidor de la base de datos.
- Herramientas de Oracle (Forms, Reports, ...).
En un entorno de base de datos los programadores pueden construir
bloques PL/SQL para utilizarlos como procedimientos o funciones, o bien
pueden escribir estos bloques como parte de scripts SQL*Plus.
Los programas o paquetes de PL/SQL se pueden almacenar en la base de
datos como otro objeto, y todos los usuarios que estén autorizados
tienen acceso a estos paquetes. Los programas se ejecutan en el servidor
para ahorrar recursos a los clientes.
Suscribirse a:
Entradas (Atom)