Inicio/Profesional/TICs y Computación/Programación/RUBY ON RAILS – Aprende a crear aplicaciones web desde cero

RUBY ON RAILS – Aprende a crear aplicaciones web desde cero

$1,028

Consultar disponibilidad

Autor: VÁZQUEZ OLIVARES, Javier Arturo; LORENZO MARTÍNEZ, Daniel

Páginas:  704

Año:  2020

Edición:  1

Editorial:  Alfaomega – RC

Apoyos: Web

Presentación:

E-Book:  https://www.alfaomegaeditor.com.mx/default/ruby-on-rails-aprende-a-crear-aplicaciones-web-desde-cero-9857.html

Nivel:  

Encuadernación: Rustica

Consultar disponibilidad

ISBN: 9786075386201 Categorías: ,

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 ………

Información adicional

Peso 1.4 kg
Dimensiones 23 × 17 × 4 cm

Título

Ir a Arriba