Sugeriría ir a GitHub , elegir un proyecto al azar allí y mirar por ti mismo.
Al final, el código informático en su forma de fuente (pensada como la forma preferida para hacer modificaciones en él) es, y por lo tanto se ve, como un montón de archivos de texto (es decir. archivos que contienen sólo letras, dígitos, algunos símbolos, espacios y nuevas líneas) escritos de acuerdo con alguna especificación.
Edición: por otro lado, hay entornos de programación (típicamente para niños y principiantes, pero no se limita a eso) que se desvían de esto y representan visualmente el código fuente utilizando elementos gráficos. Véase por ejemplo Scratch.
En los ’90 hubo muchos intentos de desviarse de los archivos de texto como la principal forma de representar el código fuente. Creo que se puede decir con seguridad que todos ellos no tuvieron éxito debido a lo siguiente:
- una representación textual es bastante compacta en comparación con las representaciones gráficas puras (piensa en el pseudocódigo frente a los diagramas de flujo). Esto significa que las representaciones gráficas puras de los programas no triviales terminan siendo demasiado grandes o un profundo enredo¹, sin ninguna ventaja clara sobre una representación textual;
- Ahora está bastante claro cómo comparar dos archivos de texto y poner las diferencias (piense en el omnipresente algoritmo en el núcleo de la utilidad diff ), para que pueda saber, por ejemplo, lo que se ha cambiado entre dos revisiones de un archivo de texto: Esta es una característica importante en el desarrollo de software, especialmente cuando se trabaja en equipo y se necesita fusionar los cambios. Desgraciadamente, no está nada claro cómo se podría hacer esto de forma efectiva en otro tipo de representaciones sin convertirlo en otro tipo de juego de detectar las diferencias;
El código de la máquina (es decir, el código que realmente ejecuta el hardware del ordenador) se puede considerar básicamente como una secuencia de números discretos que representan tanto instrucciones como datos, de nuevo escritos de acuerdo con las especificaciones de la plataforma en la que se ejecutarán, pero el significado real depende del contexto. No se parece a nada, pero puede representarse utilizando alguna convención textual.
—
¹ Recuerdo un viejo cómic (creo que era uno de The far side) en el que se representaba a un informático cubriendo toda la fachada de un edificio con diagramas de flujo, con el personal del psiquiátrico esperándole junto a una ambulancia.