Como todos sabemos, Microsoft eliminó ASP y posteriormente muchos desarrolladores lo abandonaron. Sin embargo, sigo pensando que ASP merece nuestro uso continuo, tanto como tecnología de nivel básico como plataforma de desarrollo. Al buscar en Google, puede encontrar muchos comentarios negativos sobre ASP, como velocidad de ejecución lenta, mecanismo de manejo de excepciones deficiente, falta de mecanismo orientado a objetos, baja eficiencia de desarrollo, muchas lagunas, etc. Para que todos comprendan correctamente ASP, primero aclararé su nombre.
Hace unos años, utilicé el programa Dongwang Forum para construir un BBS. Este programa era la arquitectura ASP+Access clásica en ese momento. También encontré el problema de que algunas personas decían que el foro era lento y a veces se bloqueaba. Sin embargo, el problema se resolvió desde que cambié a la base de datos de SQL Server. Entonces el culpable es Access. El tiempo requerido para la ejecución del programa está en el nivel de milisegundos, ya sea 10 milisegundos o 100 milisegundos, realmente no se nota. Sin embargo, Access tiene una concurrencia deficiente , lo que bloquea parte de la ejecución del programa y provoca que la página se congele. .
En el pasado, muchas personas, incluido yo, usaban VBScript para escribir programas ASP. El mecanismo de manejo de excepciones de VBScript era realmente terrible. Sin embargo, JScript es muy bueno porque admite la declaración try...catch incluida en C# y Java, que es suficiente para manejar todas las excepciones.
Desde el surgimiento de Javascript debido a Ajax, se ha simulado su mecanismo orientado a objetos . Aunque no está verdaderamente orientado a objetos, como programa web pequeño y mediano, esto es suficiente. JScript, que también utiliza ECMAScript como núcleo, también tiene el mismo mecanismo. Además, la flexibilidad del lenguaje de ECMAScript es sin duda la más sólida, y los desarrolladores de aplicaciones para el usuario lo saben mejor.
A menudo escucho a la gente decir que la vulnerabilidad de inyección SQL de ASP es muy grave. De hecho, existen tales lagunas en cualquier lenguaje. La pregunta es si los programadores pueden bloquearla. Este problema se puede resolver de forma sencilla y eficaz en ASP mediante consultas parametrizadas . No se requiere reemplazo de cadenas ni siquiera validación de datos.
Permítanme hablar sobre los beneficios de aprender ASP (JScript):
Tanto el Javascript de front-end como el Javascript de back-end se basan en el núcleo de ECMAScript. Por lo tanto, si el Javascript de back-end está bien escrito, también se puede mejorar el nivel de Javascript de front-end .
Tecnologías como ASP.NET y PHP bloquean muchas de las capas subyacentes de la Web, lo que es muy perjudicial para la capacidad de los principiantes para comprender los principios de los programas Web. ASP, por otro lado, definitivamente está escrito desde lo más básico. Por ejemplo, un programa que carga archivos debe analizar el paquete de datos para obtener datos del archivo.
Mucha gente dice que ASP.NET tiene una alta eficiencia de desarrollo, pero yo me opongo a ello. Si los requisitos funcionales de la aplicación no son complejos, definitivamente es más rápido desarrollarla con ASP. Dado que ASP se analiza y ejecuta, no se requiere compilación. Es mucho más fácil de modificar y depurar. Windows también proporciona un buen entorno de ejecución (IIS) para ASP sin ninguna configuración adicional. Además, cuando el front-end y el backend usan el mismo lenguaje, se puede reutilizar una gran cantidad de código , lo cual no tiene comparación con otras plataformas tecnológicas.
En los últimos años han aparecido otros Javascript del lado del servidor (SSJS) , como Jaxer y JScript.NET . Mozilla también tiene un proyecto SSJS. Esperamos un mayor desarrollo de ECMAScript en el desarrollo backend.
Suplemento de Ali Xixi (experto técnico)
Las personas que dicen que ASP consume poca energía son novatos o personas que ni siquiera pueden aprender ASP. La tecnología no es para presumir, sino para crear valor real. De hecho, muchas aplicaciones ya se pueden implementar en ASP, y hay una. Hay una gran cantidad de códigos fuente comunes como referencia y es fácil de transformar en productividad. Se puede decir que entre las tecnologías de páginas web dinámicas, ASP es una de las tecnologías más extensas y maduras. Por supuesto, ASP tiene muchas deficiencias y se necesitan otras tecnologías para resolverlas.
Mucha gente cree erróneamente que ASP es sinónimo de simplicidad e ineficiencia. Piensan que ASP consume poca energía, está desactualizado y no es importante. También es muy simple y se puede dominar tan pronto como se aprende.
Algunas personas dicen que ASP no es seguro. Al escribir programas ASP, si sigue estrictamente las especificaciones para escribir código seguro, no habrá ninguna razón por la que los programas que escriba sean inseguros. Esa gente dice que ASP no es seguro, como si la inyección SQL no ocurriera en programas PHP y JSP.
Algunas personas dicen que ASP no es eficiente. Si realmente desea ser eficiente, puede combinarlo con COM. En la plataforma Win32, Java nunca podrá igualar la eficiencia de COM. ¿Cuál es el punto de hablar simplemente de velocidad? La velocidad de Java definitivamente no es alta. En términos de velocidad, muchas soluciones técnicas son más rápidas que Java. Las personas que aprenden Java lo saben mejor, pero ¿a quién le importa? Java definitivamente no gana por su velocidad. Es irracional hablar simplemente de velocidad independientemente del entorno de aplicación específico.
Algunas personas dicen que ASP no puede hacer esto o aquello y que sus funciones son muy limitadas. De hecho, siempre que comprenda los principios de la Web, comprenderá que escribir un programa ASP es como reproducir un lenguaje de programación en la superficie, pero lo que está ordenando es el servidor web. Hay muchas funciones complejas que ASP puede realizar. todavía se completa muy bien Algunas funciones Si ASP no puede hacerlo debido a las limitaciones inherentes de las aplicaciones web, no crea que JSP y PHP pueden hacerlo.