lunes, 13 de julio de 2015

la historia de la programación

la historia de la programacion

jhoan sebastian gil 
juan camilo martinez 


Gottfried Wilheml von Leibniz (1646-1716), quien aprendió matemáticas de forma autodidacta (método no aconsejable en programación) construyó una máquina similar a la de Pascal, aunque algo más compleja, podía dividir, multiplicar y resolver raíces cuadradas.
Charles Babbage (1793-1871). Con la colaboración de la hija de Lord Byron, Lady Ada Countess of Lovelace (1815-1852), a la que debe su nombre el lenguaje ADA creado por el DoD (Departamento de defensa de Estados Unidos) en los años 70. Babbage diseñó y construyó la "máquina diferencial" para el cálculo de polinomios. Más tarde diseñó la "máquina analitica" de propósito general, capaz de resolver cualquier operación matemática. Murió sin poder terminarla, debido al escepticismo de sus patrocinadores y a que la tecnología de la época no era lo suficientemente avanzada. Un equipo del Museo de las Ciencias de Londres, en 1991, consiguió construir la máquina analítica de Babbage, totalmente funcional, siguiendo sus dibujos y especificaciones.




Los primeros lenguajes de programación surgieron de la idea de Charles Babagge, la cual se le ocurrió a este hombre a mediados del siglo XIX. Era un profesor matemático de la universidad de Cambridge e inventor ingles, que la principio del siglo XIX predijo muchas de las teorías en que se basan los actuales ordenadores. Consistía en lo que él denominaba la maquina analítica, pero que por motivos técnicos no pudo construirse hasta mediados del siglo XX. Con él colaboro Ada Lovedby, la cual es considerada como la primera programadora de la historia, pues realizo programas para aquélla supuesta maquina de Babagge, en tarjetas perforadas. Como la maquina no llego nunca a construirse, los programas de Ada, lógicamente, tampoco llegaron a ejecutarse, pero si suponen un punto de partida de la programación, sobre todo si observamos que en cuanto se empezó a programar, los programadores utilizaron las técnicas diseñadas por Charles Babagge, y Ada, que consistían entre otras, en la programación mediante tarjetas perforadas. A pesar de ello, Ada ha permanecido como la primera programadora de la historia. Se dice por tanto que estos dos genios de antaño, se adelantaron un siglo a su época, lo cual describe la inteligencia de la que se hallaban dotados.


En 1823 el gobierno Británico lo apoyo para crear el proyecto de una máquina de diferencias, un dispositivo mecánico para efectuar sumas repetidas. Pero Babagge se dedico al proyecto de la máquina analítica, abandonando la maquina de diferencias, que se pudiera programar con tarjetas perforadas, gracias a la creación de Charles Jacquard (francés). Este hombre era un fabricante de tejidos y había creado un telar que podía reproducir automáticamente patrones de tejidos, leyendo la información codificada en patrones de agujeros perforados en tarjetas de papel rígido. Entonces Babagge intento crear la máquina que se pudiera programar con tarjetas perforadas para efectuar cualquier cálculo con una precisión de 20 dígitos. Pero la tecnología de la época no bastaba para hacer realidad sus ideas. Si bien las ideas de Babagge no llegaron a materializarse de forma definitiva, su contribución es decisiva, ya que los ordenadores actuales responden a un esquema análogo al de la máquina analítica. En su diseño, la máquina constaba de cinco unidades básicas: 1) Unidad de entrada, para introducir datos e instrucciones; 2) Memoria, donde se almacenaban datos y resultados intermedios; 3) Unidad de control, para regular la secuencia de ejecución de las operaciones; 4) Unidad Aritmético-Lógica, que efectúa las operaciones; 5) Unidad de salida, encargada de comunicar al exterior los resultados. Charles Babbage, conocido como el "padre de la informática" no pudo completar en aquella época la construcción del computador que había soñado, dado que faltaba algo fundamental: la electrónica. El camino señalado de Babbage, no fue nunca abandonado y siguiéndolo, se construyeron los primeros computadores.


Cuando surgió el primer ordenador, el famoso ENIAC (Electronic Numerical Integrator And Calculator), su programación se basaba en componentes físicos, o sea, que se programaba, cambiando directamente el Hardware de la maquina, exactamente lo que sé hacia era cambiar cables de sitio para conseguir así la programación de la maquina. La entrada y salida de datos se realizaba mediante tarjeta


tipos de programacion

Programación estructurada (PE)


La programación estructurada esta compuesta por un conjunto de técnicas que han ido evolucionando aumentando considerablemente la productividad del programa reduciendo el tiempo de depuración y mantenimiento del mismo.

