Ruby on Rails Gary Castillo Gorbunov. El Lenguaje Ruby El Lenguaje Ruby Este es un lenguaje pura y netamente orientado a objetos. Este es un lenguaje.

Slides:



Advertisements
Presentaciones similares
Sistema de Información Cultural, CONACULTA México, 2006 SiC / RENiC Aspectos técnicos relevantes para un Sistema de Información (SI)
Advertisements

PLATAFORMAS 0. INTRODUCCIÓN
Seguimiento de clientes en tienda mediante radios Bluetooth
Ecosistemas heterogéneos de desarrollo en TFS
85 motivos* para Ruby on Rails
Características Técnicas
Características Técnicas
Ruby Rodrigo Cornejo Mejías Jonathan Cea Chávez Marcelo Gómez Gonzales
Daniel Correa Botero.  Puede ser desplegado en la mayoría de los servidores web y en casi todos los sistemas operativos y plataformas sin costo alguno.
Historia de PHP Programación en Internet II. Historia de PHP Programación en Internet II Universidad de Guadalajara | Centro Universitario de la Costa.
Curso de Java La tecnología Java
Lenguajes de programación para la web Lenguaje html Lenguaje java script Es un lenguaje estático para el desarrollo de sitios web Ventajas: Sencillo que.
DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB ¿Cómo instalar un wiki?
PHP PHP (acrónimo de "PHP: Hypertext Preprocessor") es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en páginas HTML y ejecutado.
Por: Claudia Yaneth Peña Video tutorial de aprendizaje de XAMPP.
Java ??? Ing. Rolando Steep Quezada Martínez
DOCUMENTO: LOS DIFERENTES LENGUAJES DE PROGRAMACIÓN PARA LA WEB POR: JUAN RICARDO VILLEGAS.
 Un servidor proporciona información a los ordenadores que se conecten a él.  Cuando lo usuarios se conectan a un servidor pueden acceder a programas,
Ruby on Rails. ¿Qué es Ruby? Ruby es un lenguaje de programación totalmente o rientado a objetos multiplataforma(le nguaje interpretado y de scripts),
Cristian Fonnegra Marin
Programación Java y Desarrollo de Aplicaciones Modulo 3 Lenguaje de programación Java Software utilizado.
CMS DRUPAL HERRAMIENTAS DE DISEÑO CARLOS LLANOS V. JENNIFER QUINDE G. JUAN MACIAS B. KERLY UBE.
DIEGO ARMANDO GÓMEZ CUERVO Desarrollo de aplicaciones WEB con herramientas de software libre.
Ing. Eddye Sánchez Castillo FACULTAD DE INGENIERIA Escuela Profesional de Computación y Sistemas BASE DE DATOS I.
Tema 11 Bases de Datos y el Lenguaje SQL
Ing. Lorena Ruhl - Marco Rapallini - Javier FabiánMódulo 3: Integración de PHP con Bases de Datos Ing. A. Lorena Ruhl Universidad.
U niversidad de G uadalajara Centro Universitario de Ciencias Exactas e Ingenierías Ponentes: Muñoz Guzmán Ramón Gallardo Olivares Mario Solís Flores José.
“Disfrutando la Programación Web: Ruby on Rails” Sergio A. Alonso Escuela de Informática y Sistemas VIII Jornadas.
Clase 3: primeros programas (1ª parte) iic1102 – introducción a la programación.
Diseño y Programación Orientados a Objetos1 Introducción a Java.
Javier Smaldone 5tas Jornadas Regionales de Software Libre Noviembre de 2005 Rosario, Santa Fe, Argentina Primeros pasos en.
RubyNote ARCHIVOS EN RUBY HECHO POR: FRANCISCO ALVAREZ AGUILA.
¿Que es PHP? PHP Hypertext Preprocessor Y solo porque me quiero hacer el profesor cool y meter un chiste: PHP también significa: Para Hacer Páginas.
Tema 1 Fundamentos de Computación
Sistema Online de Firma Electrónica
Diseño y Programación Orientados a Objetos
Introducción al Proyecto
Diseño y Programación Orientados a Objetos
PHP Hypertext Preprocessor
LOS DIFERENTES LENGUAJES DE PROGRAMACION PARA LA WEB
Diseño y Programación Orientados a Objetos
Ingeniero en Computación José Alfredo Cobián Campos
Agustín J. González Programación de Sistemas: ELO-330
Lenguaje C en pocas palabras
LENGUAJE DE PROGRAMACIÓN Y SOFTWARE PROPIETARIO
MANTIS BUG TRACKER.
Lenguaje de Programación C en pocas palabras
BASES DE DATOS EN LA NUBE
KUbuntu Carlos Torres Denis González 7 de septiembre de 2015.
Software Es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Se.
INTERNET Actividad 3 Herramientas Tareas Ruben Dario Acosta V.
HISTORIA El lenguaje fue creado por Yukihiro "Matz" Matsumoto, quien empezó a trabajar en Ruby el 24 de febrero de 1993, y lo presentó al público en el.
Fundamentos de programación en TIG 4. Aptana y Arcpy
INTRODUCCIÓN A JAVA.
Diseño y Programación Orientados a Objetos
Lenguaje de Programación
EL SISTEMA OPERATIVO Es un conjunto de programas hechos para la ejecución de varias tareas, en las que sirve de intermediario entre el usuario y la computadora.
LENGUAJE DE SCRIPTING EN SERVIDORES WEB INTEGRANTES :JOSTIN FRANCO DARYENIS ARAUZ PABLO CANDANEDO.
Características Generales y Entornos de Desarrollo
Java Enterprise edition
Entendiendo PHP En diseño de software en el Front-end es la parte del software que interactúa con los usuarios. Es la persona que se encarga del diseño.
FRONT-END Y BACK-END L.I. MARÍA DEL CARMEN RIVERA GONZÁLEZ.
Prepa Yucatán Mons. Luis Miguel cantón Marín Nombre de editores gratuitos de HTML, CSS y JavaScript Timna Jiménez Pérez.
Diseño y Programación Orientados a Objetos
Programación al lado del servidor
Ingeniería de Sistemas. Programación II Python ¿Qué es Python? Python es un lenguaje de programación creado por Guido Van Rossum a principios de los.
Diseño y Programación Orientados a Objetos
Adm. Sistemas Operativos Arquitectura de Plataformas y Servicios Tic.
Hilos de Procesamiento. Hilos Concepto Beneficios Hilos a nivel kérnel y a nivel usuario Modelos multihilos Hilos de Solaris 2 Hilos de Java.
Transcripción de la presentación:

