Historias
Slashboxes
Comentarios
 

Login Barrapunto

Login

[ Crear nueva cuenta ]

¿Razones a favor y en contra de desarrollar con lenguajes RAD?

editada por nettizen el Jueves, 15 Noviembre de 2012, 09:16h   Printer-friendly   Email story
desde el dept. ni-si-ni-no-sino-todo-lo-contrario
miguel_po nos cuenta: «Hola. Mi empresa va a acometer un proyecto importante de desarrollo para un programa de gestión y ha surgido la posibilidad de realizar el desarrollo en un lenguaje de desarrollo rápido (FileMaker, Servoy, Velneo, NConstruct, ...). Yo vengo de Java, PHP, .NET, y no acabo de creerme las maravillas que venden sobre esos lenguajes. ¿Podéis indicarme los pros y contras de ese tipo de lenguajes? ¿Algún sitio donde informen y adviertan de sus problemas? Muchas gracias.»

Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • No Silver Bullet

    (Puntos:5, Interesante)
    por pobrecito hablador el Jueves, 15 Noviembre de 2012, 10:19h (#1324473)

    Los lenguajes RAD pueden reducir la complejidad accidental de una aplicación, pero en general está comúnmente aceptado el discurso de que no existen balas de plata ni recetas milagrosas que vayan a reducir la complejidad esencial del software, que es la propia del problema a resolver en cada caso.

    Esto es más cierto hoy en día que hace 25 años cuando Frederick Brooks escribió su famoso artículo [nott.ac.uk], porque los lenguajes y los frameworks han evolucionado mucho, pero repito, sólo han simplificado lo que Brooks denomina como complejidad accidental.

    Hace 30 años, en los tiempos del COBOL, pues igual tenía sentido hablar de lenguajes RAD. Hoy con Ruby On Rails, Python, tropecientos frameworks para Java / NET / PHP / Javascript, pues no tiene mucho sentido hablar de lenguajes RAD porque todos te permiten prototipar rápidamente una aplicación.

    Lo lógico es usar aquella herramienta con la que estés más familiarizado, porque esa va a ser la forma más rápida de hacer las cosas. Toda herramienta nueva requiere un tiempo de aprendizaje. Con Rails y con Django la verdad es que cualquier aplicación tipo CRUD se prototipa en un día, pero conocer todos los entresijos de un framework y hacer algo real requiere su tiempo uses la herramienta y el lenguaje que uses.

    No obstante te espera una ardua lucha. Las decisiones las suelen tomar personas no técnicas fácilmente sugestionable mediante el buzzword de los charlatanes. Al final tu empresa usará cualquier producto comercial de miles de euros que generará cualquier costrollo y dentro de dos años habrá que cambiarlo por otra cosa.

    [ Responder ]
  • por jesusjbm (52329) el Jueves, 15 Noviembre de 2012, 13:17h (#1324491)
    Con lo que indicas, quizás faltaría algo mas de información sobre la extensión del proyecto y los recursos que se habrían de dedicar.

    Si que es cierto que si se trata de una aplicación de gestión, es bastante probable que alguna herramienta RAD sea apropiada, puesto que están generalmente diseñadas para ser eficientes en el desarrollo de este tipo de aplicaciones.

    En todo caso, y puesto que no lo has indicado en el mensaje original, te podría recomendar que le pegaras una ojeada a una herramienta que se llama Genexus , nosotros la utilizamos hace bastantes años, con bastantes buenos resultados, para desarrollar nuestras aplicaciones de gestión para consumo propio.

    En cuanto a las ventajas están , evidentemente, la velocidad de desarrollo, y el mantenimiento; también te facilita la creación de estándares, de modo que el mantenimiento es bastante mas fácil que si la gente desarrolla a mas bajo nivel,donde los estilos personales pueden diferir mas.
      La herramienta que te indico está bastante orientada a metodologías incrementales, con fases de desarrollo rápido, y evolución continua posterior.
    Otra cuestión que hay que tener en cuenta, si lo que se quiere es utilizar un interface web, es que (al menos en el caso que indico), es mas fácil gestionar la seguridad de la aplicación, puesto que el fabricante de la misma ya ha tenido en cuenta algunas de las buenas prácticas en cuanto a la generación del código, para evitar bastantes de las vulnerabilidades habituales en las aplicaciones web, especialmente las desarrolladas en PHP.

    Los inconvenientes vienen del lado de la necesidad de una buena formación en la herramienta, y en la creación de los primeros estándares al ser una primera implantación. También la personalización del aspecto final no puede, evidentemente, ser tan flexible como programando a bajo nivel. Y el coste, claro, puesto que es un producto de pago.

    [ Responder ]
  • Sugerencia y aviso

    (Puntos:2, Interesante)
    por monster (49083) el Jueves, 15 Noviembre de 2012, 14:23h (#1324503)
    ( Última bitácora: Martes, 18 Septiembre de 2012, 10:31h )
    Una de las opciones tradicionales en desarrollos RAD era Delphi [embarcadero.com] (antiguamente de Borland), que ha seguido desarrollándose por otras compañías, actualmente Embarcadero. Basado en Object Pascal, soporta múltiples BBDD tanto en acceso nativo como por ODBC y es multiplataforma: Actualmente Windows y Mac aunque llegó a tener versión para Linux (Kylix) que aunque abandonaron parece que podrían retomar. Utiliza su propio sistema de interacción con elementos visuales (antiguamente VCL) y tiene componentes para un montón de tareas comunes.

    Eso en cuanto a la sugerencia. Como aviso, el siguiente: El 90% por lo menos de los desarrollos hechos con utilidades RAD terminan siendo el producto final y no un prototipo deshechable, por lo que te recomiendo que plantees la herramienta a elegir como tal y no te quedes con sistemas de juguete pensando que a ti no te va a pasar.

    Suerte con la elección.
    [ Responder ]
  • Si vienes de .NET

    (Puntos:3, Interesante)
    por neu___ (14363) el Jueves, 15 Noviembre de 2012, 15:15h (#1324509)
    ( http://www.cpsaez.com/ | Última bitácora: Viernes, 07 Septiembre de 2012, 07:55h )
    Si vienes de .NET, Lighswitch esta pegando bastante fuerte. Échale un vistazo ya que puedes tener lo bueno de los desarrollos rápidos y guiados, para luego complementarlo con desarrollos a medidas.

    Yo lo he probado y para hacer aplicaciones de backend, uso interno o rutinarias, te quita muchas horas.
    --

    Under a sea of dust lies a vast wealth of wisdom

    [ Responder ]
  • Depende de lo que quieras hacer...

    (Puntos:4, Inspirado)
    por rongorongo (23587) el Jueves, 15 Noviembre de 2012, 15:54h (#1324517)
    ( http://kernel.org/ | Última bitácora: Sábado, 10 Noviembre de 2012, 01:23h )
    ...Y en contra de lo que aquí se dice, SÍ que hay balas de plata, pero en casos, y te pueden ahorrar mucho tiempo de desarrollo, o, utilizar menos desarrolladores.

    --Las herramientas RAD están pensadas para unos pocos campos específicos, por otro lado bastante comunes, si tu problema cae en uno de ellos, estás de suerte.

    --Pide casos de uso parecidos al tuyo, cuantas horas-programador han necesitado?

    --El aprendizaje del entorno te va a llevar tiempo.

    --Puedes pensar cual es la parte más "dura" de la aplicación? pide una demostración y pide precisamente eso.

    --Estudia la lógica necesaria que vas a tener que añadir, es mucha? si es así ese no es tu RAD, una aplicación RAD no debe precisar mucha lógica, siendo casi todo pegar componentes. Un RAD sirve para lo que sirve, "torcerlo" para que haga otra cosa puede llevarte muchísimo tiempo.

    --Y corolario del anterior punto: te ahorra realmente tiempo? Un RAD es una herramienta muy útil cuando uno va escasillo de tiempo, digamos uno debería tardar 1/4 del tiempo que uno normalmente dispone (un buen RAD adaptado a lo que necesitas puede reducirte el tiempo mucho más), si uno se va tirar lo mismo que con otras herramientas, pues bueno, tu eres el que se gasta el dinero.

    --Los lenguajes de los RAD suelen ser específicos (una excepción son las herramientas de Embarcadero que utilizan extensiones de lenguajes estándar) y están pensados más para escribir lógica "guarra". Ten cuidao con eso porque si vas a tener que mantener la aplicación, o esperas que ésta necesite ser extendida en un futuro, estás metiendo la pata. Igual una metodología más tradicional te haga la vida más sencilla luego.

    --Dado que el 95% de la aplicación va a tener código al que posiblemente no tengas acceso, mejor que el fabricante se comprometa a proporcionar actualizaciones.

    Si todo esto cuadra, entonces has encontrado el RAD que necesitas.

    Y un último punto: Ten cuidado con tus DATOS!!!!!! ni se te ocurra que estén guardados en un fromato que no puedas recuperar con una aplicación distinta del RAD que utilizas!!!!!!

    Saludos.
    --
    1 + 1 = 3 para grandes valores de 1.
    [ Responder ]
  • Lenguaje

    (Puntos:2, Interesante)
    por KSEltar (50536) el Jueves, 15 Noviembre de 2012, 17:13h (#1324528)
    ( Última bitácora: Lunes, 26 Marzo de 2012, 18:07h )
    te recomiendo buscar siempre implementar libre/opensource, viendo como esta colapsando la economia... no creo que sea una buena idea centrarse en herramientas que dependen de colosos que van a donde les sopla el viento... utiliza lenguajes interpretados (ruby, php, python, perl, javascript) e intenta implementar los estandares y hacer la migracion a las ultimas versiones de las herramientas, no te centres en usar una herramienta de edicion excepto que sean cosas especificas (reportes, migracion de datos) o multiplataformas, es recomendable tener la posibilidad de editar en caliente y previamente genera un ambiente de desarrollo adecuado, analisis, desarrollo, testing, y el ambiente de hardware y configuracion necesario, y lo mas importante, documentar y planificar transferencia de conocimiento real (rutina de desarrollo dojo o de turnos)
    [ Responder ]
  • Mi experiencia con FileMaker

    (Puntos:2, Informativo)
    por Tasio1985 (48660) el Jueves, 15 Noviembre de 2012, 21:57h (#1324547)
    He realizado un proyecto con FileMaker, proyecto de aproximadamente mes y medio.

    Con las características de un software de gestión simple, mostrar fichas, mostrar listados, generar PDF, imprimir...

    Usé FileMaker por la recomendación de un amigo que lo usaba para realizar tareas de gestión de la empresa donde trabajaba durante años por lo que lo consideré estable y de echo no recuerdo ninguna inestabilidad del software.

    Mi punto de vista es que es mejor que un excel, tiene interesantes opciones fáciles y rápidas de desarrollar pero cuando se trata de hacer algo mas específico como validar una cuenta bancaria ya se complica mas que si lo haces en PHP, con FileMaker tienes que usar "guiones" y estos guiones no abarcan todas las posibilidades de un lenguaje de programación, o al menos no de forma clara. Otra limitación importante que me he encontrado es a la hora de generar un fichero de remesas bancarias, si mal no recuerdo el fichero TXT se generaba con una codificación que el banco no validaba, algo que se pudo resolver pero no de forma fácil.

    Personalmente prefiero seguir con PHP / Javascript.
    [ Responder ]
  • Re:Da igual lo que digamos

    (Puntos:5, Inspirado)
    por Noradrex (3519) <noradrex@gmail.com> el Jueves, 15 Noviembre de 2012, 10:08h (#1324472)
    ( http://labotelladeklein.blogspot.com/ | Última bitácora: Sábado, 21 Julio de 2012, 18:01h )

    Mi interpretación difiere:

    Dice que no se cree lo que le venden, no que lo suyo sea mejor. Y pide "PROS" y contras. Finalmente pide información y advertencias, supongo que porque ya le han dado la información "comercial", pero nadie a entrado en los "problemas".

    Ah, y se ha molestado en pedir info en Barrapunto, supongo que por aquello de la variedad de opiniones. +1 al interés en conocer los productos.

    --

    El doble de diversión en: La Botella de Klein [blogspot.com]

  • 5 respuestas por debajo de tu umbral de lectura actual.