Informe Lenguaje de programación RUBY
Hector MondragonInforme21 de Septiembre de 2015
2.380 Palabras (10 Páginas)308 Visitas
INFORME SOBRE LENGUAJE DE PROGRAMACION RUBY
RESUMEN
Se realizó una investigación acerca del lenguaje de programación Ruby haciendo una serie de búsquedas por la web y en diversos libros, Ruby es un lenguaje de programación sencillo pero a la vez potente y de alto nivel, perfecto para diseñar desde aplicaciones web o aplicaciones móviles gracias a su fácil manejo fue desarrollado en 1993 por Yukihiro "Matz" Matsumoto, este lenguaje es una combinación de varios lenguajes como Perl, java y Ada. Su nombre es originado como broma al nombre del lenguaje Perl (perla), de ahí el nombre Ruby (rubí). Es un lenguaje orientado a objetos funciona en varias plataformas como netbeans, o´rails y su uso en diferentes plataformas no influye cambios en su estructura de código porque comparten una misma biblioteca
Yields: dar paso a los argumentos, demandas, o presión.
INTRODUCCION
Este informe fue desarrollado en base a las normas IEEE el cual especifica detalladamente el número de letra de títulos principales y secundarios posición, tamaño de la página, etc.,
la información puesta en este documento fue obtenida de sitio en internet y de libros acerca de lo planteado en el contenido
INDICE
1.¿Que es Ruby?_ _ _ _ _ _ _ _ _ _ _ _ __ _ _ _ 3
2. Historia_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 3
3. Características__ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 3
4. Interacion_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 3
5. Sintaxis_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 3
6. Licencia_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 4
7. Palabras claves e identificadores_ _ _ _ _ _ _ 4
8. Ámbitos de la variable_ _ _ _ _ _ _ _ _ _ _ _ _ _ 4
8.1 variables Locales_ _ _ _ _ _ _ _ _ _ _ 4
8.2 Variables Globales_ _ _ _ _ _ _ _ _ _ 4
8.3 Variables de instancia_ _ _ _ _ _ _ _ _5 8.4 Variables de clase_ _ _ _ _ _ _ _ _ _ _ 5
8.5 Constantes_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 5
9. Tipos de datos _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 5
9.1 Números_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 5 9.1.1 Integer
9.1.2 Fixnum
9.1.3 Bignum
9.1.4 Float
9.1.5 Rational
9.2 String_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 6
9.3 Date/time_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 6
10. Metodos_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ _6
11. Manejo de errores_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 6
12. Procesamiento de excepciones ensure_ _ _ 6
1 ¿QUÉ ES RUBY?
Ruby es “un lenguaje de programación orientado a objetos sencillo”. Se ha diseñado para que sea fácil de leer y escribir.
2 HISTORIA
El lenguaje fue creado por Yukihiro "Matz" Matsumoto, quien empezó a trabajar en Ruby el 24 de febrero de 1993, y lo presentó al público en el año 1995. En el círculo de amigos de Matsumoto se le puso el nombre de "Ruby" (en español rubí) como broma aludiendo al lenguaje de programación "Perl" (perla). La última versión estable de la rama 1.8 es la 1.8.7_p248, de la rama 1.9 es la 1.9.2_p180. La versión en 1.9 que incorpora mejoras sustanciales en el rendimiento del lenguaje, que se espera queden reflejadas en la próxima versión estable de producción del lenguaje, Ruby 1.9.0.1 Diferencias en rendimiento entre la actual implementación de Ruby (1.8.6) y otros lenguajes de programación más arraigados han llevado al desarrollo de varias máquinas virtuales para Ruby. Entre ésas se encuentra JRuby, un intento de llevar Ruby a la plataforma Java, y Rubinius, un intérpretemodelado basado en las máquinas virtuales de Smalltalk. Los principales desarrolladores han apoyado la máquina virtual proporcionada por el proyecto YARV, que se fusionó en el árbol de código fuente de Ruby el 31 de diciembre de 2006, y se dio a conocer como Ruby 1.9
La versión más actual hasta ahora es Ruby 2.2.2
3 CARACTERÍSTICAS
- rientado a objetos
- Cuatro niveles de ámbito de variable: global, clase, instancia y local.
- Manejo de excepciones
- iteradores y clausuras o closures (pasando bloques de código)
- expresiones regulares nativas similares a las de Perl a nivel del lenguaje
- Posibilidad de redefinir los operadores (sobrecarga de operadores)
- recolección de basura automática
- Altamente portable
- Hilos de ejecución simultáneos en todas las plataformas usando Green threads
- Carga dinámica de DLL/bibliotecas compartidas en la mayoría de las plataformas
- Introspección, reflexión y meta programación
- Amplia librería estándar
- Soporta inyección de dependencias
- Soporta alteración de objetos en tiempo de ejecución
- continuaciones y generadores
- Ruby actualmente no tiene soporte completo de Unicode, 6 a pesar de tener soporte parcial para UTF-8
4 INTERACCIÓN
La distribución oficial de Ruby incluye irb (Interactive Ruby Shell), un intérprete interactivo de línea de comandos que puede ser usado para probar código de manera rápida. El siguiente fragmento de código representa una muestra de una sesión usando irb:
[pic 1]
Fig.1 ejemplo de una muestra de sesión
5 SINTAXIS
La sintaxis de Ruby es similar a la de Perl o Python. La definición de clases y métodos está definida por palabras clave. Sin embargo, en Perl, las variables no llevan prefijos. Cuando se usa, un prefijo indica el ámbito de las variables. La mayor diferencia con C y Perl es que las palabras clave son usadas para definir bloques de código sin llaves. Los saltos de línea son significativos y son interpretados como el final de una sentencia; el punto y coma tiene el mismo uso. De forma diferente que Python, la indentación no es significativa.
Una de las diferencias entre Ruby y Python y Perl es que Ruby mantiene todas sus variables de instancia privadas dentro de las clases y solo la expone a través de métodos de acceso (attr_writer, attr_reader, etc.). A diferencia de los métodos "getter" y "setter" de otros lenguajes como C++ o Java, los métodos de acceso en Ruby pueden ser escritos con una sola línea de código. Como la invocación de estos métodos no requiere el uso de paréntesis, es trivial cambiar una variable de instancia en una función sin tocar una sola línea de código o refactorizar dicho código. Los descriptores de propiedades de Python son similares pero tienen una desventaja en el proceso de desarrollo. Si uno comienza en Python usando una instancia de variable expuesta públicamente y después cambia la implementación para usar una instancia de variable privada expuesta a través de un descriptor de propiedades, el código interno de la clase necesitará ser ajustado para usar la variable privada en vez de la propiedad pública. Ruby elimina está decisión de diseño obligando a todas las variables de instancia a ser privadas, pero también proporciona una manera sencilla de declarar métodos set y get. Esto mantiene el principio de que en Ruby no se puede acceder a los miembros internos de una clase desde fuera de esta; en lugar de esto se pasa un mensaje (se invoca un método) a la clase y recibe una respuesta.
6 LICENCIA
El intérprete y las bibliotecas están licenciadas de forma dual (inseparable) bajo las licencias de software libre GPL y Licencia pública Ruby.
A partir de la versión 1.9.3 se opta por una licencia dual bajo las licencias BSD de dos cláusulas y Licencia pública Ruby.
7 PALABRAS CLAVES E IDENTIFICADORES
Las palabras reservadas en Ruby no pueden utilizarse para otros propósitos que los definidos en los lenguajes estos son:
BEGIN | def | for | redo | undef |
END | defined? | if | rescue | unless |
alias | do | in | retry | until |
and | else | module | return | when |
begin | elsif | next | self | while |
break | end | nil | super | yield |
case | ensure | not | then | |
class | false | Or | true |
Fig2.palabras reservadas
...