Es accesible y presenta una barrera de entrada baja. No me refiero a eso en un sentido negativo o despectivo. Lejos de ahi. ¿Recuerdas Visual Basic? ¿Recuerdas que fue un trato GIGANTICO? CSI Miami “Hackers” usó “Frontends de Visual Basic para preparar un algoritmo de descifrado” una vez.
Toda la programación que sé hoy, lo sé por BASIC. Los de mis amigos que comenzaron con C todavía luchan. Estaba aprendiendo algoritmos cuando estaban aprendiendo lo que significaba todo el drama. Cuando me encontré con la recursión, la programación dinámica, varios algoritmos de clasificación, etc., leí un tutorial en línea de 12 páginas y recogí toda la especificación de C en un fin de semana. No pudieron envolver sus cabezas en torno a la implementación de la memoria para salvar sus vidas. En ese momento estaba leyendo FFT, pasando a las transformadas de wavelets y la localidad temporal, de nuevo porque QuickBasic me permitió sacarlo.
La diferencia era que el lenguaje hacía las cosas accesibles. El mundo siempre estuvo sano, excepto a finales de los 90 y principios de los 2000. Todos necesitaban programadores, y la gente sabía que podían obtener trabajos si hacían las cosas lo suficientemente difíciles. Condujo a una explosión de UML, SOAP y CORBA, y DCOM, y RMI y EJB y Rational Rose. * Ugggghhh *
Todo lo que estás viendo es un círculo completo. Lo que olvidamos fue toda esa tontería y toda la tecnobabble es insignificante junto al poder de la Fuerza (del diseño del algoritmo).
- ¿Debo dejar de ser espiritual?
- Si Dios dice que la paga del pecado es la muerte, ¿no romperá Su sábado llevará a la muerte?
- ¿Es natural la fe en Dios?
- Cómo malgastar mi dinero fácilmente
- ¿A veces las guerras son la mejor solución a un problema?
El uso del algoritmo de clasificación correcto recorrerá los círculos alrededor de su basura WSTP-definida por WSDL diseñada por WSDL, aplicando WSTP-Security todos los días de la semana y dos veces en un fin de semana.
¿Viendo problemas de rendimiento? A menos que estés escribiendo para un Arduino o el Apple Watch, estás viendo problemas de rendimiento porque estás usando algoritmos terribles. Tu memcached es lento porque tus tablas hash no están equilibradas. Su representación es lenta porque su concatenación de cadenas es terrible y no está asignando suficiente memoria de la manera correcta.
¡Un algoritmo de multiplicación basado en FFT en Javascript encontrará 1000! factorial, entonces su MEJOR intento de una implementación vectorizada optimizada de micro-código hiper-subproceso hiper-optimizado que hace la multiplicación bit a bit. La diferencia es – Javascript hace que escribir un FFT sea accesible. Hacer eso en Asamblea es un dolor en el trasero. Es cierto que ahora hacer un multiplicador de FFT en un lenguaje compilado de forma nativa será AÚN más rápido que hacerlo en Javascript. Y donde hay una necesidad: tienes Swift, Go, Rust, C, C ++, etc.
Esta es precisamente la razón por la que los microservicios de estilo de continuación de paso de mensajes de un solo subproceso terminan rindiendo más rápido que su mejor intento en los intentos de subgrupos de subprocesos locales agrupados en subprocesos para “optimizar bloqueos” en Java. Perdiste el juego en la palabra “cerraduras”. Puedes optimizarlo todo lo que quieras. Si dices “bloqueo”, estás tomando una penalización que Javascript no tendrá.
No es que Javascript sea especial o mágico. Probablemente es tan terrible como QuickBasic, y quizás peor. Pero la vaca sagrada te permite crear una matriz, un objeto, una función o una estructura con la posible ceremonia MENOS. Eso permite que quede más capacidad mental para implementar clasificaciones de radix y de pila y buenas funciones de hashing que se equilibren bien, y soluciones de monte-carlo al problema del vendedor ambulante, y así sucesivamente … No se trata de “Patrones de diseño”, UML y Rational Rose van a superar la potencia de hacer que sea accesible para codificar el algoritmo correcto de forma rápida y sin tener que pasar por IImplementerOfFactoryOfCreatorOfSingleton.