Ruby on Rails Gary Castillo Gorbunov

El Lenguaje Ruby El Lenguaje Ruby Este es un lenguaje pura y netamente orientado a objetos. Este es un lenguaje pura y netamente orientado a objetos. Tiene una sintaxis muy clara y limpia que hace que programar sea elegante y entretenido. Tiene una sintaxis muy clara y limpia que hace que programar sea elegante y entretenido. Aquí se combinan la facilidad de uso y aprendizaje de Python y el pragmatismo de Perl. Aquí se combinan la facilidad de uso y aprendizaje de Python y el pragmatismo de Perl. Ruby fue creado en Japón a principios de los 90, por Yukihiro Matzumoto y ha empezado a popularizarse en todo el mundo en los últimos años. Ruby fue creado en Japón a principios de los 90, por Yukihiro Matzumoto y ha empezado a popularizarse en todo el mundo en los últimos años. Yukihiro Matzumoto

Que puedo hacer con Lenguaje Ruby Front ends usando librerías GTK, QT, wxWindows, tk,Cocoa. Front ends usando librerías GTK, QT, wxWindows, tk,Cocoa. Aplicaciones cliente servidor Aplicaciones cliente servidor Conexiones con BD Conexiones con BD Servidores ej. LigHTTPd Servidores ej. LigHTTPd Aplicaciones Web Aplicaciones Web Generar ejecutables ej. Script2Exe Generar ejecutables ej. Script2Exe Scripts Scripts

A que se parece el código? # Clase Saludos class Saludos def = elnombre.capitalize end def di_hola puts “Hola #{name}” endend # Crea el Objeto g = Saludos.new(“mundo”) # Muestra mensaje Hola Mundo g.di_hola

Todo es un objeto No tiene variables primitivas como: int char short float Todo se transforma automáticamente en un objeto

una_variable = "hola mundo" puts una_variable.upcase HOLA MUNDO puts una_variable.length 10 puts “NO ME GRITEN”.downcase no me griten puts -3.abs 3

Otro ejemplo # repite 5 veces hola 5.times{ puts “hola” } # si la palabra “restorante” incluye subcadena # de caracteres “ante” no hace exit exit unless “restorante”.include? “ante” # For's For i in ['pera','papaya','piña'] { print i.capitalize } # hace lo mismo ['pera','papaya','piña'].each {|fruta| print fruta.capitalize }

