Retroceder   Foros del Web > Temas generales de computación > Programación
Crea un nuevo usuario o inicia sesión utilizando tu cuenta de Facebook
Connect with Facebook

Respuesta
 
Herramientas Desplegado
Antiguo 21-dic-2008, 23:41   #1 (permalink)
therocha ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2008
Mensajes: 7
therocha está desconectado
Desarrollar aplicación multiplataforma (Windows, Linux, Web, Celular)

Buenas a tod@s,

Mucho de ustedes ya van un paso adelante y no ví mejor lugar para poder hacer una pregunta de este tipo, lo que pasa es que ahora se me vino la necesidad de desarrollar un sistema multiplataforma y que sea accesible desde diferentes dispositivos (example->"celular","web").

Llevo buen tiempo desarrollando aplicaciones bajo Delphi, exactamente la versión 7 y cómo gestor de base de datos "Firebird" en un entorno Cliente-Servidor y corriendo bajo Windows.

Llevo algún tiempo usando Linux y ya no quiero desarrollar aplicaciones únicamente para windows, pienso que es un mal necesario y de ahora en adelante lo usaré mínimamente a menos que sea necesario, imagino que en determinada área de la empresa tendrá que convivir con algún sistema que sólo corre y fue diseñado para windows. (¡Es por eso que es importante que sea multiplataforma!)

Ahora los tiempos han cambiando y los retos se han hecho más grandes, ahora demandamos aplicaciones que mínimamente sean accesibles desde la web (Desde un entorno web pueda ingresar datos directamente al sistema central).

