2009-03-24 12 views
10

Para mí, parece que el punto principal de Seaside es que se parece más a la programación normal de "escritorio".Cuál es la diferencia entre la programación de Seaside y otra programación web

El flujo de control se parece mucho más a la programación "tradicional" en lugar de la programación "web" . ¿Es esa una impresión correcta?

Sé que se trata de programación web, pero no se parece al programador. Parece mucho más que conducir aplicaciones de "escritorio". ¿Esto aclara la pregunta un poco?

Respuesta

9

Su impresión es correcta. Seaside está diseñado para lo que yo llamo un flujo de control tipo árbol, como lo tienen las aplicaciones GUI de escritorio. Comparando con el Aida/Web, otro framework web de Smalltalk, diseñado para el flujo de control tipo gráfico, y eso es lo que tienes en la web.

Pero el flujo de control similar a un árbol es muy útil en casos como los cuadros de diálogo de confirmación, o para ventanas emergentes como las muy frecuentes en Facebook en estos días. Es por eso que estamos introduciendo el flujo de control similar a un árbol en Aida/Web también, es decir, estamos combinando ambos flujos de control.

1

Seaside es un marco de aplicación para desarrollar aplicaciones web escritas en smalltalk. ¿Qué quiere decir con que parece "tradicional" programación

Editar -

Mar arquitectura es diferente de en la que sus páginas web se construyen como árboles de los componentes individuales, con estado, cada uno de encapsulación una pequeña porción de una página

+0

La pregunta no era "¿Qué es Seaside?", Sino "¿En qué se diferencia Seaside?" – Chuck

+0

esa actualización ya se ha hecho, pero por alguna razón acabo de recibir un voto negativo? – TStamper

15

El objetivo de Seaside no es realmente ser como la programación de escritorio, aunque trata de quitarle gran parte del dolor al desarrollo web. Mar es conocida por dos cosas que se podría considerar "escritorio aplicación similar":

  1. usando continuaciones a permitir escribir los procesos de múltiples pasos que incitan al usuario la información
  2. usando bloques (cierres) a proporcionar devoluciones de llamada "" controlador de eventos parecidos en su código cada vez que se hace clic en enlaces, formularios enviados, etc.

Estas cosas enormemente a simplificar ciertas tareas de desarrollo web, aunque la primera termina siendo utilizada con poca frecuencia en la práctica.

Mar ofrece muchas otras cosas, sin embargo:

  • La capacidad de escribir aplicaciones web en Smalltalk (muy productivas y agradables)
  • "componentes" Composable, reutilizables
  • componentes pueden delegar en otros componentes , que reemplaza solo esa parte de la página
  • La fácil administración del estado de la sesión y de cierto estado se puede marcar para que se retrotraiga siempre que el usuario use el botón Atrás para que siempre tenga el valor correcto cuando se ejecutan las devoluciones de llamadas
  • Una muy agradable API Canvas para generar mediante programación HTML, JQuery, Scriptaculous
  • La capacidad de depurar y corregir los errores de vivir en un sitio en funcionamiento

mayoría de ellos no son exclusivos de Mar pero son un tanto inusual . Entonces, ¿cómo es diferente de otra programación web? Tienes que escribir en Smalltalk. No tiene que cambiar el contexto mentalmente hacia atrás y hacia adelante entre el código y un lenguaje de plantillas. No tiene que preocuparse por los nombres de los campos de los formularios, las URL, etc. a menos que/hasta que lo desee. Probablemente no odies tanto la programación web si usas Seaside.

La gente puede descubrir Seaside debido a sus "características de programación de escritorio", pero generalmente se quedan para todas las demás cosas.

Cuestiones relacionadas