Hay algunos aspectos diferentes de la escritura de software. Una es conocer las reglas del lenguaje de programación que está utilizando. Algunos lenguajes son grandes y complejos, con muchas reglas y elementos del lenguaje, mientras que otros son comparativamente simples. Naturalmente, diferentes personas tienen diferentes niveles de conocimiento de sus respectivos lenguajes de programación. La mayoría de la programación consiste en ingresar texto en uno o más archivos (archivos de código fuente), seguido de algún tipo de envío de los archivos a un traductor de lenguaje de programación. El traductor (a menudo llamado compilador o intérprete) leerá el código fuente que ha escrito en el archivo de texto e intentará realizar una traducción (una conversión de lo que usted, el programador, puede entender en lo que una CPU puede entender directamente). Muy a menudo, no podrá entender lo que ha escrito, porque ha fallado en obedecer todas las reglas del lenguaje de programación específico en uso. No puede realizar la traducción y emitirá algunos mensajes de error que, con suerte, le permitirán corregir los errores e intentar nuevamente. Entonces, esto describe el aspecto de la programación que es simplemente crear un código fuente que sea aceptable para un traductor de lenguaje de programación.
El siguiente gran aspecto es escribir algo que realmente logre el objetivo deseado. Al igual que escribir en un lenguaje conversacional utilizado por humanos, una cosa es saber muchas palabras y algunas reglas gramaticales. Otra cosa es escribir un libro sobre un tema en particular o contar una buena historia. Así también está en la programación. Crear un código que haga lo que quieres que haga es como crear la novela o el libro de referencia. Su contenido incluye conocimiento y estilo integrados. Utiliza su conocimiento del lenguaje de programación para componer bloques de código que logren objetivos específicos. Así como algunos escritores de prosa parecen tener una habilidad especial para captar la atención del lector o proporcionar una descripción clara de una cosa, también algunos programadores tienen una habilidad especial para encontrar formas elegantes y eficientes de que su código cumpla los objetivos deseados. Un par de cosas también son diferentes. Un programa puede fallar en lograr el objetivo del programador, y puede hacerlo de manera pronunciada, como un bloqueo o producir resultados que son evidentemente incorrectos. Además, además de escribir el programa para satisfacer los requisitos difíciles del traductor y la aplicación en sí, el programador está escribiendo (con suerte) para satisfacer a otros humanos que luego leerán el código. Este aspecto no se refleja directamente al usuario del programa, pero es muy visible para el programador que debe leerlo e intentar comprenderlo algún tiempo después.
Una cosa que hacen muchos programadores, especialmente los buenos en mi humilde opinión, es sumergirse en las actividades de programación. Se convierte en una especie de zona de enfoque, donde el mundo exterior está más o menos en el fondo, y solo los algoritmos y sistemas y componentes de la tarea de programación en cuestión están en el centro de atención. Las personas en otras actividades también entran en ese estado mental particular; especialmente esfuerzos que requieren un enfoque mental cercano, como el atletismo. Es solo mi presentimiento, pero sospecho que la sensación de inmersión se vuelve ligeramente adictiva en algunas personas. Sospecho que algunos jugadores de videojuegos son un buen ejemplo de esa adicción al enfoque.
- Cómo trabajar para una empresa tecnológica con monitores duales para sus desarrolladores
- ¿Cuál es la mejor manera de dejar una empresa de software explotador?
- ¿Es el caso que solo las personas con experiencia en UX pueden ingresar al campo?
- ¿Cómo volver después de perder 4 años en la universidad (informática)? ¿Qué cursos específicos debo aprender?
- Soy un graduado en ciencias de la computación de 2013. No conseguí ningún trabajo hasta ahora. Por favor, hágame saber cómo puedo conseguir un trabajo?
Por lo general, los programadores mantendrán a mano material de referencia, como libros. La mayoría de los idiomas tienen suficientes matices sutiles que uno necesita un libro de referencia para tener todos los detalles del idioma. Naturalmente, el grado de conocimiento de cualquier idioma en particular varía de persona a persona. A veces, el material de referencia estará relacionado con la aplicación misma. Si su programa necesita interactuar con algo, como leer o escribir archivos de datos de cierto formato, controlar algún dispositivo, transferir datos a través de una red, etc., casi siempre tiene que haber documentación de referencia para ayudarlo a comprender esos detalles. A veces, se requieren métodos y algoritmos de programación particulares, y estos a menudo se publican en libros y documentos, o en línea para que otros programadores los usen. A menudo, esto es en forma de código fuente que se puede pegar directamente en el código fuente que está escribiendo, o se puede combinar con su proyecto de otras maneras (bibliotecas de códigos).