Carlos, coincido con vos en lo referente a la abstracción. De hecho, tuve
que usar el patrón Model  - View - Presenter, implementando el Web Client
Software Factory App Block, a fin de lograr una applicación web menos
desacoplada y que pueda ser objeto de pruebas unitarias (algo tan necesario
y útil en estos días).

Saludos.


2008/12/5 Carlos Peix <[EMAIL PROTECTED]>

>  Hola Pablo,
>
> Gracias por el dato concreto. Solo quiero aclarar que mi mala experiencia
> usando WebForms no se relaciona con la performance si no con la abstraccion
> en si.
>
> Un saludo
>
>  *Carlos Peix*
>
>  ------------------------------
> *De:* puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] *En nombre de *Pablo
> Dettori
> *Enviado el:* Viernes, 05 de Diciembre de 2008 01:25 p.m.
> *Para:* puntonet@mug.org.ar
> *Asunto:* [puntonet] AJAX y performance
>
> Qué tal. Ciertamente después de haber desarrollado aplicaciones web
> corporativas (con ASP.NET 1.1 y ASP.NET 2.0) que son accedidas desde
> internet por aproximadamente 300 usuarios en forma concurrente, debo decir
> que, desde el punto de vista performance, no recomiendo usar web forms.
> Aunque logré mejorar la velocidad de respuesta notablemente, pasando el
> viewstate del lado del servidor, creo que empleando Monorail o ASP.NETMVC, 
> podrían obtenerse resultados mucho más satisfactorios.
>
>
> 2008/12/5 Carlos Peix <[EMAIL PROTECTED]>
>
>  Hola Jorge,
>>
>> Yo creo que tenes razon. Estoy seguro de que la gente que penso la
>> abstraccion WebForms debe haberla pensado para un campo de aplicacion
>> determinado, seguramente distinto al mio.
>>
>> No obstante, vale la pena contrastar que tipo de abstacciones usan otras
>> tecnologias para el desarrollo de aplicaciones web, se me ocurren ahora
>> Rails, Monorail, PHP, JSP. Todas ellas, en mayor o menor medida, hacen algo
>> mas parecido a ASP.NET MVC, no a WebForms.
>>
>> Por ultimo y mas importante, lo que vale en definitiva trabajar de la
>> manera que uno se siente mas comodo, si puede :-)
>>
>> Un saludo
>>
>>  *Carlos Peix*
>>
>>  ------------------------------
>>  *De:* puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] *En nombre de *Jorge
>> Monsalvo
>> *Enviado el:* Viernes, 05 de Diciembre de 2008 10:26 a.m.
>> *Para:* puntonet@mug.org.ar
>> *Asunto:* [puntonet] AJAX y performance
>>
>>    Carlos, Luis,
>>
>> Es completamente cierto lo que dicen. Si nos ponemos a exigir el modelo de
>> WebForms seguro que hay que hilar muy fino para obtener buenos resultados.
>>
>> ¿Será que estamos queriendo usar las páginas y sitios para hacer cosas
>> para las que no fueron inventadas?..
>>
>> Saludos
>> Jorge
>>
>>   ------------------------------
>> *De:* Luis Farzati <[EMAIL PROTECTED]>
>> *Para:* puntonet@mug.org.ar
>> *Enviado:* jueves 4 de diciembre de 2008, 13:38:52
>> *Asunto:* [puntonet] AJAX y performance
>>
>> Hola Jorge,
>>
>> Estoy de acuerdo con vos, ojo, con mi mención acerca de las leaky
>> abstractions no quiero decir que volvamos a laburar todos en
>> assembler... estoy a favor de las herramientas y a favor de ir
>> subiendo de nivel.
>>
>> El tema es que hay herramientas y herramientas, y a la hora de elegir
>> uno debe considerar la que menos "leaky" sea. La solución AJAX
>> propuesta por Microsoft, al igual que WebForms, me parece muy mala en
>> esto. Tal vez te alcanza para una aplicación de intranet, pero si
>> querés desarrollar una aplicación web expuesta a la Internet de hoy en
>> día (cada vez más estándar, cada vez más veloz, cada vez más diversa y
>> masiva) te empezás a encontrar con estos leaks y a la larga terminás
>> pasando más tiempo customizando y buscando workarounds. El mismo
>> tiempo que hubieses tardado en utilizar una herramienta tal vez menos
>> abstracta pero más efectiva.
>>
>> Igual Microsoft se está dando cuenta de esto, y por algo está yendo
>> hacia MVC. La señal que interpreto con eso es que va a dejar WebForms
>> para sitios caseros ó de intranet, y empujar MVC para las
>> aplicaciones.
>>
>> Saludos
>> Luis
>>
>> 2008/12/4 Jorge Monsalvo <[EMAIL PROTECTED]>:
>> > Les dejo mi humilde opinión. Creo que si las herramientas no nos
>> simplifican
>> > las cosas entonces no sirven. Quiero decir, MS Ajax hace que sea más
>> facil
>> > programar una actualización parcial, sin tener que preocuparme mucho de
>> como
>> > lo hace. Si necesito saber lo indispensable como para "ajustar" lo hecho
>> y
>> > mejorar la performance, pero si para usarlo tengo que ser un experto en
>> Java
>> > entonces no sirve. Es como si para usar una pinza deba aprender Dinámica
>> y
>> > fuerzas aplicadas al principio de palanca asi se que cuanto mas largo
>> sea el
>> > mango mas agarre voy a tener....
>> > Seguro que si programo en C (plano y básico) voy a obtener un código de
>> > máquina mas simple que si utilizo el Framework de .NET pero ¿Alguien
>> quiere
>> > reescribir una librería para TCP/IP o prefiere usar las clases de
>> > System.Net?
>> > Saludos
>> >
>> > Jorge
>> > ________________________________
>> > De: Luis Farzati <[EMAIL PROTECTED]>
>> > Para: puntonet@mug.org.ar
>> > Enviado: jueves 4 de diciembre de 2008, 9:20:04
>> > Asunto: [puntonet] AJAX y performance
>> >
>> > Totalmente de acuerdo Carlos.
>> >
>> > Yo sólo digo: leaky abstractions.
>> > http://www.joelonsoftware.com/articles/LeakyAbstractions.html
>> >
>> >
>> > 2008/12/4 Carlos Peix <[EMAIL PROTECTED]>:
>> >> Hola gente,
>> >>
>> >> Yo no conozco nada de MS Ajax (si, ya se hizo palabra, no hace falta
>> >> ponerla
>> >> en mayusculas como sigla), salvo la primerisima version, aquel Remote
>> >> Scripting incluido en Visual Interdev 6.0 :-). Funciono muy bien por
>> >> muchos
>> >> años.
>> >>
>> >> Mi opinion es que MS Ajax puede configurarse adecuadamente para que
>> tenga
>> >> un
>> >> rendimiento razonable, teniendo en cuenta la capa de abstraccion que
>> >> agrega
>> >> sobre Ajax hecho a mano (con Prototype o jQuery). Creo que los secretos
>> ya
>> >> fueron mencionados, el tema de conditional o mantener un viewstate
>> >> pequeño.
>> >>
>> >> Una idea mas: supongo que MS Ajax envia el viewstate previendo que el
>> post
>> >> pueda modificarlo, por lo cual debe estar actualizado. Me pregunto, si
>> hay
>> >> garantia de que la comunicacion Ajax no modifica ningun control con
>> >> viewstate activado y que no es enviado ningun control en la misma
>> >> condicion,
>> >> no podria evitarse el envio de viewstate?
>> >>
>> >> Ahora un pensamiento mas abstracto:
>> >>
>> >> Carlos decide usar update panel porque no quiere meterse en detalles de
>> >> Ajax, pero encuentra que tiene que tocar aqui, alla, ver que el
>> viewstate
>> >> sea pequeño (cosa siempre aconsejable), analizar configuraciones mas
>> >> oscuras, etc. No les parece que igual tuvo que meterse en los detalles
>> >> para
>> >> lograr un rendimiento similar (o inferior) al que proveen otras
>> >> soluciones?
>> >> No es preferible dedicar tiempo a aprender una tecnologia determinada
>> que
>> >> dedicar el mismo o mas tiempo a comprender un componente determinado?
>> >> (noten
>> >> la diferencia entre tecnologia y componente).
>> >>
>> >> Me parece muy similar a la situacion que tuvimos muchos con WebForms,
>> nos
>> >> fuimos detras de las mieles del desarrollo Web identico al desktop para
>> no
>> >> aprender HTTP, HTML. Yo no logre nunca estar comodo en ese entorno,
>> aunque
>> >> se que muchos lo han hecho.
>> >>
>> >> Saludos
>> >>
>> >> Carlos Peix
>> >> ________________________________
>> >> De: puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] En nombre de
>> Eugenio
>> >> Alonso
>> >> Enviado el: Miércoles, 03 de Diciembre de 2008 08:38 p.m.
>> >> Para: puntonet@mug.org.ar
>> >> Asunto: [puntonet] AJAX y performance
>> >>
>> >> Coincido, yo estoy usando updatepanel en ASP.NET 3.5, empezamos
>> >> inicialmente
>> >> sin pensar en usar nada de AJAX, y en las pruebas con 2 líneas de
>> código
>> >> agregando el updatepanel, un ABM completo con registros de cabecera y
>> >> detalle, combos, y una grilla de búsqueda (con orden y paginado)
>> >>
>> >> Anduvo perfecto, en tiempos mejoro un poco pero no mucho y la
>> experiencia
>> >> de
>> >> uso mejoro muchísimo.
>> >>
>> >>
>> >>
>> >> Lo bueno de esto es que no es necesario saber nada de AJAX, al menos
>> para
>> >> empezar.
>> >>
>> >>
>> >>
>> >> Saludos, Eugenio
>> >>
>> >>
>> >>
>> >> ________________________________
>> >>
>> >> De: puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] En nombre de
>> Matías
>> >> Aguilar
>> >> Enviado el: Miércoles, 03 de Diciembre de 2008 03:10 p.m.
>> >> Para: puntonet@mug.org.ar
>> >> Asunto: [puntonet] AJAX y performance
>> >>
>> >>
>> >>
>> >> "UpdatePanel es una mentira" -> tengo que decir que no estoy para nada
>> de
>> >> acuerdo. Puntos a tener en cuenta:
>> >> -la clásica forma de usar Ajax, es decir, escribiendo el código
>> javascript
>> >> que haga los manejos asincrónicos a mano seguramente será más optimo en
>> >> cuanto a performance.
>> >> -pero la idea de MS AJAX es la increible facilidad de uso, reduce
>> >> considerablemente el código a escribir y la mantenibilidad del mismo.
>> >> -es verdad que MS AJAX manda la información del ViewState en sus
>> llamadas
>> >> asincrónicas, pero eso está perfecto, es una de las cosas que hace
>> "rica"
>> >> a
>> >> una aspx. En este ViewState tenes los datos que necesitan los controles
>> >> que
>> >> definiste en la página. Y si el ViewState te parece inecesario para un
>> >> control (o para todos los controles), como ser un GridView (porque
>> >> preferis
>> >> cargar los datos cada vez que cargas la página), se lo podés
>> deshabilitar,
>> >> y
>> >> en ese caso, el ViewState sería más liviano.
>> >> -imaginate usando el ajax clásico y tener que pasar los datos del
>> >> ViewState,
>> >> sería un laburo importante. Es mucho más fácil hacer que el MS AJAX no
>> use
>> >> el ViewState.
>> >> -si los controles MS AJAX están bien configurados debería andar bien y
>> >> rápido. Lo principal es restringir los UpdatePanel sólo a la porción de
>> >> código que necesita actualizarse y nada más, y configurarlos como
>> >> "CONDITIONAL".
>> >> -y más allá de todo, la "experiencia de usuario" sigue siendo mejor (o
>> >> debería andando todo bien) usando MS AJAX que no usando.
>> >>
>> >> Al menos eso puedo decir de mi experiencia con MS AJAX.
>> >>
>> >> Saludos.
>> >>
>> >> Pablo Dettori escribió:
>> >>
>> >> Qué tal. Te comento que hace unos meses, desarrollando una aplicación
>> con
>> >> ASP.NET 2.0, decidí incluir ASP.NET Ajax. El UpdatePanel es una
>> mentira,
>> >> simple y llanamente. Yo lo experimenté en carne propia. Te recomiendo
>> este
>> >> artículo :
>> >> http://msdn.microsoft.com/en-us/magazine/cc163413.aspx
>> >>
>> >> 2008/12/2 Carlos Marcelo Santos <[EMAIL PROTECTED]>
>> >>
>>  >> Gracias Diego. Esperaba encontrarte en Bartolomeo el otro dia. Ya nos
>> >> veremos.
>> >>
>> >> Yendo al grano. No estoy haciendo javascript a mano.
>> >>
>> >> En los Triggers del UpdatePanel no agregué nada, por las dudas miré y
>> la
>> >> colección está vacía
>> >>
>> >> La página actualmente tiene un Wizard, en uno de sus pasos, ubiqué un
>> Tab
>> >> Container y en uno de sus tabs puse el UpdatePanel que contiene al
>> Combo,
>> >> al
>> >> DataGrid y tres labels con una imagen de 3K.
>> >>
>> >> No es que ande mal, hasta ahora pude hacer todo lo que necesité, el
>> tema
>> >> son
>> >> estos tiempos que llegan a ser 4 o 5 veces lo que sin AJAX.
>> >>
>> >> Mañana más fresco hago una prueba del UpdatePanel con el Combo, el
>> >> DataGrid
>> >> y nada más, a ver como anda. Después te cuento.
>> >>
>> >>
>> >>
>> >> Un abrazo.
>> >>
>> >>
>> >>
>> >> Carlos Marcelo Santos.
>> >>
>> >>
>> >>
>> >> From: puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of
>> Diego
>> >> Jancic
>> >> Sent: Martes, 02 de Diciembre de 2008 09:39 p.m.
>> >>
>> >> To: puntonet@mug.org.ar
>> >> Subject: [puntonet] AJAX y performance
>> >>
>> >>
>> >>
>> >> Ventajas de MS AJAX:
>> >>
>> >> -          Se puede poner un lindo "Loading…" que lleva tu pagina al
>> siglo
>> >> XXI
>> >>
>> >> Desventajas de MS AJAX:
>> >>
>> >> -          Casi todo el resto (si no lo sabes usar bien y le dedicas
>> >> varias
>> >> horas a debugging)
>> >>
>> >>
>> >>
>> >> Yendo a lo importante, es raro que haya tanta diferencia de tiempo,
>> pero
>> >> algunas cosas que deberías tener en cuenta son:
>> >>
>> >> -          El IsPostBack no funciona cuando hay una llamada de MS AJAX
>> >>
>> >> -          El UpdatePanel debería estar abarcar lo menos posible (para
>> >> minimizar el trafico)
>> >>
>> >> -          Fijate la propiedad UpdateMode (o algo asi) y los Triggers,
>> >> para
>> >> determina que cosas disparan el update. (Estas usando javascript a
>> mano?)
>> >>
>> >>
>> >>
>> >> MsAjax es bastante simple cuando respetas ciertas cosas, y no debería
>> >> funcionarte tan mal. Queres mandar algo de código esquematico?
>> >>
>> >>
>> >>
>> >> Saludos!
>> >>
>> >>
>> >>
>> >> From: puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] On Behalf Of
>> Carlos
>> >> Marcelo Santos
>> >> Sent: Tuesday, December 02, 2008 11:20 PM
>> >> To: puntonet@mug.org.ar
>> >> Subject: [puntonet] AJAX y performance
>> >>
>> >>
>> >>
>> >> Estimados Colisteros:
>> >>
>> >> Tengo una página web con muchos controles, gradualmente estoy
>> incorporando
>> >> AJAX, entre otros controles tengo un combo relacionado a un datagrid,
>> en
>> >> el
>> >> change del combo refresco el datagrid. Esto, sin AJAX insume
>> >> aproximadamente
>> >> un segundo, con AJAX siete segundos. En cuanto al code behind es
>> >> exactamente
>> >> el mismo.
>> >>
>> >> Al hacer un debug lo primero que encontré es que, con AJAX, tengo un
>> doble
>> >> load en la página, esto, lógicamente produce una sobrecarga, pero es
>> >> mínima
>> >> ya que casi toda la diferencia de tiempo se produce en el render de la
>> >> página.
>> >>
>> >> ¿Esto es así? ¿Hay algo que no tuve en cuenta? ¿Se puede mejorar?
>> >>
>> >>
>> >>
>> >> Gracias.
>> >>
>> >>
>> >>
>> >> Carlos Marcelo Santos.
>> >>
>> >>
>> >>
>> >> No virus found in this outgoing message.
>> >> Checked by AVG.
>> >> Version: 7.5.552 / Virus Database: 270.9.12/1824 - Release Date:
>> >> 02/12/2008
>> >> 09:31 a.m.
>> >>
>> >>
>> >>
>> >> No virus found in this incoming message.
>> >>
>> >> Checked by AVG.
>> >> Version: 7.5.552 / Virus Database: 270.9.12/1824 - Release Date:
>> >> 02/12/2008
>> >> 09:31 a.m.
>> >>
>> >>
>> >>
>> >> No virus found in this outgoing message.
>> >> Checked by AVG.
>> >> Version: 7.5.552 / Virus Database: 270.9.12/1824 - Release Date:
>> >> 02/12/2008
>> >> 09:31 a.m.
>> >>
>> >>
>> >>
>> >> --
>> >>
>> >> "La imaginación es más importante que el conocimiento..."
>> >
>> >
>> > ________________________________
>> > Yahoo! Cocina
>> > Recetas prácticas y comida saludable
>> > Visitá http://ar.mujer.yahoo.com/cocina/
>>
>>
>> ------------------------------
>>
>> Yahoo! Cocina
>> Recetas prácticas y comida saludable
>> Visitá http://ar.mujer.yahoo.com/cocina/
>>
>
>

Reply via email to