PDA

Ver la Versión Completa : Ruby on rails


lookmydoom
22-10-2006, 18:25:52
Que tal, hace poco andube chequeando este lenguaje que me parecio interesante pero no comprendi mucho su uso final, osea yo lo asocie a lenguajes como ASP y PHP para programacion web pero me quedo la duda si es que era solo un lenguaje web o se trataba de uno como Delphi tipo aplicaciones para SO y queria saber si alguien ya lo a usado, que me explicara mejor cual de los dos es o que tipo de cosas se pueden hacer con el.

kayetano
24-10-2006, 07:49:58
Hola

Se podría decir que es un lenguaje tipo ASP y PHP, pero además incorpora un API muy potente que permite realizar trabajos en pocos segundos.
Lo he usado para hacer alguna aprueba que otra pero nada a nivel profesional.

PD. Una aclaración, el lenguaje (tipo PHP) es RAILS y el framework (API) es RUBI ON RAILS

dec
24-10-2006, 12:42:26
Hola,


(...) incorpora un API muy potente que permite realizar trabajos en pocos segundos.


Madre mía, pocos segundos... ¡eso es productividad y lo demás milongas! ¿Que no? :D :D

mamcx
24-10-2006, 16:00:02
Aunque personalmente, me gusto mucho mas django (djangoproject.com), primero porque python me parece (su sintaxis) mejor, esta mas maduro y se integra muy bien con Delphi...

kayetano
25-10-2006, 13:24:52
Hola

Madre mía, pocos segundos... ¡eso es productividad y lo demás milongas! ¿Que no?
Sip, segundos, hacer un mantenimiento de una tabla (añadir, modificar, editar, borrar) se hace con ... creo recordar que dos lineas de pocos caracteres, eso yo lo escribo en muy pocos segundos.

primero porque python me parece (su sintaxis) mejor, esta mas maduro y se integra muy bien con Delphi...
Desconozco django, pero te puedo asegurar que RAILS esta muy pero que muy maduro, su sintaxis es muy parecida a C++ y esta siendo todo un existo en todo el mundo. En relación a la integración con delphi no tengo ni idea, pero lo considero secundario.

dec
25-10-2006, 13:39:29
Hola,


Sip, segundos, hacer un mantenimiento de una tabla (añadir, modificar, editar, borrar) se hace con ... creo recordar que dos lineas de pocos caracteres, eso yo lo escribo en muy pocos segundos.


Joroba. Yo pensaba que ibas a responder "bueno, lo de segundos es una forma de hablar, quiero decir que el desarrollo es bastante rápido y productivo" o algo así... pero, no...

Hombre. Yo creo que en segundos no pueden hacerse muchas cosas. Puede que puedas escribir un par de líneas de código, pero, sólo pensar por qué esas dos líneas de código ya lleva algo más de tiempo.

Con PHP puedes también añadir, modificar, editar y borrar registros de una tabla en un par de líneas de código... y si me apuras en menos (en una línea) si es que preparaste algún mecanismo (llámese clase, framework o así) para ello: lo que seguro llevó algo más que segundos...

De todos modos reconozco que de Ruby apenas sé que existe y que no me importaría en absoluto echarle un vistazo mediante algún buen libro, tutorial, etc. Seguramente lo haga. Ahora con más razón, puesto que le pones tan bien Kayetano. ;)

kayetano
25-10-2006, 13:47:20
Hola

Hombre. Yo creo que en segundos no pueden hacerse muchas cosas. Puede que puedas escribir un par de línea de código, pero, sólo pensar por qué esas dos líneas de código ya lleva algo más de tiempo.
Te he puesto un caso extremo, está claro que cualquier proyecto tarda más que unos pocos segundos, además estas pocas lineas generan algo muy estandar que por lo general no es lo que se busca.

dec
25-10-2006, 13:57:03
Hola,


Te he puesto un caso extremo, está claro que cualquier proyecto tarda más que unos pocos segundos, (...)


Sí; llevas razón. Estoy yo muy susceptible... :)

mamcx
25-10-2006, 14:18:39
La ventaja de cosas como Ruby On Rails, Django, TurboGears y demas es que son "stacks", o sea, es la integracion de uno o varios frameworks que automatizan cosas. El stack lo componen:

