Redes de área local: ¿Es mejor crear aplicaciones en una LAN que crear un software nativo?

Es posible construir e implementar una aplicación web en un entorno LAN. Dependerá de sus necesidades si esta es una mejor opción.

Las aplicaciones web tienen limitaciones significativas para acceder a los recursos informáticos locales. El acceso al sistema de archivos local y la potencia de procesamiento son dos de ellos.
Y las aplicaciones web también pueden requerir más potencia de procesamiento del servidor y / o ancho de banda de la red LAN.
Si estos no son problemas para sus necesidades, no veo por qué no puede crear aplicaciones web en una LAN.

El navegador web impone el acceso limitado al sistema de archivos por razones de seguridad. Sin embargo, esto puede cambiar en la configuración del navegador, con algunos riesgos de seguridad.
El poder de procesamiento a menudo está limitado por el intérprete de Javascript (u otro idioma). Se podría construir un complemento del navegador con Java, C #, C / C ++ para un mejor rendimiento, pero dudaría en llamar a esto una aplicación web.

A diferencia de las aplicaciones web, una aplicación nativa puede tener acceso directo al sistema operativo.

En primer lugar, querrá asegurarse de cuál es el público objetivo de su aplicación. Si está seguro de que está destinado a ser utilizado en una LAN, entonces esto básicamente se reduce a una cuestión de responsabilidad. Si crea una aplicación web general en Internet, entonces es su responsabilidad mantener la aplicación, es DB, etc. Sin embargo, también le brinda la ventaja de poder actualizar / mejorar fácilmente su aplicación. Si lo crea para una LAN, entonces no puede acceder directamente a su aplicación, por lo que es responsabilidad del cliente configurarla y ejecutarla y / o mantenerla. La desventaja es que si hay algunos errores o actualizaciones, los clientes tendrán que volver a descargar y configurar la aplicación.

He pasado años haciendo ambas cosas, así que este es mi criterio.

Si todas las computadoras que usan la aplicación estarán físicamente conectadas a la LAN, hágalo nativo. Si la usarán personas ajenas a la seguridad de la LAN, conviértala en una aplicación web; use AJAX para que parezca una aplicación nativa de una sola pieza (no cliente-servidor).

¿Es viable? Espero que sea, en ambos sentidos, nativo en la LAN o en Internet con un navegador. (IE 5.5 está muerto, por lo que usar un navegador es viable). O mucha gente me va a demandar por los que han estado usando durante años, escribí.

¿Es mejor? Como dije anteriormente, mi preferencia es construirlo como una aplicación nativa si solo las personas en la LAN lo usarán. Es un poco más fácil y más seguro (suponiendo que la misma persona lo haya escrito en ambos sentidos: algunas personas no pueden programar “¡Hola, Mundo!” En un mes, algunas personas no saben la diferencia entre la seguridad y un vaso de leche. ) Pero si se va a acceder desde fuera de la LAN, construyo exactamente la misma aplicación usando PHP y Javascript para lograr una apariencia de “aplicación nativa”. Elija un país y el menú desplegable Ciudad se rellena igual que en una aplicación nativa, desde la misma base de datos e igual de transparente para el usuario. Elija un fabricante de automóviles y se completará el menú desplegable Modelo. Solo ve un navegador web ejecutándose, de lo contrario no puede notar la diferencia. (Y no es más rápido como una aplicación nativa: las personas en la LAN están ejecutando velocidades de gigabits, por lo que sus computadoras limitan la velocidad. Las personas en la web están limitadas por las velocidades de Internet. El MANEJO de datos todavía se está haciendo en la LAN, la aplicación aún obtiene sus datos de la base de datos a través de una conexión LAN (a menos que ambos se estén ejecutando en la computadora). Enviar ese menú desplegable actualizado al usuario es igual en ambos sentidos.

More Interesting

Si te dejara probando un software durante dos horas, ¿qué me tendrías que mostrar cuando regrese?

¿Las leyes o regulaciones federales o internacionales prohíben que un ingeniero de calidad de software almacene pruebas automatizadas en el mismo repositorio de origen que la aplicación que se está desarrollando, y se recomienda?

Si un verdadero artista recibe un proyecto con un objetivo final estrictamente definido (como un proyecto de software), con limitaciones de costo y calendario, ¿prosperará o tendrá dificultades?

¿Qué habilidades, conceptos o competencias se consideran útiles o necesarias tanto en el desarrollo web como en el desarrollo de software?

¿Qué es mejor invertir tiempo en: programación competitiva (programación algorítmica en sitios web como CodeChef o TopCoder) vs. desarrollo de software (desarrollo de aplicaciones, desarrollo web, etc.)? ¿Por qué?

¿Qué es el diccionario de datos?

¿Cuáles son los requisitos previos para ser contratado por Google (empresa)?

¿Cómo puede un propietario de producto no técnico de un equipo scrum mitigar la asignación excesiva de horas de tarea por parte del equipo? (Además de aprender a codificar)

¿Qué es el código de calidad y cómo se ve?

¿Es bueno comenzar mi carrera como probador de software?

¿Cuáles son las principales diferencias en los desafíos asociados con un rol de gerente de producto en una empresa B2C versus una empresa SaaS B2B, empresarial?

¿Te gusta arreglar errores?

¿Pakistán tiene compañías de software?

¿Cómo es escribir software integrado para automóviles?

¿Necesita usar una metodología de software para construir un buen software?