La respuesta a la pregunta de si se puede hacer el desarrollo web de alta resistencia utilizando Ada depende de lo que quiere hacer. Si puede estar satisfecho con un enfoque cgi-bin, hay un paquete Ada que hará el trabajo y puede adjuntar hojas de estilo en cascada como lo haría con cualquier interfaz web. También puede usar Ada/XML si desea tratar el análisis XML. Hay casos en los que es útil, aunque es posible que desee pensar si XML es lo que necesita. Debido a que se compila un procedimiento de Ada para manejar las interfaces web, debe ser comparable a C en el rendimiento. Además, puede realizar el análisis de entrada de caracteres con el paquete Bounded_Strings que puede permitirle probar que las cadenas de caracteres de entrada no contienen caracteres inaceptables y que no son demasiado largos. Ambos controles son importantes en los sitios web para reducir la probabilidad de ataques de piratas informáticos exitosos.
Si está trabajando bases de datos en su diseño web, entonces debe mirar el servidor web Ada (AWS), que incluye enlaces a bases de datos. Para un trabajo aún más pesado, es posible que desee ver el proyecto Ada-AWA, que es de código abierto. Si está tratando con bases de datos relacionales de objetos, probablemente también quiera considerar PolyORB, que puede manejar CORBA y el anexo de Ada Distributed Systems. Esto es algo bastante pesado si trabajas como desarrollador único. Es casi seguro que necesitará tener a alguien que se encargue del trabajo cotidiano de la Administración del Sistema, y necesitará el permiso de su Proveedor de Servicios de Internet para alojar un sitio web.
Si desea una interfaz web que tenga que soportar tareas numéricas pesadas, debe tener en cuenta que Ada tiene tareas que admiten aplicaciones de subprocesos múltiples, y típicamente el compilador y el enlazador de Ada asignarán un subproceso a cada tarea . El lenguaje está diseñado para admitir la comunicación de hilo a hilo directamente mediante el encuentro. Además, los diseñadores de idiomas han tenido que preocuparse por problemas de programación difíciles, en los que la pérdida de una comunicación de un hilo a otro se considera como una falla del programa.Si va a hacer una comunicación multi-agente, probablemente debería obtener una herramienta de diseño UML que le permita usar diagramas de sincronización para diseñar este tipo de programas, ya que concentrarse en ese tipo de informática es muy diferente de la programación secuencial.
Como nota, Ada fue diseñado para programación integrada, lo que significa que ha sido diseñado para un entorno en el que hay muchas computadoras, cada una de las cuales se puede comunicar con otras computadoras de igual a igual. Originalmente fue utilizado por el Departamento de Defensa de los Estados Unidos, pero también se ha utilizado en el software de aviónica que controla las aletas y otras superficies en los aviones, así como los sistemas equivalentes en los automóviles. El software de aviónica Boeing 777 fue escrito en Ada. Me parece recordar que Daimler-Chrysler usó Ada, y señaló que los automóviles actuales tienen algo así como 80 computadoras integradas. El costo de desarrollo del software es , probablemente alrededor del 20% del costo actual de un automóvil nuevo.
Supongo que eso depende de lo que quiere decir con "serio". En eso, dirigir misiles es un asunto más serio que dirigir solicitudes HTTP a las imágenes de LOLcat, supongo que tendría que estar de acuerdo. Sin embargo, de hecho, hay mucha gente haciendo desarrollo web en Ada. Si sus compañeros de trabajo nunca escucharon hablar de AWS, ¿quizás necesiten salir más? Es un proyecto muy utilizado. –
Significado de proyectos con la mayor cantidad de dinero detrás de ellos. Gran compañía, grandes proyectos, fuera de Acadème. Bases de código masivas. Productos entregados reales. Software vital/de vuelo/espacial. ¿Sostendría que los usuarios más pesados son DOD/relacionados con la defensa (teniendo en cuenta que el DOD requirió a Ada durante mucho tiempo, y solo han pasado unos años desde que comenzaron a tratar de evitarlo en los círculos de defensa)? Usar la herramienta correcta para el trabajo correcto sería mi recomendación. – Caladain
... nada como Apache, por supuesto. –