* Esquema MVC
* Un ORM (que mapea objetos a tablas)
* Un sistema de manejo de URLs
* Un sistema de generacion de plantillas / lenguaje de markup
* Un medio de integrar javascript/ajax
* Frameworks de medio y bajo nivel para comprimir la salida, autenticacion, etc...
* Todo alambrado e integrado

Para hacer una idea, es tan productivo como Delphi, solo que:

- De una vez esta en modalidad MVC
- Todo esta especificado (ej: Las clases las pones aqui, las vistas aqui. Por aqui se configura la BD, etc...) que tiene la ventaja que facilita a los nuevos a entrar y a los viejos a integrar.
- El ORM seria similar a Bold/ECO, aunque de todas maneras ECO es mas sofisticado

Por ejemplo, esto es todo lo que necesito en django para hacer CRUD y una interface administrativa automatica (Django tiene - a la fecha - el *mejor* sistema de administracion auto-generado):


class File(models.Model):
createdOn = models.DateTimeField('fecha de creacion',editable=False,blank=False,auto_now_add=True,default=datetime.now())
modifedOn = models.DateTimeField('fecha de modificacion',editable=False,blank=False,auto_now=True,default=datetime.now())
tags = models.CharField('etiquetas',maxlength=255,blank=False)
title = models.CharField('titulo',maxlength=50,blank=False,db_index=True)
userId = models.SlugField(prepopulate_from=('title', 'title'),blank=False)
content = models.TextField('contenido')
status = models.IntegerField('estado',default=1,choices=ESTATUS_CHOICES)
filePath = models.FileField('ruta de archivo',upload_to='data//files')
fileSize = models.IntegerField('tamaño en Kb',editable=False,default=0)

def __str__(self):
return '%s (%s)' % (self.name, self.filePath)

def get_absolute_url(self):
return "/descargas/%s/" % self.userId

""" Deduce el tipo de datos MIME para hacer descargas correctas """
def mimeType(self):
return mimetypes.guess_type(self.filePath)

def save(self):
Content.save(self)

class Admin:
search_fields = ['filePath','title','tags']
list_display = ('title', 'filePath','fileSize','tags')


class Meta:
verbose_name = 'archivo'
db_table = 'jhonWebFile'


Es en serio, sale muy bien...

Vale la pena mirar la informacion sobre Ruby On Rails y sobre Django y demas. Realmente, si alguien arranca hoy a hacer sitios o aplicaciones web, este seria el mejor camino...

roman
25-10-2006, 17:21:07
Desconozco casi al 100% ruby pero me llama la atención lo del ORM. Tengo entendido que ruby on rails utiliza el patrón del Active Record, ¿no es así?. Al menos creo recordar que alguna vez leí esto. Sin embargo, y eso fue lo que me llamó la atención en su momento, active record (http://es.wikipedia.org/wiki/ActiveRecord) realmente lo que hace es una clase por cada tabla de manera que el diseño de la aplicación sigue sujeto a la estructura relacional. Entonces, por una parte nos recomiendan que diseñemos nuestras aplicaciones partiendo del modelo de clases y usando un ORM para mapear a una estructura relacional, y luego viene ruby on rails y va a contrapelo de esto.

¿Podrías aclarar al respecto?

// Saludos

JXJ
29-10-2006, 01:41:18
¿Conocen de algún sitio web activo. para descargar, Django, y tutoriales?
he probado con estos.

http://www.djangoproject.com/

http://code.djangoproject.com/

y creo estan muertos.

Gracias.

mamcx
29-10-2006, 02:36:48
¿Conocen de algún sitio web activo. para descargar, Django, y tutoriales?
he probado con estos.

http://www.djangoproject.com/

http://code.djangoproject.com/

y creo estan muertos.

Gracias.

Muerto??

:confused::confused::confused::eek:

Vete a documentacion/Instalacion:

http://djangoproject.com/documentation/install/

Una de las cosas que me "descresto" de este proyecto open source, a diferencia de otros (incluyendo el mio :( ) es lo bien documentado que esta...

JXJ
29-10-2006, 21:25:06
al menos a los sitios. web no puedo entrar, tardan mucho
en cargar

el enlace que das mamcx, no me carga.
a lo mejor es mi equipo,,, que no funciona bien.

La página Web solicitada no está disponible en este momento. Puede que el sitio Web tenga problemas técnicos o que necesite ajustar la configuración de su explorador.