PROGRAMACION

¿QUE ES LA PROGRAMACIÓN?
La programación es un proceso que se utiliza para idear y ordenar las acciones que se realizarán en el marco de un proyecto, al anuncio de las partes que componen un acto o espectáculo; a la preparación de máquinas para que cumplan con una cierta tarea en un momento determinado, a la elaboración de programas para la resolución de problemas mediante ordenadores y a la preparación de los datos necesarios para obtener una solución de un problema. En la actualidad la noción de programación se encuentra muy asociada a la creación de aplicaciones informática y videojuegos, es el proceso por el cual una persona desarrolla un programa valiéndose de una herramienta que le permita escribir el código y de otra que sea capaz de “traducirlo” a lo que se conoce como lenguaje de máquina que puede comprender el microprocesador.

ELEMENTOS DE LA PROGRAMACIÓN
  • Sintaxis: Reglas especiales para la construcción de programación; el compilador lee el programa y comprueba que el programa sigue las reglas de sintaxis del lenguaje de programación, el compilador traduce el código fuente de Java a un código máquina (código objeto).
  • Código Objeto: Consta de instrucciones máquina e información de cómo cargar el programa en la memoria antes de su ejecución; si el compilador encuentra errores los presentará en la pantalla, una vez corregidos los errores se vuelve a compilar sucesivamente hasta que no se produzcan más errores.
  • Depuración: Proceso de encontrar errores en el programa, esta tarea es de las más difíciles en el proceso de programación.
  • Errores de sintaxis: Son aquellos que se producen cuando el programa viola la sintaxis, es decir las reglas gramaticales del lenguaje.
  • Errores lógicos: Son errores del programador en el diseño del algoritmo, son difíciles de encontrar y aislar ya que no suelen ser detectados por el compilador.
  • Errores de regresión: Son aquellos que son provocados cuando accidentalmente se producen al corregir un error lógico y se produce otro en otra parte del programa.
  • Elementos léxicos de los programas: Identificadores, palabras reservadas, literales, operadores, separadores.
  • Identificador: Es una secuencia de caracteres, letras dígitos y subrayados(_). El primer carácter debe de ser una letra, no un subrayado, las letras mayúsculas y minúsculas son diferentes para cada identificador.
  • Palabras Reservadas: Es aquella que tiene un significado especial para el lenguaje de programación. Una palabra reservada no puede ser utilizada como identificador, objeto o función.
  • Signos de Puntuación y Separadores: Todas las sentencias deben de terminar con un punto y coma. Otros signos de puntuación son: ! % & * ( )-+= { } ~ ^ \ ; ´ : < > ? , . / “
  • Operadores en C: Se evalúan primero y si hay muchas se evalúan de izquierda a derecha (multiplicación y división); se evalúan después y si hay muchas se evalúan de izquierda a derecha (suma y resta); residuo de la división entera (módulo).
  • Prioridad de Operadores Aritméticos: Todas las expresiones con paréntesis anidados se evalúan de dentro a afuera, el paréntesis más interno se evalúa primero. Dentro de una misma expresión los operadores se evalúan en el siguiente orden:
  1. ^ Exponentes
  2. * Multiplicación, / División, % Módulo
  3. + Suma, - Resta
Los Operadores en la misma expresión con igual nivel de prioridad, se evalúan de izquierda a derecha

  • Algebra: Estamos acostumbrados a representar algebraicamente una ecuación pero en la computadora es diferente y para ello podemos utilizar los paréntesis, de lo contrario el resultado puede ser diferente.

Operadores de igualdad
Algebraico
=    igual                                   = diferente de
En Java
== igual                                   != diferente de
Ejemplo
x==y                                          x!=y
igual                                         diferente de
Operadores de relación
<  menor que
>  mayor que
<=  menor o igual que
>=  mayor o igual que

  • Variable: Es un espacio en la memoria de la computadora que permite almacenar temporalmente un dato durante la ejecución de un proceso, su contenido puede cambiar durante la ejecución del programa. 
  • Constante: Es un dato numérico o alfanumérico que no cambia durante la ejecución del programa. Ejemplo: pi = 3.1416

¿QUÉ SON LOS ALGORITMOS?

En matemáticaslógicaciencias de la computación y disciplinas relacionadas un algoritmo​ es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permiten llevar a cabo una actividad mediante pasos sucesivos que no generen dudas a quien deba hacer dicha actividad. Los algoritmos son el objeto de estudio de la algoritmia, en términos de programación un algoritmo es una secuencia de pasos lógicos que permiten solucionar un problema. Los algoritmos pueden ser expresados de muchas maneras incluyendo al lenguaje naturalpseudocódigodiagramas de flujo y lenguajes de programación, entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas, el usar pseudocódigo y diagramas de flujo evita muchas ambigüedades del lenguaje natural; dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico.

Image result for que son los algoritmos

ELEMENTOS DE UN ALGORITMO

