- Editorial:
- RC LIBROS
- Año de edición:
- 2013
- Materia:
- Ciencia - STEM
- ISBN:
- 978-84-941272-7-4
- Páginas:
- 478
- Encuadernación:
- TAPA BLANDA
- Colección:
- RAILS
RURBY ON RAILS
DESARROLLO PRÁCTICO DE APLICACIONES WEB
PONCE MORENO, SANTIAGO
Ruby es un lenguaje de programación orientado a objetos moderno, dinámico y muy potente, pues combina la elegancia del Smalltalk, la facilidad de Python y la practicidad de Perl.
Rails es un framework (infraestructura digital) de código abierto para el desarrollo de aplicaciones web que proporciona una arquitectura Modelo-Vista-Controlador (MVC) para la creación y generación del código.
Ruby on Rails, gracias a los principios básicos en los que se fundamenta como Don¿t Repeat Yourself (DRY), Convención sobre configuración (CoC) o Pruebas unitarias y funcionales, permite a los desarrolladores construir, de forma sencilla y rápida, complejas y sofisticadas aplicaciones web: Twitter, Scribd y LinkedIn están basadas en Ruby on Rails.
Con la ayuda de este libro, el lector aprenderá paso a paso y con detalle cómo funciona Ruby on Rails (RoR), y gracias a los 4 bloques en que está dividido el contenido, podrá crear aplicaciones web modernas, actuales y profesionales:
Lenguaje de programación Ruby.
Introducción a Ruby on Rails.
Aplicaciones web con bases de datos.
Realización de una red social.
Escrito de una manera clara y muy detallada, cada explicación va acompañada de numerosos ejemplos prácticos, lo que permitirá una mejor comprensión. Además, como contenido adicional, el lector podrá acceder a un completo vídeo-tutorial con el que perfeccionará el aprendizaje de esta potente infraestructura digital.
PRÓLOGO...........................................................................................................XIII
INTRODUCCIÓN...........................................................................................................XV
PARTE I. CURSO PRÁCTICO DE RUBY...........................................................................................................1
CAPÍTULO 1. INSTALACIÓN DE RUBY ON RAILS...........................................................................................................3
INTRODUCCIÓN...........................................................................................................3
INSTALACIÓN EN WINDOWS...........................................................................................................5
INSTALACIÓN EN MAC OS X...........................................................................................................8
INSTALACIÓN EN LINUX...........................................................................................................10
EDITORES O IDE´S...........................................................................................................12
Listado de Editores e IDE´S...........................................................................................................12
Editor Sublime Text 2...........................................................................................................13
CAPÍTULO 2. LENGUAJE RUBY...........................................................................................................15
INTRODUCCIÓN...........................................................................................................15
PARADIGMA DE LA PROGRAMACIÓN POO...........................................................................................................16
CARACTERÍSTICAS PRINCIPALES...........................................................................................................18
RUBY INTERACTIVO...........................................................................................................19
¿Cómo accedemos a irb?...........................................................................................................20
Probando IRB...........................................................................................................22
Ejecución de programas...........................................................................................................22
DOCUMENTACIÓN RDOC...........................................................................................................23
VARIABLES...........................................................................................................24
ENTRADA Y SALIDA DE DATOS...........................................................................................................25
OPERADORES...........................................................................................................26
Aritméticos...........................................................................................................27
Comparación...........................................................................................................27
Asignación...........................................................................................................28
Operadores lógicos...........................................................................................................29
Operador ternario...........................................................................................................30
Ejercicios...........................................................................................................30
ESTRUCTURAS DE CONTROL...........................................................................................................31
Condicionales...........................................................................................................31
Bucles...........................................................................................................33
Ejercicios...........................................................................................................35
MATRICES...........................................................................................................35
Declaración de matrices ...........................................................................................................35
Acceso a elementos...........................................................................................................36
Añadir elementos...........................................................................................................36
Recorrer elementos...........................................................................................................37
Matrices multidimensionales...........................................................................................................37
Ejercicios...........................................................................................................38
HASH........................................................................................................... 39
Declaración Hash...........................................................................................................39
Acceso a elemento...........................................................................................................40
Añadir elementos........................................................................................................... 41
Recorrer elementos...........................................................................................................41
Ejercicios...........................................................................................................42
CAPÍTULO 3. MÉTODOS, BLOQUES, SÍMBOLOS Y EXPRESIONES REGULARES...........................................................................................................43
INTRODUCCIÓN...........................................................................................................43
MÉTODOS...........................................................................................................43
Sintaxis...........................................................................................................44
Llamada al método y sus argumentos...........................................................................................................45
Métodos bang...........................................................................................................47
Métodos boolean...........................................................................................................47
SÍMBOLOS...........................................................................................................48
RANGOS...........................................................................................................49
BLOQUES...........................................................................................................49
Variables...........................................................................................................50
Ejecución y funcionamiento...........................................................................................................50
Bloques por argumentos...........................................................................................................52
EXPRESIONES REGULARES...........................................................................................................54
Resumen...........................................................................................................56
Ejercicios...........................................................................................................56
CAPÍTULO 4. CLASES...........................................................................................................59
INTRODUCCIÓN...........................................................................................................59
Métodos Inicializadores........................................................................................................... 61
Accesores...........................................................................................................62
Métodos de instancia...........................................................................................................64
Métodos de clase........................................................................................................... 67
Métodos Singleton...........................................................................................................67
Renombrar métodos...........................................................................................................68
Visibilidad de los métodos...........................................................................................................69
Tipos de variables...........................................................................................................71
Resumen...........................................................................................................73
Ejercicios...........................................................................................................73
CAPÍTULO 5. HERENCIA...........................................................................................................75
INTRODUCCIÓN...........................................................................................................75
Sobrescritura de métodos...........................................................................................................78
MÓDULOS...........................................................................................................79
Métodos de instancia y de módulos........................................................................................................... 80
Ejemplos...........................................................................................................81
Namespace (Espacio de nombres)...........................................................................................................84
Encapsulando módulos ...........................................................................................................85
Módulos mixins...........................................................................................................87
Resumen...........................................................................................................87
Ejercicios...........................................................................................................88
CAPÍTULO 6. EXCEPCIONES, DEPURACIÓN Y PRUEBAS UNITARIAS...........................................................................................................89
MANEJO DE EXCEPCIONES...........................................................................................................89
Mensajes...........................................................................................................93
Excepciones personalizadas...........................................................................................................95
DEPURACIÓN...........................................................................................................95
PRUEBAS UNITARIAS...........................................................................................................97
Resumen...........................................................................................................100
CAPÍTULO 7. API RUBY...........................................................................................................101
INTRODUCCIÓN...........................................................................................................101
CLASE NUMÉRICA ...........................................................................................................107
Ejercicios...........................................................................................................112
CLASE RANGO...........................................................................................................113
CLASE STRING...........................................................................................................115
Ejercicios...........................................................................................................122
CLASE ARRAY...........................................................................................................122
Ejercicios...........................................................................................................129
CLASE HASH...........................................................................................................129
CLASE RANDOM...........................................................................................................133
PARTE II. RAILS: ENTORNO DE TRABAJO...........................................................................................................135
CAPÍTULO 8. FRAMEWORKS RAILS...........................................................................................................137
INTRODUCCIÓN...........................................................................................................137
ESTRUCTURA RAILS...........................................................................................................141
App...........................................................................................................141
Config...........................................................................................................143
DB...........................................................................................................144
Public...........................................................................................................145
Test...........................................................................................................145
MI PRIMER PROYECTO...........................................................................................................145
Generar controlador-vista...........................................................................................................147
Plantillas dinámicas...........................................................................................................150
Resumen...........................................................................................................151
Ejercicios...........................................................................................................152
Novedades Rails 4.0...........................................................................................................152
CAPÍTULO 9. CONTROLADORES...........................................................................................................153
INTRODUCCIÓN...........................................................................................................153
Respuestas en varios formatos...........................................................................................................154
Mostrar plantillas...........................................................................................................156
Redirección...........................................................................................................159
Redirección externa...........................................................................................................159
Redirección en cadena...........................................................................................................160
Regresar atrás...........................................................................................................160
Parámetros...........................................................................................................161
Variables del entorno...........................................................................................................163
Mensajes entre métodos...........................................................................................................167
Resumen...........................................................................................................169
Ejercicios...........................................................................................................169
CAPÍTULO 10. VISTAS...........................................................................................................171
INTRODUCCIÓN...........................................................................................................171
Plantilla principal - layouts...........................................................................................................171
Crear plantilla...........................................................................................................173
Enlaces...........................................................................................................174
Enlaces condicionales...........................................................................................................178
Enlaces para menús...........................................................................................................179
Correo electrónico...........................................................................................................180
Botones...........................................................................................................181
Multimedia...........................................................................................................183
Resumen...........................................................................................................185
Ejercicios...........................................................................................................185
CAPÍTULO 11. RUTAS...........................................................................................................187
INTRODUCCIÓN...........................................................................................................187
FUNCIONAMIENTO...........................................................................................................188
Parámetros en url ...........................................................................................................191
Redirección url...........................................................................................................192
Limitaciones...........................................................................................................193
Globales...........................................................................................................194
Consola Rails...........................................................................................................195
Resumen...........................................................................................................197
Ejercicios...........................................................................................................197
Novedades rails 4.0...........................................................................................................197
CAPÍTULO 12. FORMULARIOS ...........................................................................................................199
INTRODUCCIÓN...........................................................................................................199
FORM_TAG CON POST...........................................................................................................200
FORM_TAG CON GET...........................................................................................................203
CAMPOS...........................................................................................................204
SUBIR ARCHIVOS...........................................................................................................210
Resumen...........................................................................................................212
EjercicioS...........................................................................................................212
CAPÍTULO 13. HOJAS DE ESTILO...........................................................................................................213
INTRODUCCIÓN...........................................................................................................213
PROYECTO CON CSS...........................................................................................................214
FRAMEWORK CSS........................................................................................................... 219
Resumen...........................................................................................................229
Ejercicios...........................................................................................................229
CAPÍTULO 14. HELPERS, PLANTILLAS PARCIALES Y BLOQUES DINÁMICOS...........................................................................................................231
INTRODUCCIÓN...........................................................................................................231
PLANTILLAS PARCIALES...........................................................................................................234
BLOQUES DINÁMICOS...........................................................................................................238
Resumen...........................................................................................................241
CAPÍTULO 15. CORREO ELECTRÓNICO-EMAIL...........................................................................................................243
INTRODUCCIÓN...........................................................................................................243
Estructura y funcionamiento...........................................................................................................243
Configuración...........................................................................................................244
NUESTRO PRIMER CORREO...........................................................................................................247
Configuración de correo electrónico...........................................................................................................247
Generar estructura...........................................................................................................248
Enviar correo...........................................................................................................249
Método mail...........................................................................................................251
EnvÍo y recepción de parámetros...........................................................................................................253
Plantillas principales...........................................................................................................256
Formatos de correos electrónicos...........................................................................................................256
Interceptar correos...........................................................................................................257
Resumen...........................................................................................................259
Ejercicios...........................................................................................................259
CAPÍTULO 16. PROGRAMAR EN LA NUBE...........................................................................................................261
INTRODUCCIÓN...........................................................................................................261
GIT...........................................................................................................262
SUBIR NUESTRO PROYECTO...........................................................................................................264
HEROKU...........................................................................................................269
Instalación...........................................................................................................270
Configuración...........................................................................................................271
Vincular aplicación + heroku...........................................................................................................272
Subir la aplicación...........................................................................................................273
Resumen...........................................................................................................274
CAPÍTULO 17. CONTROLADORES Y VISTAS...........................................................................................................275
INTRODUCCIÓN...........................................................................................................275
LOGGER...........................................................................................................275
FILTROS...........................................................................................................276
COOKIES...........................................................................................................279
Más operaciones con cookies...........................................................................................................281
Navegadores...........................................................................................................282
ENVIAR ARCHIVOS...........................................................................................................283
Send_data...........................................................................................................283
Send_file...........................................................................................................284
COMPOSICIÓN DE URL...........................................................................................................284
FORMATO YAML...........................................................................................................287
FORMATO JSON...........................................................................................................288
BUNDLER...........................................................................................................289
Resumen...........................................................................................................291
Novedades Rails 4.0...........................................................................................................291
Proyecto con controladores y vistas ...........................................................................................................292
PARTE III. MODELOS...........................................................................................................293
CAPÍTULO 18. ACTIVE RECORD...........................................................................................................295
INTRODUCCIÓN...........................................................................................................295
CONFIGURACIÓN DE BASE DE DATOS...........................................................................................................298
Conectar con DB Mysql...........................................................................................................300
Conectar con PostgreSQL...........................................................................................................302
Conectar con Oracle...........................................................................................................303
Conectar con frontbase........................................................................................................... 303
Conectar con IBM DB...........................................................................................................304
Visualizador BBDD SQLite3...........................................................................................................305
NUESTRO PRIMER MODELO...........................................................................................................305
Resumen de convenciones...........................................................................................................309
Resumen...........................................................................................................310
Novedades Rails 4.0...........................................................................................................310
CAPÍTULO 19. MIGRACIONES...........................................................................................................313
INTRODUCCIÓN...........................................................................................................313
CREACIÓN Y EJECUCIÓN...........................................................................................................314
CLASES ACTIVERECORD::MIGRATION...........................................................................................................316
Generar migraciones...........................................................................................................321
Métodos up y down...........................................................................................................323
Control de versiones...........................................................................................................324
Resumen...........................................................................................................325
CAPÍTULO 20. ACTIVE RECORD II...........................................................................................................327
INTRODUCCIÓN...........................................................................................................327
OPERACIONES CRUD DESDE LA CONSOLA...........................................................................................................328
Crear registros...........................................................................................................328
Leer registros...........................................................................................................330
Métodos Scope...........................................................................................................339
Actualizar registros...........................................................................................................340
Borrar registros...........................................................................................................341
DATOS DE PRUEBA...........................................................................................................342
PROGRAMAR EN ESPAÑOL...........................................................................................................343
Resumen...........................................................................................................345
Novedades Rails 4.0...........................................................................................................346
CAPÍTULO 21. FORMULARIOS FORM_FOR...........................................................................................................349
INTRODUCCIÓN...........................................................................................................349
Funcionamiento...........................................................................................................350
CAMPOS...........................................................................................................353
Ejercicios...........................................................................................................355
CAPÍTULO 22. ACTIVE RECORD III...........................................................................................................357
INTRODUCCIÓN A SCAFFOLD ..........................