martes, 7 de marzo de 2017

Conceptos de fundamentos de programación


¿Qué es programación?
Programación es el proceso a través del cual un programa o aplicación informática es desarrollado.
Se conoce como programación en ciencias de la computación a los pasos que se abordan para crear el código fuente de un programa informático. De acuerdo con estos pasos, el código se escribe, se prueba y se perfecciona.

¿Qué es un programa?
Un programa es un conjunto de instrucciones u órdenes basadas en un lenguaje de programación que una computadora interpreta para resolver un problema o una función específica.
Conjunto secuenciado de instrucciones que quedan escritas en un lenguaje determinado con unos fines específicos.

Tipos de programación


  • Programación declarativa: mantiene un paradigma de programación el cual se basa en el desarrollo de programas que están especificando un conjunto de determinadas condiciones, proposiciones, afirmaciones, restricción, ecuaciones o transformaciones las cuales pueden mostrar, describir y detallar un problema y su solución. Esta solución se obtiene mediante diversos mecanismos internos de control. Las mismas no son específicas en cuanto a su localización, solo se le pide a la computadora que busque algo.


  • Programación estructurada: conocido también como un paradigma de la programación el cual se encuentra orientado a mejorar la calidad, claridad y el tiempo que tarde en se desarrollado un programa de computadora.
Para esto utiliza solamente subrutinas y tres estructuras: secuencia, selección e iteración.


  • Programación modular: este tipo de programación consiste principalmente en dividir los programas en partes llamadas subprogramas o módulos, los cuales son más legibles y manejables, es decir, tienen como fin facilitar su uso. Es el resultado evolutivo de la programación estructura para solucionar algunos problemas más grandes y difíciles de lo que la primera puede llegar a resolver.
Una vez aplicada la programación modular, un problema de índole complejo se divide en varios subproblemas mucho más simples los cuales son divididos, a su vez, en otros subproblemas más simples todavía. Este proceso se continúa hasta que se encuentra un subproblema lo suficientemente simple como para poder ser resuelto fácilmente. Esta técnica es conocida como refinamiento sucesivo o análisis descendente.
Un módulo es considerado cada una de las partes de un programa que puede resolver uno de los subproblemas encontrados, en los que se divide el problema original. Todos estos módulos contienen una tarea específica y definida diferente una de otra por lo que es posible que unos necesiten de otros para poder operar y concretar la finalización de un subproblema.
En los casos en los que un módulo necesita de otro, pueden comunicarse a través de una interfaz de comunicación la cual también se encuentra bien definida. En la práctica el módulo es considerado un proceso y función, muy diferente a la parte teórica el cual puede entenderse como una parte del programa. Sin embargo, no debe ser confundido el término procedimiento o función con el término módulo ya que el mismo puede contener muchos de ellos por lo que se debe tener cuidado.


  • Programación orientada a objetos: puede ser encontrado bajo las siglas POO, y se refiere a un paradigma de la programación el cual utiliza los objetos resultantes en sus interacciones para poder diseñar aplicaciones y programas informáticos.
Para esto basa sus conceptos en varias técnicas como la herencia, la cohesión, la abstracción, el polimorfismo, el encapsulamiento y el acoplamiento. Comienza su utilización en la década de los años 1990 y se mantiene hasta hoy, donde pueden encontrarse grandes variedades de lenguajes de programación que soportan la orientación a objetos

¿Qué es un paradigma de la programación?
Un paradigma de programación es una propuesta tecnológica adoptada por una comunidad de programadores y desarrolladores cuyo núcleo central es incuestionable en cuanto que únicamente trata de resolver uno o varios problemas claramente delimitados.

¿Qué es un intérprete en programación?
Analiza el programa fuente y lo ejecuta directamente, o sea en el ejemplo del traductor humano, éste sería un traductor humano que conforme a lo que está escuchando va ejecutando, sin generar ningún escrito, es decir que sobre la marcha va traduciendo.



¿Qué es un compilador?


Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje diferente. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode), o simplemente texto. Este proceso de traducción se conoce como compilación.