En primer lugar, debe comprender qué es un servidor web. Espera un minuto, creo que debería hablar sobre el servidor web antes de darte una respuesta. En términos simples, un servidor web solo sirve las páginas solicitadas al cliente. Claro que puede escribir un servidor web en C, hay muchos escritos que lo usan, por ejemplo Apache, lighttpd y nginx, por nombrar algunos. Están escritos principalmente en C porque el código C bien escrito puede brindarle un rendimiento muy bueno en comparación con lenguajes como Python y Java.
Pero el marco de aplicaciones web en estos días usa algún tipo de lenguaje orientado a objetos de alto nivel porque hace que sea fácil escribirlos en menos líneas de código que C. La web siempre está evolucionando rápidamente y la transición del backend de su sitio web escrito en C puede ser un desastre gigantesco para tratar incluso si desea hacer un pequeño cambio.
Además, hay muchos otros obstáculos por los que tienes que pasar. Por ejemplo, una ruta en su sitio web puede ser algo así como /blog/page.php?id=3 , ahora procesar esta ruta puede ser difícil de hacer en C porque tiene que hacer un trabajo pesado como analizar la consulta get, conectarse al base de datos y obtener la página solicitada y finalmente enviarla al cliente. Una cosa más que puede ser difícil es crear un sistema de plantillas en C. Hay muchos más de estos problemas aparentemente fáciles que cuando se escriben en C pueden resultar en un desorden difícil de mantener.
- ¿Qué pila debo usar para crear una aplicación web con una aplicación móvil separada que use los mismos marcos de backend y frontend?
- ¿Cuál es la mejor pista de idioma, si quiero aprender cómo crear soluciones para mi empresa como una aplicación web para que mi personal la use?
- ¿Qué se necesitaría para convencer a Mattias P Johansson de hacer un tutorial completo de aplicación web (Full Stack) en su canal de YouTube?
- ¿Qué es WebGL?
- ¿Está el correo electrónico condenado a morir?
El código de nivel superior es más fácil de mantener a largo plazo. Por lo tanto, puede vincular su aplicación escrita en PHP o Ruby o Java o Python o JavaScript, incluso hasta Perl a un servidor web escrito en C o C ++. Este es un tipo típico de abstracción utilizada en muchos campos diferentes en el mundo de la programación de computadoras. Necesitamos abstracciones porque nos hacen la vida más fácil. Es cierto que muchas veces las abstracciones hacen que su programa sea lento debido a los niveles de indirección utilizados, pero vale la pena porque termina escribiendo líneas más manejables y con menos líneas de código.
Además, el código escrito en lenguajes de nivel superior es más portátil en comparación con el lenguaje escrito de bajo nivel como C. Por ejemplo, una de las principales razones por las que se creó Java fue para permitir la escritura de código portátil que funciona independientemente de la arquitectura o el sistema operativo, y las personas escriben aplicaciones web backend usando frameworks web Java.
Con eso en mente, ¿escribirías una aplicación web en ensamblador?
TL; DR: Claro que puedes escribir sitios web usando C, pero terminarás poniendo mucho más esfuerzo del que necesitas en comparación con el uso de un lenguaje de nivel superior.