La pregunta es: ¿Que arquitectura usar?
Ahora estoy en un dilema y siento cierta melancolía =( porque tendré que dejar mi querido pascal y sú hijo delphi para tomar otro lenguaje de programación C++, C# o Java. ¿Cual elegir?

En un primer momento me decante por .NET y con la llegada de la versión 2.0 de MONO para nuestro querido Linux pues parece ser una opción muy poderosa.

C++, el sólo hecho de mencionarlo impone respeto y deseos de usarlo tomando ventaja de la potencia y flexibilidad "ilimitada" que ofrece :D

Java con su poderosa y hasta mágica máquina virtual que hace posible poder ser ejecutada practicamente bajo cualquier sistema operativo y/o arquitectura.

¿Ahora cual es más práctico, rápido y flexible para desarrollo?
Tengo unos requerimientos bien claros y son:
-> Programar una sola vez la parte funcional del sistema para luego sólo crear interfacez ya sea para un terminal, web, celular, etc.
-> Que sea rápido, seguro y escalable.
-> La curva de aprendizaje de nuevos conceptos sea mínimo en vista que tengo conocimientos suficientes sobre POO.

Y es que no quiero volver a programar librerías ya hechas, volver a reIdear cosas que ya estan hechas y muy probadas o tener que programar métodos, funciones para listas, combos, tab's y demás.

Si de algo estoy convencido es que hemos avanzado mucho y llego el momento de hacer uso de el conocimiento adquirido, así que espero vuestros comentarios. ¡Ah! No quiero dejar de mencionar lo que me atrajo de Delphi, cómo es su poderoso IDE y facilidad con la que puedes desarrollar aplicaciones. Delphi te deja cómo tarea la parte más creativa y crítica de cualquier proyecto de software, el análisis y diseño de la aplicación al usar este un lenguaje totalmente orientado a objetos puedes crear las estructuras más complejas para luego simplemente tomar los controles ponerlos en un contenedor (Form) y olvidarte de la parte mecánica y tediosa.

Para terminar ... muchos verán en el comentario anterior a alguien facilista y con respeto digo que no quisiera coger un editor de texto para tener que ponerme a crear código para la parte visual y manejo de controles, adoro programar sobre un editor pero para crear código funcional, que sea la columna vertebral y sostén del sistema.

Espero vuestros comentarios, hasta pronto! :D
  Responder Citando
Antiguo 22-dic-2008, 03:34   #2 (permalink)
david_f ha deshabilitado el karma
 
Fecha de Ingreso: mayo-2007
Ubicación: Santiago, República Dominicana
Mensajes: 42
david_f está desconectado
Respuesta: Desarrollar aplicación multiplataforma (Windows, Linux, Web, Celular)

Saludos.

En primer lugar, detesto decepcionarte al decirte que lo que deseas hacer, desarrollar una aplicación multiplataforma (web, cell, pc, etc) es imposible de lograr en "un solo paquete", me explico. Si desarrollas una aplicación en Java que sea "multiplataforma", depende de la máquina virtual que corra el sistema, ya que para, por ejemplo, los dispositivos móbiles, Java tiene una versión diferente, más pequeña, que es Java ME (MicroEdition), para las PC, se utiliza Java EE (Enterprise Edition) y Java SE (Standar Edition), ambas son maquinas vitruales Java, pero con ligeras diferencias para diferentes fines. Lo que programes para Java SE, no puede ser visto en Java ME (es decir, no te va a funcionar en dispositivos móbiles en general). Otra cosa, no creo que sea posible que puedas escribir y compilar un código en C/C++ que lo puedas correr en variedad de dispositivos de forma natural. No puedes crear una aplicación que la puedas correr de igual forma tanto en una terminal como en un entorno gráfico o la web. Debes decidirte por una plataforma específica. En mi opinión, te acostumbraste demasiado a Delphi y realmente no aprendiste a programar, mas bien, aprendiste a usar el IDE (y puede ponerse en duda, porque si realmente sabes programar en Delphi, sabrías que puedes crear aplicaciones tanto para Linux como para Windows), ya que veo que hay ciertos detalles o principios muy básicos que estás ignorando.

Segundo. Suena que estas detrás del "santo grial" de la programación. Quieres un lenguaje de programación que ya lo tenga todo y que también haga el trabajo por ti y que piense por ti. No quieres volver a escribir librerías ya hechas... pues simple, elije una lenguaje y consigue un framework, solo que tendrás que aprender el nuevo lenguajes, dominarlo y luego aprenderte el framework... y entonces luego empezar a crear aplicaciones. Dices que no quieres tomar un editor de texto para crear el código de la parte visual... realmente no entiendo tu intensión, ya que esa "parte visual" es la salida de tu aplicación y dependiendo la plataforma donde se corra la aplicación, esa salida varía y el código cambia. Al parecer realmente no te refieres a cambiar a un nuevo lenguaje, sino a un lenguaje con todo y IDE y plataforma integrada y que además contenga plugins para que haga todo lo que quieres que haga y te convierta el código automaticamente para todas las plataformas. En ese caso, elije un lenguaje, inventa un IDE y todos los plugins necesarios, y luego desarrolla tus aplicaciones en ese entorno.

El término "Aplicación Multiplataforma" creo que no lo tienes bien definido, o estás ampliando demasiado su alcance.

La Buena Noticia.

La buena noticia es que puedes lograr muchos de tus objetivos si desarrollas bajo web, ya que un web puede ser visto desde un celular, una pc, psp, ipod y demás. Para lograr objetivo, solo tendrías que alojar tu aplicación en un servidor web y que los "usuarios" accedan al mismo a través de un navegador.

La Mala Noticia.

La mala noticia es que con esa actitud de que "el IDE te haga todo", no soportarás programar en PHP que sería la mejor opción.
  Responder Citando
Antiguo 23-dic-2008, 10:35   #3 (permalink)
danux ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2008
Mensajes: 15
danux está desconectado
Respuesta: Desarrollar aplicación multiplataforma (Windows, Linux, Web, Celular)

Hola,
-No te compliques con la web.. depender de la conexión, la velocidad y el cliente NO es buena idea.

Java es una buena idea...
C / C++ ... NO es una buena idea, las librerías cambian.
C# <- prueba portable.NET o MONO ... de estas forma, lo puedes escribir en un lenguaje simple y ejecutar en todos lados y tiene una buena api para web y bases de datos.

Saludos.
  Responder Citando
Respuesta
No hay votos aún.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.

Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code está Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado
Trackbacks está Desactivado
Pingbacks está Desactivado
Refbacks está Desactivado



La zona horaria es GMT -6. Ahora son las 17:41.
Políticas de Uso de Foros del Web


Message Board Statistics

SEO by vBSEO 3.3.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100