Está en la página 1de 11

INSTITUTO TECNOLOGICO DE VERACRUZ Materia: Programacin de sistemas Profesora: Martnez moreno Martha Alumnos: RAMOS VEGA DIANA Rivera

ra Hernndez Flix o. Rodal vela Cinthia Tema: lenguaje de programacin ruby Grupo: 5h1b

LENGUAJE DE PROGRAMACION RUBY

ANTECEDENTES: Ruby es un lenguaje multiplataforma, interpretado y orientado a objetos. Ruby fue diseado por Yukihiro Matsumoto ('Matz') en 1993, con el Principio de la Menor Sorpresa: Matz dice "quera minimizar mi frustracin mientras programo, y eso conllevaba minimizar mi esfuerzo. Este es el principal objetivo de Ruby, lo present al pblico en el ao 1995. En el crculo de amigos de Matsumoto se le puso el nombre de "Ruby" (en espaol rub) como broma aludiendo al lenguaje de programacin "Perl" (perla). Luego de mas de dos aos de trabajo, Ruby se presenta al pblico en su versin 0.95. En 1996, Ruby 1.0 es ofrecido al pblico. A partir de 1997, varias empresas se interesaron en ruby como un campo para explorar, y ese mismo ao se escribi el primer artculo tcnico. En el 2000, IBM se interesa en el lenguaje y publica un artculo acerca de la denominada Latest open source gem Japan(La ltima gema del open source del Japn). En el ao 2004 hubo un boom en el inters por Ruby, debido a Ruby on Rails: el entorno para desarrollo web de David Heinemeier Hansson. Se lo ha seleccionado como el lenguaje de programacin del 2006 y se encuentra en los entre los 10 mas populares de la actualidad segn el ranking TIOBE. EL USO DEL LENGUAJE El lenguaje Ruby est diseado para la productividad y la diversin del desarrollador, siguiendo los principios de una buena interfaz de usuario.1 Sostiene que el diseo de sistemas necesita enfatizar las necesidades humanas ms que las de la mquina:2 Ruby sigue el "principio de la menor sorpresa", lo que significa que el lenguaje debe comportarse de tal manera que minimice la confusin de los usuarios experimentados. Combina una sintaxis inspirada en Python,Perl con caractersticas de programacin orientada a objetos similares a Smalltalk, Comparte tambin funcionalidad con otros lenguajes de programacin como Lisp, Lua, Dylan y CLU. Ruby es un lenguaje de programacin interpretado en una sola pasada y su implementacin oficial es distribuida bajo una licencia de software libre.

Caractersticas:

Orientado a objetos Existe diferencia entre maysculas y minsculas. Mltiples expresiones por lneas, separadas por punto y coma ;. Dispone de manejo de excepciones. Libreras de extensiones dinmicamente si el (Sistema Operativo) lo permite. Dinmico Entiende expresiones regulares Multiplataforma Recolector de basura inteligente Sintaxis flexible Sobre carga de operadores Puede cargar libreras de extensiones dinmicamente si el (Sistema Operativo) lo permite. Porttil

Ventajas: Permite desarrollar soluciones a bajo Costo. Software libre. Multiplataforma. Desventajas: No soporta polimorfismo de funciones (sobrecarga) No es tipado fuerte Interpretado = Lento

Mancuso

LA SIMBOLOGIA La sintaxis de Ruby es similar a la de Perl o Python. La definicin de clases y mtodos est definida por palabras clave . Los operadores son un componente esencial de cualquier lenguaje de programacin. Con ellos podemos asignar, unir, cambiar o comparar valores de datos, cambiar el flujo del programa, etc. Los operadores son smbolos que representan operaciones sobre un valor. Estos operadores requieren de dos operandos.
CARACTERES ESPECIALES FUNCION

. [] \w \W \s \S \d \D \b \b \B \t \A

cualquier caracter especificacin por rango. P.ej: [a-z], una letra de la a, a la z letra o nmero; es lo mismo que [0-9A-Za-z] cualquier carcter que no sea letra o nmero carcter de espacio; es lo mismo que [ \t\n\r\f] cualquier carcter que no sea de espacio nmero; lo mismo que [0-9] cualquier carcter que no sea un nmero retroceso (0x08), si est dentro de un rango lmite de palabra, si NO est dentro de un rango no lmite de palabra Representa un tabulador. Representa el inicio de la cadena. No un carcter sino una posicin. Representa el "retorno de carro" o "regreso al inicio" o sea el lugar en que la lnea vuelve a iniciar. Representa el final de la cadena. No un carcter sino una posicin Representa la "nueva lnea" el carcter por medio del cual una lnea da inicio. Representa un salto de pgina

\r

\Z

\n \f

* + $ {m,n}