Los elementos que conforman a un algoritmo son:
  • -Entrada: Son los datos iniciales que posee el algoritmo antes de ejecutarse.
  • -Proceso: Son las acciones que lleva a cabo el algoritmo.
  • -Salida: Son los datos que obtiene finalmente el algoritmo.

HISTORIA DE LA PROGRAMACIÓN

La historia de la Programación está relacionada directamente con la aparición de los computadores que ya desde el siglo XV tuvo sus inicios con la construcción de una máquina que realizaba operaciones básicas y raíces cuadradas aunque en realidad la primera gran influencia hacia la creación de los computadores fue la  máquina diferencial para el cálculo de polinomios, proyecto no concluido de Charles Babbage (1793-1871)  con el apoyo de Lady Ada Countess of Lovelace (1815-1852), primera persona que incursionó en la programación y de quien proviene el nombre del lenguaje de programación ADA creado por el DoD (Departamento de defensa de Estados Unidos) en la década de 1970. 

De acuerdo a este breve viaje por la historia la programación está vinculada a la aparición de los computadores y los lenguajes tuvieron también su evolución, inicialmente se programaba en código binario, es decir en cadenas de 0s y 1s que es el lenguaje que entiende directamente el computador, tarea extremadamente difícil; luego se creó el lenguaje ensamblador que aunque era lo mismo que programar en binario al estar en letras era más fácil de recordar. Posteriormente aparecieron lenguajes de alto nivel que en general utilizan palabras en inglés para dar las órdenes a seguir para lo cual utilizan un proceso intermedio entre el lenguaje máquina y el nuevo código llamado código fuente, este proceso puede ser un compilador o un intérprete.


6 EXPONENTES

Seis exponentes de la programación son:

  • Ada Lovelace: Ada es considerada el primer programador de la historia, el lenguaje de programación Ada fue nombrado en su honor. Ada, hija del poeta Lord Byron, desarrolló su propia poesía en el primer algoritmo diseñado para ser procesado por una máquina; esa era la máquina analítica de Charles Babbage. Lovelace incluyó una serie de métodos para calcular usando la máquina de Babbage, números de Bernouille, es decir, una secuencia de números racionales relacionados con la teoría de los números.
  • Alan Turing: Uno de los personajes que más relevancia tuvo en el desarrollo de los ordenadores como los conocemos hoy en día es Alan Turing que formalizó los conceptos de computación y algoritmos con la máquina de Turing o como se llamaba oficialmente la máquina automática. La máquina de Turing puede ser adaptada para simular la lógica de cualquier algoritmo y sirve de ayuda para comprender el funcionamiento de una computadora personal y los límites de la computación mecánica.
  • Linus Torvalds: Una lista con los más reconocidos programadores no puede pasar sin agregar al finlandés Torvalds, es el arquitecto principal del sistema operativo Linux. Después de conocer UNIX en la universidad comenzó a desarrollar lo que sería su tesis: Linux. Desde la publicación del código de Linux en 1991 hoy en día millones de personas lo usan en sus computadoras personales. Para poder terminarlo Torvalds contó con la colaboración de los programadores de minix por lo que su nacimiento fue enteramente colectivo con programadores alrededor del mundo sumándose para ayudar.
  • Dennis Ritchie: Ritchie es más conocido por haber desarrollado el lenguaje C que a su vez tuvo influencias en todo tipo de lenguajes de programación y sistemas operativos. Jefe de Lucent Technologies hasta su retiro en 2007, Ritchie es el creador de C y uno de los desarrolladores más importantes de Unix; el lenguaje C es uno de los más utilizados en la historia de la programación y facilita muchísimas cosas, de hecho el lenguaje desarrollado a comienzos de los 70 inspiró a otros lenguajes como C++ que nació como una de sus extensiones.
  • Adi Shamir: Shamir: Es el co-inventor del algoritmo RSA y uno de los inventores del cryptanalásis diferencial por lo que su trabajo tiene múltiples implicaciones en la computación moderna. RSA es un algoritmo utilizado en criptografía, el primero que permite firmas y encriptado; es una de las herramientas más utilizadas en e-commerce y uno de los algoritmos más seguros inventados en la historia. Otro de sus grandes aportes fue el Shamir’s Secret Sharing un algoritmo que permite que una información sea dividida en partes con una parte única asignada a un determinado usuario.
  • Bill Gates: Si estamos hablando sobre grandes programadores es imposible dejar afuera al hombre que desarrolló el sistema operativo más utilizado por los ordenadores del mundo, desde diseñar una de las versiones de BASIC primero utilizadas por los entusiastas de la computación, Gates pasó a formar Microsoft junto con Paul Allen, su compañero de Harvard. Una de sus acciones más recordadas al menos por los defensores del software libre fue una carta abierta en la que afirmó que no se puede desarrollar y mantener un software sin un tipo de remuneración monetaria.

No hay comentarios:

Publicar un comentario