¿Entonces quieres comenzar a desarrollar tu primera aplicación web? ¿Quiere saber cómo puede comenzar rápidamente y desarrollar su primera aplicación web? Bueno, aquí están las buenas noticias, estás en el lugar correcto. Con estas series de tutoriales de desarrollo de aplicaciones web, estamos aquí para guiarlo a través del desarrollo de su primera aplicación web y más. Pero, hay algunos puntos antes de comenzar. Primero, debemos mencionar que estas series de tutoriales están destinadas a un público más técnico con experiencia previa en diseño web y desarrollo. En segundo lugar, existen diferentes enfoques para incluso desarrollar una aplicación simple. Puede copiar y pegar algo de código y llamarlo un éxito, o adoptar un enfoque de ingeniería más estricto y crear una base de código que tenga casos de prueba, fácilmente ampliables o incluso escalables para futuras versiones, en caso de que decida construir más funciones en su arquitectura existente En esta serie de tutoriales vamos a desarrollar una aplicación web muy simple, y construir más y más en el mismo código. Porque en la vida real así es como evoluciona el software. También cubriremos algunas metodologías y conceptos de ingeniería de software como el Desarrollo rápido de aplicaciones (RAD) y la Integración continua (CI), y muchas más técnicas y mejores prácticas que lo ayudarán a desarrollar sistemas más complejos. Intentamos mantener estas metodologías separadas de las secciones del tutorial de codificación, para que las personas familiarizadas con las metodologías pudieran saltar directamente al código.
Comencemos primero con el concepto y lo que debe saber antes de iniciar su primera y simple aplicación web.
Acerca de las aplicaciones web (aplicaciones)
Como todos sabemos, el estado de la web es muy dinámico y ha evolucionado mucho desde su inicio. Con el advenimiento de las nuevas tecnologías web y más dispositivos conectados con navegadores potentes, ahora más que nunca la gente confía en el software basado en la web para mantenerse conectado.
La evolución de la Web muestra cómo evolucionó la Web a lo largo de los años.
Antes de comenzar a desarrollar una aplicación web, ¿entendemos qué son las aplicaciones web?
Puede haber diferentes definiciones de qué es una aplicación web, cómo diferenciar un servicio web de una aplicación web, o incluso con todo el software de escritorio conectado a Internet, ¿los clasificamos como una aplicación web o no? Aquí está la definición general de Wikipedia de Aplicación Web:
Una aplicación web es una aplicación a la que acceden los usuarios a través de una red como Internet o una intranet. El término también puede significar una aplicación de software que está codificada en un lenguaje de programación compatible con el navegador (como JavaScript, combinado con un lenguaje de marcado renderizado por el navegador como HTML) y que depende de un navegador web común para hacer que la aplicación sea ejecutable.
Sin embargo, como mencioné anteriormente, el estado de la web es dinámico y cambia continuamente, al igual que la definición de estos términos. Pero en aras de una comprensión simple, asumimos que la definición anterior de aplicaciones web es lo que estamos tratando de desarrollar aquí.
Además, verifiquemos los hechos y asegurémonos de que nuestra decisión de desarrollar una aplicación web sea la opción correcta. Hay un par de factores que decidirían si nuestra decisión de desarrollar una aplicación web tiene sentido o no. Por ejemplo, si estamos obteniendo algún beneficio al desarrollar una aplicación web frente a sus alternativas, como las aplicaciones de escritorio. O, si estamos desarrollando una aplicación web móvil, la alternativa sería una aplicación nativa móvil. Hay muchos artículos excelentes en la web sobre estos temas, aplicación web móvil versus aplicación híbrida móvil versus aplicación nativa móvil, sin embargo, es muy importante estar familiarizado con el concepto que nos guiará a tomar la decisión correcta, y deberíamos estar familiarizados con estas diferencias antes de tomar nuestra decisión de diseñar nuestro sistema. En pocas palabras, las aplicaciones de escritorio y las aplicaciones nativas móviles tienen una ventaja en el uso de acelerómetros de hardware, procesadores gráficos, cámaras y otro acceso a nivel de hardware. Por supuesto, siempre hay excepciones, como el uso de applets o flash de Java para aprovechar el hardware de la cámara, la aceleración del hardware del navegador en HTML5 o cualquier método que cierre la brecha para las aplicaciones web. En términos generales, siempre es mejor utilizar la estrategia correcta siempre que sea posible.
Una de las razones por las que el desarrollo de aplicaciones web se está volviendo cada vez más popular es por la gran cantidad de apalancamiento que brinda a los desarrolladores de aplicaciones. Uno de los principales desafíos del desarrollo de software es la piratería. Con el nuevo modelo de software como servicio (SaaS), ahora es mucho más fácil detener el acceso no autorizado al software. Además, en lugar de proporcionar soporte para diferentes versiones del software en diferentes sistemas operativos, los usuarios de aplicaciones web siempre usan la última versión del software. Sin embargo, los problemas de plataforma cruzada ahora son problemas de navegador cruzado, lo cual es mucho más fácil de contener. La comparación de Microsoft Office Word (escritorio) con Google Docs o incluso la propia aplicación web Word de Microsoft es un buen ejemplo de cómo el software de escritorio normal está haciendo la transición al software basado en la web. No estoy sugiriendo que una implementación o modelo sea mejor que el otro, todo lo que quiero enfatizar es que conocer los pros y los contras de cada enfoque y sus diferencias ayuda a tomar la decisión correcta en las primeras etapas del desarrollo. Ahora que tenemos claro qué son las aplicaciones web y si nuestra elección de proceder con un modelo de aplicación basado en la web es la opción correcta, pasemos a los requisitos previos.
Aplicación web Office Word