En que tecnólogas y plataformas funciona Ruby Interprete de Ruby (Linux, Windows Mac OS X, Solaris) Interprete de Ruby (Linux, Windows Mac OS X, Solaris) Sun Java 6, interpretado y compilador a bytecode. Sun Java 6, interpretado y compilador a bytecode..NET IronRuby.NET IronRuby

Interpretes y Máquinas Virtuales Ruby Ruby Java + Jruby Rubinius.Net

Pruebas de rendimiento

Comparativa con Otros Lenguajes

TIOBE Programming Community Index for April 2009

Métricas del uso de Ruby

Usuarios de Ruby

Que es Ruby on Rails? Marco de Desarrollo de aplicaciones web de código abierto. Escrito en el lenguaje de programación Ruby. De arquitectura Modelo-Vista-Controlador (MVC) Ello hace más sencillo y rápido el desarrollo de proyectos de gran magnitud. Los expertos manifiestan que se puede desarrollar una aplicación web medianamente complicada al menos diez veces más deprisa que lo que se tardarías con un Marco de Desarrollo de Java, sin sacrificios de calidad. Creada por David Heinemeier Hansson La versión 1 fue lanzada en el 13 de diciembre 2005

MODELO class Product < ActiveRecord::Base validates_presence_of :title, :description, :image_url validates_presence_of :title, :description, :image_url validates_numericality_of :price validates_numericality_of :price validates_uniqueness_of :title validates_uniqueness_of :title def validate errors.add(:price,"ese precio debe ser positivo") unless price.nil? || price > 0.0 endend

VISTA Listing products Listing products <table> 'show', :id => product %> 'show', :id => product %> 'edit', :id => product %> 'edit', :id => product %> 'destroy', :id => product }, 'destroy', :id => product }, :confirm => 'Are you sure?', :method => :post %> :confirm => 'Are you sure?', :method => :post %> </table>

CONTROLADOR class AdminController < ApplicationController def index def index list list render :action => 'list' render :action => 'list' end end def list = paginate :products, :per_page = paginate :products, :per_page => 10 end end def show def = = Product.find(params[:id]) end end def new def = = Product.new end end def create def = = Product.new(params[:product]) flash[:notice] = 'Product was successfully created.' flash[:notice] = 'Product was successfully created.' redirect_to :action => 'list' redirect_to :action => 'list' else else render :action => 'new' render :action => 'new' end end

Relacionando tablas receta.rb class Receta < ActiveRecord:Base belongs_to :categoria belongs_to :categoriaend en categoría.rb class categoría < ActiveRecord::Base has_many :recetas end tabla receta tabla categoria campo categoria_id

Esfuerzo del aprendizaje

Filosofía del RoR 1)Menos dinero No necesitas dinero para el hardware. El hardware es barato. No necesitas dinero para el software. El software es gratis. 2)Menos tiempo La mayoría del tiempo que pasas trabajando es tiempo perdido. Demasiadas reuniones, demasiada planificación, demasiado pensar..... Cuanto más tiempo tienes, más tiempo pierdes. 3)Menos abstracciones La mejor manera de aprovechar el tiempo es hacer menos trabajo que no sea "real". Menos gráficos, menos documentación, menos especificaciones funcionales. Directo al grano, el producto que tus clientes realmente verán. 4)Menos software La clase de software que es satisfactorio de emplear es aquel que es simple, útil y va directo al grano.

Bases de Datos Soportadas MySQL MySQL PostgreSQL PostgreSQL SQLite SQLite Oracle Oracle Ms SQL Server Ms SQL Server DB2 DB2 Firebird Firebird

WebServers Soportados Apache /FastCGI Apache /FastCGI Apache /CGI Apache /CGI Lighttpd Lighttpd Mongrel Mongrel

El Scaffolding ruby script\generate controller Receta

Que dicen de RoR? Ruby on Rails es el tipo de Herramienta que te permite crear una aplicación como un shopping cart en menos de 4 horas. Andrew Glover es un consultor de IBM y escritor de artículos sobre Java.. Fuente:

El manejador de paquetes Gems Repositorio con mas de aplicaciones y plugins Ejemplo. Generadores de PDF, ODT, Webkit

Algunos IDE'S Para Desarrollar Aplicaciones con ROR

Gedit + plugins

NetBeans 6.0

Eclipse – Aptana - RadRails

Quien usa RoR yubnub Buscador por linea de comandos BubbleShare Sitio para compartir fotos y audio relatos odeo.com sistema de podcasting donde se concentran Radios por internet La Coctelera Servicio de Blog similar al blogger de Google

Para febrero del 2008 ya contaba con más de de usuarios

fin..