He encontrado duras platicas respecto a que es mejor si una o la otra tecnología.
Hay que partir tratando de entender que aspectos pueden forzar a utilizar una tecnología o la otra.
Microsoft crea la tecnología WEBFORMS enfocándose fuertemente en lograr que programadores de aplicaciones de escritorio, con poca comprensión de las tecnologías web pudiera integrarse rápidamente al mundo WEB.
El resultado de estas facilidades tuvo como resultado muchos programadores que adquirieron malos hábitos, de análisis, diseño de aplicaciones WEB utilizando un esquema muy parecido al que se maneja en las aplicaciones de escritorio (WINFORMS). Se crea implícitamente un pensamiento también, donde el recurso no importa usamos todo lo que necesitamos.
Los programadores que realmente comprendieron las bondades avanzadas de la tecnología WEBFORMS pudieron disfrutar de una posición privilegiada al destacar sobre los programadores promedio, desarrollando aplicaciones y componentes avanzados que aportan mucho en beneficio a las necesidades empresariales.
La tecnología WEBFORMS brinda un esquema fácil de utilizar, pero la verdad es que hacer cosas interesantes es complicado y requiere de un conocimiento avanzado, y son pocos los programadores que llegaron a desarrollar esta capacidad.
WEBFORMS hace ver AJAX como un juego de niños, programadores hacen uso de esta tecnología sin tener la mínima idea de su funcionamiento, al final es bueno si te hace productivo. Pero desconocer esto con el tiempo provoca ir en direcciones equivocadas.
Podemos mencionar también que WEBFORMS incorpora todas las facilidades para crear componentes, un esquema de trabajo muy abierto para que las empresas pueden hacerle la vida fácil a los programadores, creando millones de controles complejos que hacen ver que cualquiera que sepa arrastrar y soltar puede programar aplicación WEB sofisticadas.
Por otro lado en contraparte el mundo del software libre a trabajado en FRAMEWORKS como RUBY ON RAILS, DJANGO, CODEIGNITER y otros, los cuales han explotado el modelo MVC el cual han madurado y se ha convertido en un adversario dominante.
¿Pero que se esconde detrás este modelo MVC?
La verdad es que las tecnologías WEB cada vez avanzan más rápido de lo que uno se imagina, y debemos centrar nuestra atención en realmente en lo que es importante de nuestras aplicaciones, lo cual sin duda es nuestra lógica de negocio, en ella debemos enfocar nuestros esfuerzos hacerla robusta fuerte multicapas, escalable, etc. La presentación WEB es una tecnología mas al igual que una GUI de aplicaciones de escritorio o inclusive la de las aplicaciones de dispositivos móviles.
Con el tiempo se incorporarán otras, o se estandarizarán la existentes, pero nuestro trabajo es tenerla abstraída para que esta no sea una debilidad dentro de nuestros proyectos.
Ante este escenario tan dinámico, hay que preguntarse si podemos arriesgarnos a depender de los componentes cerrados de presentación de tecnologías tipo WEBFORMS, aunque si se es un programador con altos conocimientos seguro podrá extenderla y mejorarla, y hacer que se comporten como se quiere. Lastimosamente esto no está al alcance de todos y especializarse tanto en un paradigma de componentes no es el negocio de la mayoría.
Un conjunto de componentes rígidos podría llevarnos a una obsolescencia de nuestras aplicaciones de forma dramática.
Nadie quiere esto, todos queremos estar al día soportar más y más las nuevas características de los navegadores, el esfuerzo de comprender toda la teoría de un componente WEBFORMS puede representar invertir tiempo y dejar de aprender cosas nuevas, no es extraño ver más de algún programador verse frustrado de no poder actualizar su aplicación WEBFORMS a lo más reciente porque las malas prácticas lo encerraron en un dilema.
La parte del renderizado o dibujo de los componentes en HTML hoy en día se puede hacer de tantas formas que al tener esto separado gradualmente y con el tiempo se convierte en una fortaleza, tecnologías como JAVASCRIPT hoy son mas fuertes que nunca y pueden hacer mucho de este trabajo en un par de líneas de programación, los desarrolladores expertos que conocen el HTML a profundidad, saben que la tarea es fácil, esto no les produce un malestar, pero la contraparte de los programadores con bajo conocimiento que nunca abandonaron la mentalidad de aplicaciones de escritorio, si se enfrentan a un gran reto el cual muy probablemente les tomara tiempo comprenderlo.
Las aplicaciones WEBFORMS seguramente seguirán teniendo soporte, pero esta será cada vez más costosa.
Quienes logren adoptar un patrón MVC seguramente garantizarán que sus aplicaciones prevalezcan, siendo esto más estándar y al ritmo del resto de tecnologías.
Microsoft es solido con las herramientas de desarrollo, el haber tomado participado en utilizar buenas prácticas y claridad en las tecnologías WEB contribuye mucho a ser una mejor opción.
El escenario cambia bastante para las empresas, antes existía una línea muy fuerte y restrictiva para poder poner estos proyectos en producción se requería de infraestructura, esto cambió radicalmente con MVC, ahora esto es multiplataforma. Reduciendo costos en hospedaje, comunidades de programadores más amplias, soporte para distintos sistemas operativos. Podría inclinarse cada vez mas la demanda de programadores de C# en MVC.
Para quienes abracen el cambio las propuestas MVC ya no será un riesgo que impacte dramáticamente a nuestras aplicaciones la evolución de los navegadores y sus nuevas características, con pocos cambios podríamos actualizarnos a diferencia de WEBFORMS donde si dependeríamos de que nuestros componentes cuenten con la flexibilidad necesaria para cada nuevo cambio.
Mantener el estado, encapsular funcionalidad, realmente es algo trivial, pintar el HTML es algo simple, probablemente lo que más se extrañara de WEBFORMS será seguramente la simpleza de sentirnos unos expertos de AJAX con el UPDATEPANEL.
Hay que partir tratando de entender que aspectos pueden forzar a utilizar una tecnología o la otra.
Microsoft crea la tecnología WEBFORMS enfocándose fuertemente en lograr que programadores de aplicaciones de escritorio, con poca comprensión de las tecnologías web pudiera integrarse rápidamente al mundo WEB.
El resultado de estas facilidades tuvo como resultado muchos programadores que adquirieron malos hábitos, de análisis, diseño de aplicaciones WEB utilizando un esquema muy parecido al que se maneja en las aplicaciones de escritorio (WINFORMS). Se crea implícitamente un pensamiento también, donde el recurso no importa usamos todo lo que necesitamos.
Los programadores que realmente comprendieron las bondades avanzadas de la tecnología WEBFORMS pudieron disfrutar de una posición privilegiada al destacar sobre los programadores promedio, desarrollando aplicaciones y componentes avanzados que aportan mucho en beneficio a las necesidades empresariales.
La tecnología WEBFORMS brinda un esquema fácil de utilizar, pero la verdad es que hacer cosas interesantes es complicado y requiere de un conocimiento avanzado, y son pocos los programadores que llegaron a desarrollar esta capacidad.
WEBFORMS hace ver AJAX como un juego de niños, programadores hacen uso de esta tecnología sin tener la mínima idea de su funcionamiento, al final es bueno si te hace productivo. Pero desconocer esto con el tiempo provoca ir en direcciones equivocadas.
Podemos mencionar también que WEBFORMS incorpora todas las facilidades para crear componentes, un esquema de trabajo muy abierto para que las empresas pueden hacerle la vida fácil a los programadores, creando millones de controles complejos que hacen ver que cualquiera que sepa arrastrar y soltar puede programar aplicación WEB sofisticadas.
Por otro lado en contraparte el mundo del software libre a trabajado en FRAMEWORKS como RUBY ON RAILS, DJANGO, CODEIGNITER y otros, los cuales han explotado el modelo MVC el cual han madurado y se ha convertido en un adversario dominante.
¿Pero que se esconde detrás este modelo MVC?
La verdad es que las tecnologías WEB cada vez avanzan más rápido de lo que uno se imagina, y debemos centrar nuestra atención en realmente en lo que es importante de nuestras aplicaciones, lo cual sin duda es nuestra lógica de negocio, en ella debemos enfocar nuestros esfuerzos hacerla robusta fuerte multicapas, escalable, etc. La presentación WEB es una tecnología mas al igual que una GUI de aplicaciones de escritorio o inclusive la de las aplicaciones de dispositivos móviles.
Con el tiempo se incorporarán otras, o se estandarizarán la existentes, pero nuestro trabajo es tenerla abstraída para que esta no sea una debilidad dentro de nuestros proyectos.
Ante este escenario tan dinámico, hay que preguntarse si podemos arriesgarnos a depender de los componentes cerrados de presentación de tecnologías tipo WEBFORMS, aunque si se es un programador con altos conocimientos seguro podrá extenderla y mejorarla, y hacer que se comporten como se quiere. Lastimosamente esto no está al alcance de todos y especializarse tanto en un paradigma de componentes no es el negocio de la mayoría.
Un conjunto de componentes rígidos podría llevarnos a una obsolescencia de nuestras aplicaciones de forma dramática.
Nadie quiere esto, todos queremos estar al día soportar más y más las nuevas características de los navegadores, el esfuerzo de comprender toda la teoría de un componente WEBFORMS puede representar invertir tiempo y dejar de aprender cosas nuevas, no es extraño ver más de algún programador verse frustrado de no poder actualizar su aplicación WEBFORMS a lo más reciente porque las malas prácticas lo encerraron en un dilema.
La parte del renderizado o dibujo de los componentes en HTML hoy en día se puede hacer de tantas formas que al tener esto separado gradualmente y con el tiempo se convierte en una fortaleza, tecnologías como JAVASCRIPT hoy son mas fuertes que nunca y pueden hacer mucho de este trabajo en un par de líneas de programación, los desarrolladores expertos que conocen el HTML a profundidad, saben que la tarea es fácil, esto no les produce un malestar, pero la contraparte de los programadores con bajo conocimiento que nunca abandonaron la mentalidad de aplicaciones de escritorio, si se enfrentan a un gran reto el cual muy probablemente les tomara tiempo comprenderlo.
Las aplicaciones WEBFORMS seguramente seguirán teniendo soporte, pero esta será cada vez más costosa.
Quienes logren adoptar un patrón MVC seguramente garantizarán que sus aplicaciones prevalezcan, siendo esto más estándar y al ritmo del resto de tecnologías.
Microsoft es solido con las herramientas de desarrollo, el haber tomado participado en utilizar buenas prácticas y claridad en las tecnologías WEB contribuye mucho a ser una mejor opción.
El escenario cambia bastante para las empresas, antes existía una línea muy fuerte y restrictiva para poder poner estos proyectos en producción se requería de infraestructura, esto cambió radicalmente con MVC, ahora esto es multiplataforma. Reduciendo costos en hospedaje, comunidades de programadores más amplias, soporte para distintos sistemas operativos. Podría inclinarse cada vez mas la demanda de programadores de C# en MVC.
Para quienes abracen el cambio las propuestas MVC ya no será un riesgo que impacte dramáticamente a nuestras aplicaciones la evolución de los navegadores y sus nuevas características, con pocos cambios podríamos actualizarnos a diferencia de WEBFORMS donde si dependeríamos de que nuestros componentes cuenten con la flexibilidad necesaria para cada nuevo cambio.
Mantener el estado, encapsular funcionalidad, realmente es algo trivial, pintar el HTML es algo simple, probablemente lo que más se extrañara de WEBFORMS será seguramente la simpleza de sentirnos unos expertos de AJAX con el UPDATEPANEL.
Comentarios
Publicar un comentario