2009-07-01 25 views
12

Tengo que escribir una aplicación web, y no estoy seguro de qué tecnología elegir. La interfaz de usuario debe parecerse a una aplicación de escritorio. Desde mi experiencia (limitada) con HTML, CSS y JavaScript, sé que esto no es nada fácil. Lo que me gustaría es poder programar como en C++, C# o Java, porque creo que estos lenguajes son mucho más adecuados para implementar una GUI.Desarrollo web sin usar HTML/CSS/JavaScript

Mi pregunta es triple:

  • Es esto posible?
  • ¿Qué tecnologías se pueden usar para esto?
  • Y si es posible, ¿por qué la mayoría de las aplicaciones web todavía se crean con HTML y JavaScript?

Actualización: ¡Gracias por las muchas respuestas!

+0

votación para cerrar debido a esto se ha convertido en un vertedero de recomendaciones. –

Respuesta

8

Sí, es posible que pueda usar Silverlight o JavaFX (aunque requeriría un mínimo de HTML como 4 etiquetas ...).

El problema con Silverlight o JavaFX y Flash al mismo tiempo es que aspiran a SEO, que es la optimización del motor de búsqueda, ya que Google & co no puede mirar dentro de su aplicación.

+0

+1 para JavaFX, que olvidé mencionar :-) –

+0

¡Me sorprende que soy el único que lo mencione! Por mucho que no me gusten las aplicaciones JavaFX, es una alternativa válida y bien establecida a Flash y Silverlight. –

+0

Google (no sé sobre otros motores de búsqueda) puede mirar dentro de Flash muy bien si le dices a Flash/Flex/lo que sea para producir 'SWF accesibles'. –

3

