Envíos gratis en compras superiores a $70.000
Inicio/Profesional/TICs y Computación/Programación/Ruby On Rails. Aprende a Crear Aplicaciones

Ruby On Rails. Aprende a Crear Aplicaciones

$52.776

  • Envío gratis en compras superiores a $70.000
  • Autores:

    • VÁZQUEZ OLIVARES, Javier Arturo
    • LORENZO MARTÍNEZ, Daniel

    Páginas: 704

    Coedición: Alfaomega, RC Libros

    ISBN: 9788494897290 Categoría:

    Descripción

    Ruby y su framework Rails se han venido posicionando como una de las tecnologías más solicitadas a nivel mundial debido a la facilidad de uso y productividad que ofrece. Los desarrolladores necesitan de herramientas con agilidad para construir y depurar productos de software de manera ordenada y rápida. Es por ello que la versatilidad y rapidez de Rails se conjuga con la elegancia y legibilidad de lenguaje de Ruby para dar como resultado un excelente producto tecnológico. En la presente publicación se muestra detalladamente cómo crear un software utilizando Ruby on Rails desde los primeros pasos. El lector podrá constatar en estas páginas que la característica principal de Ruby es ser intuitivo e idiomático, es decir, que la programación en Ruby se parece mucho al lenguaje natural (en inglés) y que la estructura de código es muy sencilla. Se exponen temas relativos a variables, objetos, arreglos, hashes y otros temas de importancia en Ruby mediante explicaciones fáciles de entender y ejemplos que el lector por sí mismo podrá practicar.

    VENTAJAS

    • Está escrito de forma coloquial y sin demasiados tecnicismos para que su lectura sea fluida.
    • Cuenta con numerosos ejemplos prácticos de cada uno de los temas.
    • Al final del libro se encuentra un capítulo complementario que puede servir de guía para comenzar sus propios proyectos.
    • Cuenta con un índice analítico útil para la localización puntual de algún concepto.

    CONOZCA

    • Las principales características de este lenguaje.
    • Los diferentes métodos para trabajar con Ruby.
    • Qué es, para qué se utiliza y cómo se define un módulo.
    • Las características fundamentales del framework RoR y la estructura de los proyectos realizados con éste.

    APRENDA

    • A trabajar con números, rangos, cadenas de caracteres, símbolos, fechas y con colecciones de objetos.
    • A trabajar en la Programación Orientada a Objetos con Ruby.
    • A crear modelos y hacer operaciones CRUD con ellos.
    • A llevar a cabo potentes aplicaciones web y construir servicios API Rest.

    DESARROLLE SUS HABILIDADES PARA

    • Instalar Ruby on Rails en Windows, GNU/Linux y OS X.
    • Hacer conversiones entre los diferentes tipos de datos.
    • Establecer condiciones y repeticiones en sus programas.
    • Montar sus servicios o aplicaciones en un servidor en la nube.

    PARTE I RUBY

    MI PRIMER ENCUENTRO …………………………………………………………………………….. 1
    CAPÍTULO 1. ACERCA DE RUBY …………………………………………………………………….. 3
    Sobre el lenguaje y su creador …………………………………………………………………………… 3
    Características y comparación …………………………………………………………………………… 4
    CAPÍTULO 2. PREPARACIÓN DEL ENTORNO DE TRABAJO ……………………………. 7
    Instalación de Ruby y Ruby on Rails …………………………………………………………………… 7
    Instalación en Windows ……………………………………………………………………………….. 8
    Instalación en GNU/Linux …………………………………………………………………………… 11
    Instalación en OS X …………………………………………………………………………………….. 17
    Entornos de desarrollo …………………………………………………………………………………… 20
    Editores de código ……………………………………………………………………………………… 20
    IDEs ………………………………………………………………………………………………………….. 21
    CAPÍTULO 3. MIS PRIMEROS PROGRAMAS EN RUBY ………………………………… 23
    EL IRB de Ruby ………………………………………………………………………………………………. 23
    Ejecución de un script desde la terminal …………………………………………………………… 25
    Antes de continuar considera lo siguiente ………………………………………………………… 27
    CAPÍTULO 4. INTRODUCCIÓN A LA POO ………………………………………………………. 31
    La POO en palabras simples …………………………………………………………………………….. 31
    CAPÍTULO 5. UTILIZANDO OBJETOS EN RUBY …………………………………………. 35
    Los objetos de Ruby ……………………………………………………………………………………….. 35
    Creación de un objeto en Ruby ……………………………………………………………………. 36
    Trabajando con los métodos de Ruby …………………………………………………………… 37
    Valores de retorno y paso de argumentos en los métodos ………………………….. 38
    Paso de argumentos a los métodos ………………………………………………………….. 39
    La biblioteca de clases de Ruby …………………………………………………………………… 42
    VARIABLES Y OBJETOS ……………………………………………………………………………. 47
    CAPÍTULO 6. LAS VARIABLES ……………………………………………………………………… 49
    Asignación de objetos a las variables ……………………………………………………………….. 49
    Un nombre correcto para mi variable ………………………………………………………………. 50
    ¿Qué es el tipado dinámico? …………………………………………………………………………… 51
    Asignaciones abreviadas ………………………………………………………………………………… 52
    Asignación del valor de una variable a otra ………………………………………………………. 53
    CAPÍTULO 7. LOS NÚMEROS ………………………………………………………………………. 57
    ¿Qué son los números y de dónde provienen? ………………………………………………….. 57
    Números enteros ………………………………………………………………………………………….. 58
    Sistemas numéricos …………………………………………………………………………………… 59
    Algunos métodos de la clase Integer ……………………………………………………………. 60
    Números flotantes ………………………………………………………………………………………… 62
    Truncamiento y redondeo ………………………………………………………………………….. 62
    Algunos métodos heredados de Numeric …………………………………………………………. 64
    Operaciones con números ……………………………………………………………………………… 64
    Operadores aritméticos y algunos ejemplos sencillos …………………………………….. 64
    Evaluación de expresiones con varios operadores involucrados ………………………. 67
    comparaciones de números ……………………………………………………………………………. 69
    Operadores relacionales o de comparación ………………………………………………….. 69
    Aplicación de los operadores relacionales …………………………………………………….. 70
    Números aleatorios y rangos ………………………………………………………………………….. 70
    CAPÍTULO 8. CADENAS DE CARACTERES ………………………………………………………. 75
    Generalidades de las cadenas …………………………………………………………………………. 75
    Algunos métodos para empezar ………………………………………………………………….. 76
    Transformación de los caracteres alfabéticos ……………………………………………….. 78
    Comparación de cadenas ……………………………………………………………………………. 79
    Concatenación ………………………………………………………………………………………….. 80
    Búsqueda de caracteres ……………………………………………………………………………… 82
    Obtención de caracteres y subcadenas ………………………………………………………… 82
    Inserción en una cadena …………………………………………………………………………….. 83
    Reemplazo de caracteres ……………………………………………………………………………. 84
    Eliminación de fragmentos de una cadena ……………………………………………………. 85
    Las particularidades de cada comilla ………………………………………………………………… 87
    Comillas dobles …………………………………………………………………………………………. 87
    Las secuencias de escape ………………………………………………………………………… 87
    La interpolación …………………………………………………………………………………….. 89
    Comillas simples ………………………………………………………………………………………… 90
    Los únicos caracteres especiales ……………………………………………………………… 91
    Percent strings (%Q y %q) ………………………………………………………………………………. 91
    here documents o heredocs …………………………………………………………………………… 92
    CAPÍTULO 9. FECHAS Y HORAS …………………………………………………………………… 95
    La clase Time …………………………………………………………………………………………………. 95
    La clase Date …………………………………………………………………………………………………. 98
    DateTime, una subclase de Date ………………………………………………………………….. 99
    Formateo de fechas y horas ………………………………………………………………………….. 100
    Comparación de fechas y horas ……………………………………………………………………… 102
    CAPÍTULO 10. COLECCIONES DE OBJETOS …………………………………………………… 105
    Los arreglos …………………………………………………………………………………………………. 105
    Creación de un arreglo ……………………………………………………………………………… 105
    Una miscelánea de métodos básicos ………………………………………………………….. 107
    ¿Cómo extraer elementos de un arreglo? …………………………………………………… 110
    Diversas maneras de agregar más elementos a un arreglo ……………………………. 112
    Reducción de un arreglo …………………………………………………………………………… 114
    Operaciones de arreglos …………………………………………………………………………… 116
    Operación resta ……………………………………………………………………………………. 118
    Operación unión …………………………………………………………………………………… 119
    Operación intersección …………………………………………………………………………. 120
    Concatenación de arreglos …………………………………………………………………….. 120
    Los Hashes ………………………………………………………………………………………………….. 121
    Creación de un hash …………………………………………………………………………………. 121
    ¿Qué son los símbolos? …………………………………………………………………………….. 122
    Algunos métodos similares a los de las cadenas ……………………………………….. 123
    Pregúntale al hash acerca de… …………………………………………………………………… 124
    Obtención de claves y valores ……………………………………………………………………. 126
    Obtención de una sola clave o valor ……………………………………………………….. 127
    Obtención de varias claves o valores ………………………………………………………. 127
    Modificación de los hashes ……………………………………………………………………….. 128
    Inserciones de clave-valor y sustitución de valores …………………………………… 128
    Combinación de hashes ………………………………………………………………………… 129
    Eliminación a través de las claves …………………………………………………………… 130
    CAPÍTULO 11. CONVERSIONES DE DATOS …………………………………………………… 131
    Conversiones frecuentes ………………………………………………………………………………. 131
    Conversiones de números sin dejar de ser números …………………………………….. 131
    De texto a números ………………………………………………………………………………….. 132
    Entre colecciones de objetos …………………………………………………………………….. 133
    Cualquier otro objeto a texto …………………………………………………………………….. 134
    ESTRUCTURAS DE CONTROL ………………………………………………………………….. 135
    CAPÍTULO 12. CONDICIONES ……………………………………………………………………. 137
    Expresiones …………………………………………………………………………………………………. 137
    Expresión if ……………………………………………………………………………………………… 137
    Expresión if – else …………………………………………………………………………………. 138
    expresión elsif ……………………………………………………………………………………… 141
    Expresión case …………………………………………………………………………………………. 143
    case como un if-elsif ……………………………………………………………………………… 144
    Case con un argumento ………………………………………………………………………… 145
    Expresión unless ……………………………………………………………………………………… 148
    if y unless como modificadores ……………………………………………………………………… 149
    Condicionales y operadores lógicos ……………………………………………………………….. 150
    Operadores lógicos ………………………………………………………………………………….. 150
    Operador ! ………………………………………………………………………………………….. 151
    Operador && ………………………………………………………………………………………. 152
    Operador || ………………………………………………………………………………………… 153
    Más de un operador lógico en una expresión ……………………………………………… 154
    Ahora todo junto …………………………………………………………………………………….. 155
    Un último ejemplo y tarea para la casa …………………………………………………………… 156
    CAPÍTULO 13. CICLOS E ITERADORES …………………………………………………………. 159
    Ciclos …………………………………………………………………………………………………………. 159
    Ciclo for ………………………………………………………………………………………………….. 159
    Ciclo while ………………………………………………………………………………………………. 162
    Ciclo until ……………………………………………………………………………………………….. 163
    Usando while y until como modificadores …………………………………………………… 164
    Hacer al menos una repetición con while o until se cumpla o no la condición 164
    Declaraciones break, next y redo ……………………………………………………………….. 168
    Iteradores …………………………………………………………………………………………………… 170
    Sobre los iteradores en general …………………………………………………………………. 170
    Iteradores times, upto y downto ……………………………………………………………….. 171
    Las cadenas también se iteran con estilo ……………………………………………………. 173
    Iteración de un arreglo …………………………………………………………………………….. 173
    Iteración de un hash ………………………………………………………………………………… 178
    LA POO A DETALLE ……………………………………………………………………………….. 181
    CAPÍTULO 14. LOS MÉTODOS …………………………………………………………………… 183
    Sobre los métodos en general ……………………………………………………………………….. 183
    Métodos con argumentos …………………………………………………………………………….. 185
    Argumentos posicionales con valores por defecto ……………………………………….. 187
    Argumentos de palabras clave (no posicionales) ………………………………………….. 188
    Argumentos Array/Hash …………………………………………………………………………… 190
    Los métodos y los bloques de código ……………………………………………………………… 193
    Algunos aspectos de los bloques ……………………………………………………………….. 193
    De bloques a objetos Proc y viceversa ………………………………………………………… 196
    Recursividad ……………………………………………………………………………………………….. 199
    CAPÍTULO 15. CLASES Y OBJETOS ……………………………………………………………… 203
    Diseño de clases ………………………………………………………………………………………….. 203
    Acciones (métodos) que realizarán los objetos ……………………………………………. 204
    Las características (atributos) que tendrán los objetos …………………………………. 205
    Inicialización de atributos ……………………………………………………………………… 207
    Todo junto ………………………………………………………………………………………………. 210
    Herencia de clases ……………………………………………………………………………………….. 212
    Sobrescritura de métodos ………………………………………………………………………… 213
    De lo general a lo específico ………………………………………………………………………. 214
    La herencia con las clases de Ruby ……………………………………………………………… 217
    La visibilidad de los métodos …………………………………………………………………………. 217
    La clase Singleton, los métodos de clase y las variables de clase ………………………… 222
    CAPÍTULO 16. LOS MÓDULOS …………………………………………………………………… 227
    ¿Qué es un módulo, para qué sirve y cómo se define? ……………………………………… 227
    Los módulos como namespaces …………………………………………………………………….. 228
    Los mixins …………………………………………………………………………………………………… 231
    Módulos en diferentes archivos …………………………………………………………………. 233
    Explicación del scope de las constantes en módulos / clases …………………………….. 234
    CUENTAME MÁS SOBRE RUBY ……………………………………………………………….. 237
    CAPÍTULO 17. LAS EXPRESIONES REGULARES …………………………………………. 239
    Perdiéndole el miedo a las expresiones regulares ……………………………………………. 239
    Construcción de Regex para números telefónicos con 10 dÍgitos (paso a paso) ……. 242
    ¿Dónde más se usan los regex? ……………………………………………………………………… 245
    Tablas de ayuda …………………………………………………………………………………………… 245
    CAPÍTULO 18. ARCHIVOS Y CARPETAS ……………………………………………………….. 247
    Archivos ……………………………………………………………………………………………………… 247
    Permisos en archivos de texto plano ………………………………………………………….. 247
    Permiso de solo lectura …………………………………………………………………………. 248
    Permiso de solo escritura ………………………………………………………………………. 250
    Permiso de lectura y escritura ……………………………………………………………….. 251
    Directorios ………………………………………………………………………………………………….. 252
    Creación de directorios …………………………………………………………………………….. 252
    Obtención de la ruta, nombre y extensión de un archivo ………………………………. 255
    Verificación y búsqueda ……………………………………………………………………………. 256
    CAPÍTULO 19. EXCEPCIONES …………………………………………………………………….. 259
    ¿Qué es una excepción en Ruby? …………………………………………………………………… 259
    Otros tipos de excepciones que ocurren frecuentemente …………………………….. 261
    Manejo de excepciones ………………………………………………………………………………… 263
    ¿Cómo evitar que un programa termine antes? …………………………………………… 263
    El método raise: Lanzar excepciones intencionadamente ……………………………… 264
    Dos elementos más en el bloque: else y ensure …………………………………………… 266
    PARTE II RUBY ON RAILS
    FUNDAMENTOS ………………………………………………………………………………….. 267
    CAPÍTULO 20. INTRODUCCIÓN A RUBY ON RAILS ………………………………………… 269
    ¿Qué es Ruby on Rails? …………………………………………………………………………………. 269
    La fIlosofía Rails …………………………………………………………………………………………… 270
    CAPÍTULO 21. FUNDAMENTOS DEL DESARROLLO WEB …………………………………. 269
    ¿Cómo funciona una aplicación web? …………………………………………………………….. 273
    ¿Qué es un servidor web? …………………………………………………………………………….. 275
    El protocolo de comunicación http ……………………………………………………………….. 276
    Peticiones y respuestas http …………………………………………………………………….. 277
    Métodos de peticiones http …………………………………………………………………….. 279
    Código del lado del cliente vs código del lado del servidor ……………………………….. 281
    CAPÍTULO 22. PRIMER PROYECTO EN RUBY ON RAILS ………………………………….. 285
    Creación de un proyecto en Ruby on Rails ………………………………………………………. 285
    Ejecución del servidor local ………………………………………………………………………. 291
    Arquitectura MVC en Ruby on Rails ……………………………………………………………….. 292
    Solución al bug con usuarios de Windows ………………………………………………………. 294
    FUNDAMENTOS DEL TRABAJO EN ROR ……………………………………………………. 297
    CAPÍTULO 23.PRIMEROS PASOS EN RUBY ON RAILS …………………………………….. 299
    Creación de un controlador ………………………………………………………………………….. 299
    ¿Qué acabo de crear? ………………………………………………………………………………. 301
    Proceso de una petición en Ruby on Rails …………………………………………………… 303
    Comunicación entre la vista y el controlador ………………………………………………. 310
    Expresiones y scriptlets en las vistas ………………………………………………………. 311
    Incluyamos un modelo ……………………………………………………………………………… 314
    SQLite …………………………………………………………………………………………………. 315
    Configuración de la base de datos ………………………………………………………….. 318
    Creación de un módelo en Ruby on Rails ………………………………………………… 320
    Ejecutando la migración ……………………………………………………………………….. 323
    Uso de la consola de Rails ……………………………………………………………………… 327
    Juntemos todo ………………………………………………………………………………………… 335
    Estructura de un proyecto Ruby on Rails ………………………………………………………… 338
    El archivo Gemfile ……………………………………………………………………………………. 341
    MODELOS EN PROFUNDIDAD ………………………………………………………………… 345
    CAPÍTULO 24. CREACIÓN DE MODELOS EN RUBY ON RAILS ………………… 347
    Introducción ……………………………………………………………………………………………….. 347
    Generación de modelos ……………………………………………………………………………….. 348
    Usos avanzados del generador de modelos ………………………………………………… 350
    Preparación de un nuevo proyecto en Rails …………………………………………………….. 352
    CAPÍTULO 25. ACCIONES CON MODELOS ……………………………………………………. 355
    Acciones CRUD: Crear ………………………………………………………………………………….. 355
    El archivo seeds.rb …………………………………………………………………………………… 357
    Acciones CRUD: Actualizar ……………………………………………………………………………. 358
    Acciones CRUD: Eliminar ………………………………………………………………………………. 359
    Acciones CRUD: Leer ……………………………………………………………………………………. 360
    Métodos para obtener una instancia de modelo …………………………………………. 360
    Métodos de búsqueda dinámicos ………………………………………………………………. 363
    Métodos para obtener colecciones de instancias de modelo
    y otros métodos más ………………………………………………………………………………. 364
    Utilizando not y or ……………………………………………………………………………….. 368
    Ordenamiento de datos ………………………………………………………………………… 368
    Selección específica de campos ……………………………………………………………… 369
    Buscar o construir un nuevo objeto ………………………………………………………… 371
    Realizar búsquedas mediante SQL nativo ………………………………………………… 372
    Obtener datos específicos de una consulta ……………………………………………… 373
    Los cálculos en Active Record ……………………………………………………………………. 374
    Contar registros ……………………………………………………………………………………. 375
    Agregando columna edad a los usuarios …………………………………………………. 377
    Estableciendo valores aleatorios al campo edad ………………………………………. 380
    Obtener el mínimo, máximo, la suma y el promedio …………………………………. 381
    CAPÍTULO 26. ASOCIACIÓN DE MODELOS ………………………………………………….. 383
    Asociaciones en Active Record ………………………………………………………………………. 383
    Creando los modelos Book y Borrowing ……………………………………………………… 383
    Tipos de relaciones en los modelos…………………………………………………………….. 388
    Asociación belongs_to ………………………………………………………………………….. 391
    Asociación has_one ………………………………………………………………………………. 392
    Asociación has_many ……………………………………………………………………………. 393
    Asociación has_many :through ………………………………………………………………. 393
    Asociación has_one :through …………………………………………………………………. 395
    Asociación has_and_belongs_to_many …………………………………………………… 395
    Métodos añadidos a los modelos para manipulación de asociaciones ……………. 398
    Métodos automáticamente añadidos en asociaciones has_many, has_many
    :through y has_and_belongs_to_many …………………………………………………. 399
    Métodos añadidos en asociaciones has_one y belongs_to ………………………… 401
    Operaciones con relaciones ………………………………………………………………………. 403
    Crear asociaciones entre instancias de modelos ………………………………………. 403
    Operaciones de selección en asociaciones ………………………………………………. 414
    Crear métodos para manipular asociaciones has_many ……………………………. 418
    CAPÍTULO 27. JOINS ……………………………………………………………………………….. 427
    Uniones de tablas ………………………………………………………………………………………… 427
    Uniones mediante el método joins …………………………………………………………….. 429
    Uniones mediante el método left_outer_join ……………………………………………… 433
    El uso de includes …………………………………………………………………………………….. 435
    VISTAS Y CONTROLADORES …………………………………………………………………… 439
    CAPÍTULO 28. LOS CONTROLADORES DE RAILS ……………………………………………. 441
    Generalidades sobre los controladores …………………………………………………………… 441
    Creación de controladores ……………………………………………………………………………. 442
    Convenciones en los controladores ………………………………………………………………… 448
    Conceptos importantes sobres los controladores …………………………………………….. 449
    Las vistas y ActionView ………

    Ir a Arriba