Esta programación estructurada utiliza un número limitado de estructuras de control, reduciendo así considerablemente los errores.

Programación modular

En la programación modular consta de varias secciones dividas de forma que interactúan a través de llamadas a procedimientos, que integran el programa en su totalidad.

En la programación modular, el programa principal coordina las llamadas a los módulos secundarios y pasa los datos necesarios en forma de parámetros.

A su vez cada modulo puede contener sus propios datos y llamar a otros módulos o funciones.

Programación orientada a objetos (POO)

Se trata de una técnica que aumenta considerablemente la velocidad de desarrollo de los programas gracias a la reutilización de los objetos.

El elemento principal de la programación orientada a objetos es el objeto.
El objeto es un conjunto complejo de datos y programas que poseen estructura y forman parte de una organización.
Un objeto contiene varios datos bien estructurados y pueden ser visibles o no dependiendo del programador y las acciones del programa en ese momento.

El polimorfismo y la herencia son unas de sus principales características y por ello dedicaremos más adelante un artículo exclusivamente a tratar estos dos términos.

En DesarrolloWeb.com hemos publicado anteriormente una explicación de lo que es la programación orientada a objetos.

Programación concurrente

Este tipo de programación se utiliza cuando tenemos que realizar varias acciones a la vez.

Se suele utilizar para controlar los accesos de usuarios y programas a un recurso de forma simultanea.

Se trata de una programación más lenta y laboriosa, obteniendo unos resultados lentos en las acciones.

Programación funcional

Se caracteriza principalmente por permitir declarar y llamar a funciones dentro de otras funciones.

Programación lógica

Se suele utilizar en la inteligencia artificial y pequeños programas infantiles. Se trata de una programación basada en el cálculo de predicados (una teoría matemática que permite lograr que un ordenador basándose en hecho y reglas lógicas, pueda dar soluciones inteligentes).

programas que sirven para hacer sofware



Microsoft Visual Studio.NET

Básicamente, Microsoft Visual Studio.NET es un entorno de desarrollo integrado (IDE, en inglés) desarrollado para crear aplicaciones para el sistema operativo Windows. Este entorno es capaz de ofrecer soporte a múltiples lenguajes de programación como Visual C++, Visual C#, Visual J#, y Visual Basic .NET. Del mismo modo, ofrece soporte a entornos de desarrollo web como ASP.NET.



Java SDK

Java es un lenguaje de programación diseñado para que el producto desarrollado con el lenguaje pueda ser interpretado y ejecutado independientemente del sistema operativo en el que se utilice medianteuna máquina virtual Java (JVM).



NetBeans

Básicamente, NetBeans es un entorno de desarrollo integrado (IDE) libre con el cual el desarrollador podrá diseñar sus aplicaciones de escritorio usando el lenguaje Java a partir de un conjunto de componentes llamados“Módulos”.



Delphi

Delphi es un entorno de desarrollo de software orientado a la programación general con un marcado hincapié en la programación visual.Utilizando Object Pascal como lenguaje, es posible desarrollar programas para Windows y el sistema operativo Linux.



Ruby on Rails

Ruby on Rails es un framework específicamente diseñado para trabajar en conjunto con el lenguaje de programación Ruby. Ruby es un lenguaje de programación orientado a objetos que le brinda a los desarrolladores una sintaxis similar a Perl, y cuya principal característica es la facilidad y velocidad con que se pueden desarrollar aplicaciones




Velneo

Velneo es un entorno de desarrollo para aplicaciones de negocios sobre bases de datos como CRM y ERP. Se trata de un entorno de programación totalmente visual y muy potente. Además, la curva de aprendizaje es bastante suave, lo que permite que incluso aquellos que no tienen conocimientos profundos en el ámbito de la programación puedan desarrollar aplicación en poco tiempo.



GeneXus

GeneXus es una herramienta de desarrollo multiplataforma, en la cual se hace hincapié en la capacidad para el diseño de aplicaciones orientadas a la plataforma Windows en escritorio, smartphones, tablets y web empresariales.



WinDev

WinDev es un entorno de desarrollo integrado que permite crear aplicaciones basadas en un motor de ejecución. Del mismo modo que los lenguajes de programación Java, Visual Basic o C#, el código obtenido conWindev se precompila e interpreta en la ejecución por el framework, lo que convierte al producto desarrollado mediante el entorno en completamente independiente de la plataforma o sistema operativo empleado en su ejecución.

No hay comentarios:

Publicar un comentario