Post on 03-Jul-2015
1. QUE ES RUBY?
Ruby es una dinámica, reflexiva, de uso general del lenguaje de programación
orientado a objetos, que combina la sintaxis inspirada en Perl con Smalltalk como
características. Ruby se originó en Japón a mediados de la década de 1990 y fue
desarrollado y diseñado por Yukihiro "Matz" Matsumoto. Fue influenciado
principalmente por Perl, Smalltalk, Eiffel, y Lisp.
Ruby soporta múltiples paradigmas de programación, incluyendo funcional, orientado
a objetos, imperativo y reflexivo. También cuenta con un tipo dinámico del sistema y
automáticamente la gestión de memoria, por lo que es similar en varios aspectos a
Python, Perl, Lisp, Dylan, Pike, y CLU.
2. QUE ES RAILS?
Ruby on Rails, también conocido como RoR o Rails es un framework de aplicaciones
web de código abierto escrito en el lenguaje de programación Ruby, siguiendo el
paradigma de la arquitectura Modelo Vista Controlador (MVC). Trata de combinar la
simplicidad con la posibilidad de desarrollar aplicaciones del mundo real escribiendo
menos código que con otros frameworks y con un mínimo de configuración. El
lenguaje de programación Ruby permite la metaprogramación, de la cual Rails hace
uso, lo que resulta en una sintaxis que muchos de sus usuarios encuentran muy
legible. Rails se distribuye a través de RubyGems, que es el formato oficial de paquete
y canal de distribución de bibliotecas y aplicaciones Ruby.
3. ARQUITECTURA MVC:
Modelo Vista Controlador (MVC) es un patrón de arquitectura de software que separa
los datos de una aplicación, la interfaz de usuario, y la lógica de control en tres
componentes distintos. El patrón de llamada y retorno MVC (según CMU), se ve
frecuentemente en aplicaciones web, donde la vista es la página HTML y el código que
provee de datos dinámicos a la página. El modelo es el Sistema de Gestión de Base de
Datos y la Lógica de negocio, y el controlador es el responsable de recibir los eventos
de entrada desde la vista.
Modelo: Esta es la representación específica de la información con la cual el
sistema opera. En resumen, el modelo se limita a lo relativo de la vista y su
controlador facilitando las presentaciones visuales complejas. El sistema
también puede operar con más datos no relativos a la presentación, haciendo
uso integrado de otras lógicas de negocio y de datos afines con el sistema
modelado.
Vista: Este presenta el modelo en un formato adecuado para interactuar,
usualmente la interfaz de usuario.
Controlador: Este responde a eventos, usualmente acciones del usuario, e
invoca peticiones al modelo y, probablemente, a la vista.
Un diagrama sencillo que muestra la relación entre el modelo, la vista y el controlador.
Nota: las líneas sólidas indican una asociación directa, y las punteadas una indirecta
(por ejemplo, patrón Observer).
4. QUE ES UN IDE (PROGRAMACION)
Un entorno de desarrollo integrado (en inglés integrated development environment)
es un programa informático compuesto por un conjunto de herramientas de
programación.
Puede dedicarse en exclusiva a un sólo lenguaje de programación o bien, poder
utilizarse para varios.
Un IDE es un entorno de programación que ha sido empaquetado como un programa
de aplicación, es decir, consiste en un editor de código, un compilador, un depurador y
un constructor de interfaz gráfica (GUI). Los IDEs pueden ser aplicaciones por sí solas o
pueden ser parte de aplicaciones existentes. El lenguaje Visual Basic, por ejemplo,
puede ser usado dentro de las aplicaciones de Microsoft Office, lo que hace posible
escribir sentencias Visual Basic en forma de macros para Microsoft Word.
Los IDE proveen un marco de trabajo amigable para la mayoría de los lenguajes de
programación tales como C++, Python, Java, C#, Delphi, Visual Basic, etc. En algunos
lenguajes, un IDE puede funcionar como un sistema en tiempo de ejecución, en donde
se permite utilizar el lenguaje de programación en forma interactiva, sin necesidad de
trabajo orientado a archivos de texto, como es el caso de Smalltalk u Objective-C.
Es posible que un mismo IDE pueda funcionar con varios lenguajes de programación.
Este es el caso de Eclipse, al que mediante plugins se le puede añadir soporte de
lenguajes adicionales.
5. FRAMEWORK:
En el desarrollo de software, un framework es una estructura conceptual y tecnológica
de soporte definida, normalmente con artefactos o módulos de software concretos,
con base en la cual otro proyecto de software puede ser organizado y desarrollado.
Típicamente, puede incluir soporte de programas, bibliotecas y un lenguaje
interpretado entre otros programas para ayudar a desarrollar y unir los diferentes
componentes de un proyecto.
Representa una arquitectura de software que modela las relaciones generales de las
entidades del dominio. Provee una estructura y una metodología de trabajo la cual
extiende o utiliza las aplicaciones del dominio.
6. GEM:
Graphics Execution Manager (GEM, en español: administrador de ejecución de
gráficos) es una unidad de manejo de memoria moderna, especializada para uso en
controladores de dispositivo para chipsets gráficos. Este gestiona la memoria de
gráficos, controla el contexto de ejecución, y administra el entorno Non-Uniform
Memory Access (NUMA) en los chipsets gráficos modernos. Múltiples procesos pueden
compartir recursos de dispositivos gráficos sin la necesidad de almacenar y restaurar el
estado completo de la tarjeta gráfica entre cambios. El GEM se asegura de que no
existan conflictos en la compartición de datos entre aplicaciones, administrando la
sincronización de la memoria. Este utiliza muchos subsistemas del kernel existentes
para su operación, y por lo tanto el tamaño de su código es muy modesto.
Está incluido en el kernel Linux desde la versión 2.6.28. También está diseñado para
ser compatible con los kernels de los principales sistemas BSD activos.
El anuncio original de GEM incluyó documentación sobre su API
7. CLASE:
En la programación orientada a objetos, una clase es una construcción que se utiliza
como un modelo (o plantilla) para crear objetos de ese tipo. El modelo describe el
estado y el comportamiento que todos los objetos de la clase comparten. Un objeto de
una determinada clase se denomina una instancia de la clase. La clase que contiene (y
se utilizó para crear) esa instancia se puede considerar como del tipo de ese objeto,
por ejemplo, una instancia del objeto de la clase "Personas" sería del tipo "Personas".
Una clase por lo general representa un sustantivo, como una persona, lugar o
(posiblemente bastante abstracta) cosa - es el modelo de un concepto dentro de un
programa de computadora. Fundamentalmente, encapsula el estado y el
comportamiento del concepto que representa. Encapsula el estado a través de
marcadores de datos llamados atributos (o variables miembro o variables de
instancia), encapsula el comportamiento a través de secciones de código reutilizables
llamados métodos.
Más técnicamente, una clase es un conjunto coherente que consiste en un tipo
particular de metadatos. Una clase tiene tanto una interfaz y una estructura. La
interfaz describe cómo interactuar con la clase y sus instancias con métodos, mientras
que la estructura describe cómo los datos se dividen en atributos dentro de una
instancia. Una clase también puede tener una representación (metaobjeto) en tiempo
de ejecución, que proporciona apoyo en tiempo de ejecución para la manipulación de
los metadatos relacionados con la clase. En el diseño orientado a objetos, una clase es
el tipo más específico de un objeto en relación con una capa específica.
Los lenguajes de programación que soportan clases difieren sutilmente en su soporte
para diversas características relacionadas con clases. La mayoría soportan diversas
formas de herencia. Muchos lenguajes también soportan características para
proporcionar encapsulación, como especificadores de acceso.
8. ESTRUCTURA DE UN PROYECTO RAILS (VERSION 3) La característica más destacable de un proyecto Rails es la división física de los
archivos, para fortalecer la división de sus funciones siguiendo el patrón Modelo-Vista-
Controlador. Veamos los directorios más empleados de los que componen esta
estructura.
app
Esta carpeta contiene los archivos que forman el sitio, repartidos según sus
características en los subdirectorios controllers, helpers, models y views.
Models: la función principal de los modelos es la obtención de datos, almacenados en
una base de datos, un fichero, etc., y de controlar la integridad de estos datos.
Views: en una página web, las vistas son las distintas interfaces del usuario. A su vez,
contiene una carpeta denominada Layout. Aquí, están unos ficheros que incluyen,
básicamente, el apartado head de un archivo html. Después, por medio de bloques
Ruby, se añade el cuerpo de las vistas para conformar el fichero completo.
Controllers guarda los archivos correspondientes a los controladores del sistema. Su
trabajo consiste en recibir eventos del usuario (envío de formulario, pulsación de un
enlace), invocar al modelo para recuperar los datos que necesita, y trasladarlos a la
vista, para que los muestre.
Cuando se definen las acciones de un controlador, se debe crear una vista para cada
una de estas acciones. Cuando se invocan estos métodos, tras su ejecución, se muestra
automáticamente la vista correspondiente al método ejecutado. A su vez, si es
necesario, se puede crear un modelo para el controlador.
config
En esta carpeta, se almacenan los archivos de configuración del proyecto. Los archivos
que nosotros solemos modificar son routes.rb y database.yml. En el primero, es
posible modificar el controlador y su acción que se ejecutarán al acceder al sitio. En el
otro, podemos modificar el nombre de la base de datos asociada al proyecto.
db
Principalmente, esta carpeta incluye las migraciones, es decir, los archivos de creacion
y edición de la base de datos relacionada con el proyecto.
doc
Aquí se almacena la documentación del proyecto.
log
Los archivos guardados en este directorio son registros de la ejecución del sitio.
public
Este directorio tiene las imágenes que se muestran en las distintas vistas del proyecto,
así como las hojas de estilo empleadas.DEFINICION DE CONCEPTOS SOBRE RUBY ON
RAIL
9.DEFINA LA ERQUITECTURA CLIENTE SERVIDOR:
Este es el ejemplo grafico de la arquitectura cliente servidor.
ELEMENTOS DE LA ARQUITECTURA CLIENTE/SERVIDOR
En esta aproximación, y con el objetivo de definir y delimitar el modelo de referencia
de una arquitectura Cliente/Servidor, debemos identificar los componentes que
permitan articular dicha arquitectura, considerando que toda aplicación de un sistema
de información está caracterizada por tres componentes básicos:
• Presentación/Captación de Información
• Procesos
• Almacenamiento de la Información
Los cuales se suelen distribuir tal como se presenta en la figura:
Aplicaciones Cliente/Servidor
Y se integran en una arquitectura Cliente/Servidor en base a los elementos que
caracterizan dicha arquitectura, es decir:
• Puestos de Trabajo
• Comunicaciones
• Servidores
Tal como se presenta en la figura:
Arquitectura Cliente/Servidor
De estos elementos debemos destacar:
El Puesto de Trabajo o Cliente
Una Estación de trabajo o microcomputador (PC: Computador Personal) conectado a
una red, que le permite acceder y gestionar una serie de recursos» el cual se perfila
como un puesto de trabajo universal. Nos referimos a un microcomputador conectado
al sistema de información y en el que se realiza una parte mayoritaria de los procesos.
Se trata de un fenómeno en el sector informático. Aquellos responsables informáticos
que se oponen a la utilización de los terminales no programables, acaban siendo
marginados por la presión de los usuarios.
Debemos destacar que el puesto de trabajo basado en un microcomputador
conectado a una red, favorece la flexibilidad y el dinamismo en las organizaciones.
Entre otras razones, porque permite modificar la ubicación de los puestos de trabajo,
dadas las ventajas de la red.
Los Servidores o Back-end
Una máquina que suministra una serie de servicios como Bases de Datos, Archivos,
Comunicaciones,...).
Los Servidores, según la especialización y los requerimientos de los servicios que debe
suministrar pueden ser:
• Mainframes
• Miniordenadores
• Especializados (Dispositivos de Red, Imagen, etc.)
Una característica a considerar es que los diferentes servicios, según el caso, pueden
ser suministrados por un único Servidor o por varios Servidores especializados.
Las Comunicaciones
En sus dos vertientes:
• Infraestructura de redes
• Infraestructura de comunicaciones
Infraestructura de redes
Componentes Hardware y Software que garantizan la conexión física y la transferencia
de datos entre los distintos equipos de la red.
Infraestructura de comunicaciones
Componentes Hardware y Software que permiten la comunicación y su gestión, entre
los clientes y los servidores.
La arquitectura Cliente/Servidor es el resultado de la integración de dos culturas. Por
un lado, la del Mainframe que aporta capacidad de almacenamiento, integridad y
acceso a la información y, por el otro, la del computador que aporta facilidad de uso
(cultura de PC), bajo costo, presentación atractiva (aspecto lúdico) y una amplia oferta
en productos y aplicaciones.
10. COMO SE LLAMA EL ARCHIVO DE CONFIGURACION DE LA BASE DE DATOS EN RAILS
Para configurar la conexión a la base de datos, rails pone a nuestra disposición el
archivo “database.yml” ubicado en config -> database.yml. Este archivo nos permite
configurar la conexión a tres bases de datos. Tres bases de datos para tres entornos:
development (desarrollo), test (prueba) y production (producción).
13. QUE ES SCAFFOLD
La palabra Scaffold está en inglés y en español significa Andamio, pero en programación el scaffolding es un método para contruir aplicaciones basadas en bases de datos, esta técnica está soportada por algunos frameworks del tipo MVC en el cuál el programador escribe una especificación que describe cómo debe ser usada la base de datos. Luego el compilador utiliza esa especificación para generar el código que la aplicación usará para crear, leer, actualizar y eliminar registros de la base de datos, esto es conocido cómo CRUD (create, read, update, delete).El Scaffolding fue popularizado por el framework Ruby on Rails y ahora es utilizado por otros frameworks también cómo CakePHP, Symfony.
14. QUE SON LAS RUTAS REST EN RAILS
Es un paradigma para definir rutas en aplicaciones web. En base a REST, las aplicaciones de Rails determinan qué parte de aplicación mostrar y cómo responder a las solicitudes del usuario.
15. QUE VA EN LA CAPA MODEL
El nivel de enlace de datos (en inglés data link level) o capa de enlace de datos es la segunda capa del modelo OSI, el cual es responsable de la transferencia fiable de información a través de un circuito de transmisión de datos. Recibe peticiones de la capa de red y utiliza los servicios de la capa física. El objetivo de la capa de enlace es conseguir que la información fluya, libre de errores, entre dos máquinas que estén conectadas directamente (servicio orientado a conexión). Para lograr este objetivo tiene que montar bloques de información (llamados tramas en esta capa), dotarles de una dirección de capa de enlace, gestionar la detección o corrección de errores, y ocuparse del control de flujo entre equipos (para evitar que un equipo más rápido desborde a uno más lento).
16. QUE ES ORM El mapeo objeto-relacional es una técnica de programación para convertir datos entre el sistema de tipos utilizado en un lenguaje de programación orientado a objetos y el utilizado en una base de datos relacional, utilizando un motor de persistencia. En la práctica esto crea una base de datos orientada a objetos virtual, sobre la base de datos relacional. Esto posibilita el uso de las características propias de la orientación a objetos (básicamente herencia y polimorfismo). Hay paquetes comerciales y de uso libre disponibles que desarrollan el mapeo relacional de objetos, aunque algunos programadores prefieren crear sus propias herramientas ORM.
17. QUE ES ACTIVERECORD Es un objeto que representa una fila en una tabla de una base de datos, encapsula su acceso a la base de datos y añade lógica de negocio. Es la aproximación más obvia, poniendo el acceso a la base datos en el propio objeto de negocio. De este modo es evidente como manipular la persistencia a través del mismo. Es un patrón de diseño el cual permite crear un objeto que "envuelve" una tabla SQL, agregándole la lógica del modelo y el control de acceso. Este patrón de diseño permite unir el mundo de la programación orientada a objetos (POO).
18. QUE ES CSS Y EN QUE CAPA DEL MODELO MVC SE USA
CSS, es una tecnología que nos permite crear páginas web de una manera más exacta. Gracias a las CSS somos mucho más dueños de los resultados finales de la página, pudiendo hacer muchas cosas que no se podía hacer utilizando solamente HTML, como incluir márgenes, tipos de letra, fondos, colores... CSS son las siglas de Cascading Style Sheets, en español Hojas de estilo en Cascada. En este reportaje vamos a ver algunos de los efectos que se pueden crear con las CSS sin necesidad de conocer la tecnología entera.
19. QUE ES JQUERY Y PARA QUE SIRVE Para simplificar, podríamos decir que jQuery es un framework Javascript, pero quizás muchos de los lectores se preguntarán qué es un framework. Pues es un producto que sirve como base para la programación avanzada de aplicaciones, que aporta una serie de funciones o códigos para realizar tareas habituales. Por decirlo de otra manera, framework son unas librerías de código que contienen procesos o rutinas ya listos para usar. jQuery es un framework para el lenguaje Javascript, luego será un producto que nos simplificará la vida para programar en este lenguaje. Implementa una serie de clases (de programación orientada a objetos) que nos permiten programar sin preocuparnos del navegador con el que nos está visitando el usuario, ya que funcionan de exacta forma en todas las plataformas más habituales.
20. DEFINA LOS 3 ENTORNOS RAILS Y PARA QUE SE USA CADA UNO El entorno de desarrollo: (development) optimiza la productividad del
desarrollador. Las caches apenas operan, así que los cambios en el código de la aplicación se aprecian rápidamente, sin tener que recompilar o volver a desplegar nada. Sólo hay que recargar la página del navegador. Por esta razón Ruby on Rails es más rápido en el desarrollo que, por ejemplo, la plataforma Java 2.
El entorno de pruebas: (test) está optimizado para ejecutar pruebas unitarias, de integración y funcionales. Cada vez que se ejecuta una prueba, la base de datos se limpia de todos sus datos. Ruby on Rails se encarga de poblar la base de datos con datos de prueba antes de cada test, a través de las fixtures.
El entorno de producción: (production) es donde se despliega la aplicación final. Este entorno está optmizado para rendimiento, lo que significa, por ejemplo, que las clases están en cache.
21. COMO SE LLAMA EL ARCHIVO DONDE SE VISUALIZAN LOS ERRORES: Un log es un registro oficial de eventos durante un rango de tiempo en particular. Para los profesionales en seguridad informática es usado para registrar datos o información sobre quién, qué, cuándo, dónde y por qué (who, what, when, where y why) un evento ocurre para un dispositivo en particular o aplicación. La mayoría de los logs son almacenados o desplegados en el formato estándar, el cual es un conjunto de caracteres para dispositivos comunes y aplicaciones. De esta forma cada log generado por un dispositivo en particular puede ser leído y desplegado en otro diferente. También se le considera como aquel mensaje que genera el programador de un sistema operativo, alguna aplicación o algún proceso, en virtud del cual se muestra un evento del sistema.
22. QUE ES MIGRACION Y EN QUE CARPETA VAN DENTRO DE UN PROYECTO RAILS Para los no iniciados en Ruby on rails, las migraciones permiten establecer el esqueleto de una base de datos, tablas y campos, al igual que hacemos con sentencias de SQL, sin utilizar directamente SQL. Además Ruby on rails, nos permite tener un control de las versiones de migraciones a ejecutar. Una vez que hemos hecho rails proyecto (siendo proyecto el nombre del proyecto rails) y cd proyecto (para colocarnos dentro del proyecto de rails recién creado) creamos nuestras migraciones. Comentar para recordar, un proyecto rails tiene tres tipos de entornos: desarrollo, pruebas y producción. El entorno Rails llamado “desarrollo” vuelve a cargar las clases cada vez que llame a una nueva acción, por lo que siempre tiene una copia actualizada de las clases incluyendo los cambios más recientes. Mientras que en el entorno de producción carga las clases una vez. Cuando se crea un nuevo proyecto rails, se crea un archivo database.yml, con los tres entornos desarrollo, pruebas y producción, dicho archivo se encuentra dentro de la carpeta config. development: adapter: mysql encoding: utf8 database: proyecto_development username: root password: socket: /var/run/mysqld/mysqld.sock
23. EN QUE CAPA SE ACOSTUMBRA HACER LAS VALIDACIONES EN RAILS (VALIDATES) modelo 24. QUE ES EL LAYOUT
Término inglés con el que se conocen en diseño los bocetos o maquetas bien acabados que sirven para presentar una campaña publicitaria. Es la ordenación y colocación de todos los elementos que componen una página web, es decir textos, imágenes, tablas, gráficos, etcétera. También son elementos del layout los colores y el tipo de letra. A la hora de realizar los diseños hay que tener en cuenta que un layout claro permitirá una navegación mucho más fácil eficiente.
25. QUE SON LOS PARTIALS La utilización de la palabra clave partial indica que otras partes de la clase, estructura o interfaz se pueden definir dentro del espacio de nombres. Todas las partes deben utilizar la palabra clave partial. Todas las partes deben estar disponibles en tiempo de
compilación para formar el tipo final. Todas las partes deben tener la misma accesibilidad, ya sea public, private, etc. Si alguna de las partes se declara abstracta, todo el tipo se considera abstracto. Si alguna de las partes se declara sellada, todo el tipo se considera sellado. Si alguna de las partes declara un tipo base, todo el tipo hereda esa clase. Todas las partes que especifican una clase base deben concordar, pero las partes que omiten una clase base heredan igualmente el tipo base. Las partes pueden especificar diferentes interfaces base, pero el tipo final implementa todas las interfaces mostradas por todas las declaraciones parciales. Cualquier miembro de clase, estructura o interfaz declarados en una definición parcial está disponible para todas las demás partes. El tipo final es la combinación de todas las partes en tiempo de compilación.
26. EN QUE CAPA SE MAPEAN LAS RELACIONES ENTRE LAS TABLAS
Capa de enlace de datos 27. EXPLIQUE LOS TIPOS DE RELACIONES ENTRE MODELOS RAILS.
En las aplicaciones web orientadas a objetos sobre bases de datos, el Modelo consiste en las clases que representan a las tablas de la base de datos. En Ruby on Rails, las clases del Modelo son gestionadas por ActiveRecord. Por lo general, lo único que tiene que hacer el programador es heredar de la clase ActiveRecord::Base, y el programa averiguará automáticamente qué tabla usar y qué columnas tiene. Las definiciones de las clases también detallan las relaciones entre clases con sentencias de mapeo objeto relacional. Por ejemplo, si la clase Imagen tiene una definición has_many:comentarios, y existe una instancia de Imagen llamada a, entonces a.comentarios devolverá un array con todos los objetos Comentario cuya columna imagen_id (en la tabla comentarios) sea igual a a.id. Las rutinas de validación de datos (p.e. validates_uniqueness_of:checksum) y las rutinas relacionadas con la actualización (p.e. after_destroy:borrar_archivo, before_update:actualizar_detalles) también se especifican e implementan en la clase del modelo
28. DEFINA LOS TÉRMINOS FRONT-END Y BACK-END En diseño de software el front-end es la parte del software que interactúa con el o los usuarios y el back-end es la parte que procesa la entrada desde el front-end. La separación del sistema en "front ends" y "back ends" es un tipo de abstracción que ayuda a mantener las diferentes partes del sistema separadas.
29. ENUNCIE Y EXPLIQUE BREVEMENTE METODOLOGIAS DE DESARROLLO UNA ÁGIL Y OTRA TRADICIONAL
Modelo en cascada Es un proceso secuencial de desarrollo en el que los pasos de desarrollo son vistos hacia abajo (como en una cascada de agua) a través de las fases de análisis de las necesidades, el diseño, implementación, pruebas (validación), la integración, y mantenimiento. La primera descripción formal del modelo de cascada se cita a menudo a un artículo publicado por Winston Royce W.2 en 1970, aunque Royce no utiliza el término "cascada" de este artículo. Los principios básicos del modelo de cascada son los siguientes:1 El proyecto está dividido en fases secuenciales, con cierta superposición y splashback aceptable entre fases. Se hace hincapié en la planificación, los horarios, fechas, presupuestos y ejecución de todo un sistema de una sola vez.
Un estricto control se mantiene durante la vida del proyecto a través de la utilización de una amplia documentación escrita, así como a través de comentarios y aprobación / signoff por el usuario y la tecnología de la información de gestión al final de la mayoría de las fases antes de comenzar la próxima fase. Algunos métodos ágiles de desarrollo de software: Adaptive Software Development (ASD). Agile Unified Process (AUP). Crystal Clear. Essential Unified Process (EssUP). Feature Driven Development (FDD). Lean Software Development (LSD). Kanban. Open Unified Process (OpenUP). Programación Extrema (XP). Método de desarrollo de sistemas dinámicos (DSDM). Scrum.
30. QUE METODOLOGIA DE DESARROLLO DE SOFTWARE EMPLEARIA PARA RAILS? JUSTIFIQUELO
incremental por: El concepto inicial de software, análisis de las necesidades, y el diseño de la arquitectura y colectiva básicas se definen utilizando el enfoque de cascada, seguida por iterativo de prototipos, que culmina en la instalación del prototipo final.
31. QUE ES UN PLUGINS RAILS
(Plug-in) Programa que puede anexarse a otro para aumentar sus funcionalidades (generalmente sin afectar otras funciones ni afectar la aplicación principal). No se trata de un parche ni de una actualización, es un módulo aparte que se incluye opcionalmente en una aplicación. El plugin crea una lista de tareas, notas, ideas, etc. desde el código de nuestra aplicación. Lee todos los archivos .rb de nuestro proyecto buscando por las etiquetas aceptadas por el plugin y crea las listas correspondientes. Para esto se basa en un formato en los comentarios del código. Formato soportado #TODO: es una tarea #IDEA: es una idea #NOTE: es una nota #REMOVE: código pendiente de eliminar #DEBUG: código para revisar #TEST: código para probar #DEF: descripción de un método #CHANGE: código que se debe cambiar #QUESTION: preguntas pendientes #FIXME: código con errores conocidos Instalación ./script/plugin install http://todo-list-rails-plugin.googlecode.com/svn/trunk/todo_list/ Como se utiliza En la vista que quiero insertar el menú que me lleva a las listas coloco: <%= todo_list %> El plugin necesita Rails 1.2.0 o posterior para funcionar, si no lo tenemos instalado vamos a necesitar el plugin engines.
36. EXPLIQUE LOS FUNDAMENTOS DE LA WEB
El protocolo HTTP El protocolo HTTP (Hypertext Tranfer Protocol) es el protocolo principal de la World Wide Web. Es un protocolo simple, orientado a conexión y sin estado. Está orientado a conexión proque emplea para su funcionamiento un protocolo de comunicaciones (TCP, o Transport Control Protocol) de modo conectado, que establece un canal de comunicaciones entre el cliente y el servidor, por el cual pasan los bytes que constituyen los datos de la transferencia, en contraposición a los protocolos denominados de datagrama (o no orientados a conexión) que dividen la serie de datos en pequeños paquetes (o datagramas) antes de enviarlos, pudiendo llegar por diversas vías del servidor al cliente. Este protocolo no mantiene estado o, dicho de otro modo, cada transferencia de datos es una conexión diferente a la anterior, sin relación entre ellas. Por ejemplo, para transferir una página web debemos enviar el código HTML del texto, por un lado, y las imágenes que la componen por otro, pues en la especificación inicial 1.0 del protocolo HTTP se abrían y utilizaban tantas conexiones como componentes tenía la página, trasfiriéndo cada componente por conexiones diferentes . El lenguaje HTML El otro factor principal del éxito del World Wide Web ha sido el lenguaje HTML ("Hypertext Mark-up Language", o "Lenguaje de Marcado de Hipertexto"), que es un lenguaje de marcas (se insertan marcas o etiquetas en el texto) que permite representar de forma rica el contenido y referenciar otros recursos (por ejemplo, imágenes), o enlaces a otros documentos (que es, precisamente, la característica más destacada de la web), mostrar formularios para su posterior procesamiento, etc.
37. DEFINA LA ESTRUCTURA DE UN DOCUMENTO HTML
Head, title, meta, base, body, comentarios
TITLE: para dar nombre al documento;
META: para forzar a la página activa a ser cargada cada cierto tiempo.
BASE: para prefijar la dirección base de los documentos referenciados mediante un
URL relativo.
BODY: Esta es la estructura mínima que debe poseer todo documento HTML
COMENTARIOS: En el código fuente de una página HTML, los comentarios se
introducirán entre las marcas: <!-- y -->. Todo texto situado entre dichas marcas será
ignorado por el browser, y por tanto no será visible.