La mayoría de las aplicaciones web están hechas con HTML y JavaScript para su portabilidad. Pero, si desea una interfaz de usuario realmente "rica", es posible que desee investigar Adobe Flash o Flex, o Microsoft Silverlight (con el que puede programar en C#). Pero, requerirá que sus usuarios tengan el complemento adecuado.

+0

La sugerencia de Gab de JavaFX es igualmente válida. –

+0

Abode flex, se olvidó de este. –

1

Silverlight parece que sería más cerca de lo que está hablando (C#, etc)

También es posible usar flash para aplicaciones de Internet.

Honestamente, DEBE aprender al menos HTML básico antes de iniciar la programación web. Debería aprender mucho más que eso, pero como mínimo.

Y para responder a su última pregunta, ¿por qué la gente todavía utiliza HTML ...

No todo el mundo el uso de la web se encuentra en un ordenador de sobremesa moderadamente potente. Las personas acceden a la web desde teléfonos, programas de computadora, etc. No todos estos dispositivos son compatibles con RIA, por lo que se quedan con dejarlos o colocarlos en un medio que todos puedan ver.

Además, la accesibilidad (personas ciegas, por ejemplo) requiere lectores de pantalla para ayudarlos en la web. Debido a esto, la capacidad de leer un documento a un usuario es imprescindible.

Sin duda hay más razones, pero esos son algunos ejemplos.

1
  • Silverlight/Flash/etc
  • Por muchas razones: la accesibilidad, SEO, la portabilidad
3

Puede utilizar Flex, Silverlight o Flash para crear interfaces ricas.

Si no te gustan los HTML y CSS, puedes usar marcos CSS como blueprint, HAML, SASS. Si no le gusta el javascript, puede mejorar la experiencia usando jquery o prototype.

El uso de HTML le da más visibilidad. Por ejemplo, muchos dispositivos portátiles no manejan Flash, y la mayoría de las personas no tienen Silverlight. También hay problemas de SEO. Incluso si Google ahora está haciendo referencia al contenido flash, aún está muy por detrás de la referencia HTML.

Finalmente, para mí, una aplicación web no debe parecerse a una aplicación de escritorio. Pero si realmente quiere hacerlo, hay manera de hacerlo:

alt text http://cappuccino.org/learn/tutorials/automatic-layout/images/280SlidesOverlay.png

(capuchino)

+0

"una aplicación web no debe verse como una aplicación de escritorio". Ciertamente estoy de acuerdo. Sin embargo, dentro de mi empresa quieren portar nuestra aplicación C++ a una aplicación web, así que creo que querrán ver la funcionalidad * all * portada :( –

4

no estoy convencido esa apariencia de una aplicación de escritorio es la clave del éxito, y ¿qué significa eso de todos modos?

Jquery UI te da una idea de lo que es posible con el combo estándar html/css/js, y es fácil de implementar.

1

Como he visto la sintaxis utilizada en Java FX, creo que sería mejor con un Applet de Java normal (siendo un poco subjetivo con buenas razones). Un Applet es una aplicación Java (con ciertas restricciones) integrada en el navegador.

La razón por la que HTML/CSS/Javascript se usa para páginas web es porque para eso están destinadas. Le permiten crear documentos que se pueden buscar y son flexibles con respecto al diseño, p. Poner un Applet de Java (por ejemplo) en el navegador lo restringe cuando se trata de apariencia, estilo, SEO (como se mencionó) +++ ...

Silverlight es también una alternativa, como se sugiere. Esa es también una aplicación integrada que se ejecuta en el navegador.

Si domina Java, un applet sería una opción decente si puede vivir con estas desventajas.

1

Eche un vistazo a Wicket. Puede crear una aplicación web con codificación solo en Java de una manera muy similar a la que hace con las aplicaciones de escritorio con Swing.

EDITADO: Ok, tengo que admitir que necesitas un poco de experiencia con HTML (que tienes), pero Wicket aprovecha al máximo las complicadas funciones de JavaScript y AJAX para ti.

También GWT es algo similar: traduce automáticamente el código Java a JavaScript y genera la mayor parte del HTML para usted.

9

Puede usar Python con Pyjamas, Objective-J (y un poco de JavaScript) con Cappuccino, o Java con GWT.

Si no te importa tener que depender de plugins del navegador, también puede mirar a Adobe Air, Adobe Flex, Flash, Silverlight o JavaFX (o simplemente Java).

Para responder a su otra pregunta, la mayoría de las aplicaciones web están escritas en HTML/CSS/JS porque son lo que la mayoría de los navegadores pueden ejecutar sin ayuda. Todo lo que mencioné anteriormente se compila o depende de que el usuario tenga un complemento instalado.

6

Unos pocos puntos:

Es imposible tener una página web sin HTML.

Si utiliza complementos como Flash, ya que otros han sugerido que todavía necesita HTML, porque ese es el idioma de la web. HTML, CSS y Javascript se usan ampliamente porque los complementos son principalmente de propiedad y el navegador no los entiende.

Por ejemplo, normalmente no se puede copiar y pegar texto fácilmente desde los complementos, y no funcionan otras funciones y atajos del navegador. Tendrás que sopesar qué es más importante.

Si su aplicación debe verse como una aplicación de escritorio, lo convierten en una aplicación de escritorio

Por qué no hacer una aplicación de escritorio, con capacidades de conexión a Internet? Es un poco engañoso hacer que parezca algo que no es, y también raro cuando se ejecuta dentro de otra aplicación (el navegador).

Y cualquiera que sea el estilo que use, todavía no se verá como el sistema operativo del usuario en la mayoría de los casos. Cada sistema operativo es diferente, y cada uno permite mucha personalización. Puede usar un marco multiplataforma para eliminar o reducir estos problemas.

+0

"¿Por qué no crear una aplicación de escritorio?": Ya tenemos un cliente de escritorio para nuestro servidor, pero nuestro departamento de ventas ahora piensa que las aplicaciones web son el camino a seguir :-( –

+0

Luego debe explicarles los pros y los contras de cada enfoque y cómo cada uno se adapta a su proyecto. Si es una aplicación web * es * más apropiado, recomiendo mantenerlo "abierto" y accesible mediante el uso de HTML sobre complementos, y hacer que funcione como una aplicación web, no como una aplicación de escritorio. – DisgruntledGoat

0

puede tratar de utilizar Intraweb http://en.wikipedia.org/wiki/Intraweb http://www.atozed.com/intraweb/index.en.aspx

ningún conocimiento js necesario - escribir en Delphi Pascal puro.

O si lo prefiere solución de software gratuito continuación Morfik http://morfik.com/ Tiene versiones para FreePascal, C# y Visual Basic

0

Usted puede tener una oportunidad con ZK (http://www.zkoss.org/zkdem) un poderoso marco RIA,

Con este fresco framework, puedes construir tu aplicación ajax completamente con Java y xml.

0

Visual WebGUI

http://www.gizmox.com

Se puede programar como si estuviera construyendo una aplicación de escritorio de Windows Forms en C#, VB.Net o su elección de lenguaje de programación .NET. Diseñadores de formularios WYSIWYG completos al igual que WinForms. No se necesitan conocimientos de HTML, Javascript o CSS, a menos que desee personalizar los controles listos para usar. Sin embargo, esto no es realmente necesario si solo desea una aplicación de estilo WinForms, ya que Visual WebGUI ya es compatible con la mayoría de los controles de WinForms como puede encontrar en Visual Studio. Simplemente implementan todos los controles de estilo de WinForms para representar toda la parte del cliente en el navegador web. Hay algunas pequeñas diferencias en la forma en que maneja los diálogos modales o los cuadros de mensajes como lo haría normalmente en WinForms, pero aparte de eso, es como codificar una aplicación WinForms.

1

Una buena alternativa es Vaadin. Puede codificar aplicaciones web utilizando Java (o cualquier lenguaje para la JVM) sin tener que escribir HTML o JavaScript (pero está disponible cuando sea necesario).