cero o ms repeticiones de lo que le precede una o ms repeticiones de lo que le precede fin de la lnea como menos m, y como mucho n repeticioes de lo que le precede al menos una repeticin de lo que le precede; lo mismo que {0,1} agrupar expresiones operador lgico O, busca lo de antes o lo despus individual: representa el inicio de la

? () ||

en conjunto de los caracteres especiales "^" realiza validaciones en forma sencilla. indicar una de varias opciones.

OPERADORES : [] ** +-!~ */%

FUNCION Alcance (scope) ndices Exponentes Unarios: pos/neg, no, Multiplicacin, Divisin,

+ & |, ^ > >= < <= == === <=> != =~ !~ && || .. = (+=, -=,...) ?: not and, or

Suma, Resta, Desplazadores binarios, 'y' binario 'or' y 'xor' binarios Comparadores Igualadad, inegualdad, 'y' booleano 'o' booleano Operadores de rango Asignadores Decisin ternaria 'no' booleano 'y', 'o' booleano

PALABRAS RESERVADAS

CADENAS Los strings (o cadenas de texto) son secuencias de caracteres entre comillas simples o comillas dobles. '' (dos comillas simples) no tienen nada: podemos llamarlo string vaco. puts "Hola mundo" # Se puede usar " o ' para los strings, pero ' es ms eficiente. puts 'Hola mundo' # Juntando cadenas puts 'Me gusta' + ' Ruby' # Secuencia de escape puts 'Ruby\'s party' # Repeticin de strings puts 'Hola' * 3 # Definiendo una constante # Ms adelante se hablar de constantes PI = 3.1416

En Ruby las cadenas son mutables: se pueden modificar. Ruby almacena las cadenas como secuencias de bytes.` Hay unos strings especiales que se diferencian por usar como delimitador el acento grave `: El string entre los acentos, es enviado al sistema operativo como un comando a ser ejecutado. El resultado devuelto por el sistema, es recogido por Ruby. En este caso, al estar puts, obtendremos en pantalla el resultado de `dir`. VARIABLES 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 travs de mtodos de acceso (attr_writer, attr_reader, etc). A diferencia de los mtodos "getter" y "setter" de otros lenguajes como C++ o Java, los mtodos de acceso en Ruby pueden ser escritos con una sola lnea de cdigo.

Variables locales:A variable whose name begins with a lowercase letter (az) or underscore (_) is a local variable or method invocation. Una variable cuyo nombre comienza con una letra minscula (az) o subrayado (_) es una variable local o la invocacin de mtodo. A local variable is only accessible from within the block of its initialization. Una variable local slo es accesible desde dentro del bloque de su inicializacin. Example: Ejemplo: foobarfoobar Variables de instancia:Example: A variable whose name begins with ' @ ' is an instance variable of self .Una variable cuyo nombre comienza con '@' es una variable de instancia de s mismo. An instance variable belongs to the object itself. Una variable de instancia pertenece al objeto en s. Uninitialized instance variables have a value of nil . Sin inicializar variables de instancia tienen un valor de cero. Ejemplo: @foobar @ foobar Variables de Clase: A class variable is shared by all instances of a class.Una variable de clase es compartida por todas las instancias de una clase. Example: Ejemplo: @@foobar@ @ foobar

Variables globales:Example:A variable whose name begins with ' $ ' has a global scope; meaning it can be accessed from anywhere within the program during runtime.Una variable cuyo nombre comienza con '$' tiene un alcance mundial, lo que significa que se puede acceder desde cualquier lugar dentro del programa durante el tiempo de ejecucin. Ejemplo: $foobar $ foobar

Para almacenar un nmero o un string en la memoria del ordenador, con el fin de usarlos en clculos posteriores, necesitas dar un nombre a ese nmero o string. En programacin este proceso es conocido como asignacin. #Ejemplos de asignaciones s = 'Hello World!' x = 10 Cuando Ruby enucuentra una palabra, la interpreta como: una variable local, un mtodo o una palabra clave. Las palabras claves no pueden ser usados como variables. Por ejemplo def es una palabra clave: slo se puede usar para definir un mtodo. if tambin es una palabra clave: gran parte del cdigo consta de instrucciones condicionales que empiezan con if, por eso sera muy confuso si pudiese usarse como variable. Los mtodos pueden ser palabras, como start_here, puts o print. Cuando Ruby encuentra una palabra decide qu es de la siguiente forma:

1. si hay un signo de igualdad (=) a la derecha de la palabra, es una variable local a la que se le asigna un valor.
2. si la palabra es una palabra clave, entonces es una palabra clave. Ruby

tiene una lista interna para poder reconocerlas.


3. Si no se cumple ninguno de los anteriores casos, Ruby asume que es un

mtodo.

También podría gustarte