Breve Revisión Histórica Evolución de los lenguajes de programación
sishifuSíntesis10 de Octubre de 2021
3.339 Palabras (14 Páginas)109 Visitas
Índice
Breve Revisión Histórica
Evolución de los lenguajes de programación
En los últimos años las tecnologías han cambiado bastante, antes las computadoras y aparatos tenían circuitos mucho más simples, pero a la vez más complejos que en la actualidad, ya que antes las computadoras no podían hacer mucho a comparación de lo que hacen ahora y el mecanismo y cuerpo de estas eran demasiado grandes y complicadas de armar además de lo poco portátil y los cuidados específicos que estas necesitaban. Como ya sabemos esto no podría ser más diferente a la actualidad donde un teléfono celular que podemos llevar en el bolsillo del pantalón puede hacer lo que hacían estas y mucho más.
Evolución en cuanto a la tecnología
Los programas que se realizaban antes eran programados en binario, a mano básicamente, así que había una gran probabilidad de que hubiera un error y era casi imposible encontrarlo. Hoy los microprocesadores son creados para programarse con hexadecimal.
El primer avance importante que se realizó en el mundo de la tecnología fue el invento de los lenguajes ensambladores.
El lenguaje ensamblador solo puede transcribir palabras “fáciles” y se ven diferentes y un poco más entendibles y fácil de entender que en binario o en hexadecimal.
Pero estos lenguajes ensambladores son muy poco prácticos ya que solo puede ser ejecutado por la misma maquina en la que se creó.
Luego hubo un nuevo avance que involucró a los lenguajes de alto nivel, el cual es mucho más rápido y simple, por lo que al programador le es más fácil detectar los errores. Este lenguaje es algo parecido a lo que usamos en la cotidianidad.
La diferencia más notoria entre el lenguaje ensamblador y los lenguajes de alto nivel es que una tarea que un lenguaje de alto nivel puede realizar en pocos días, un lenguaje ensamblador puede tardar hasta meses.
Evolución en cuanto a la conceptualización
El primer avance que hubo en la metodología de la programación fue la Programación Estructurada y el Procedural.
En la programación lineal las instrucciones se ejecutan en el mismo orden en el que las escribimos.
El lenguaje Basic se complica mas para el usuario ya que tienes que saberte el código de memoria y una vez terminado el código es muy fácil perderse durante la revisión.
Programación estructurada
La programación estructurada es todo seguido, es decir, no puedes hacer saltos de línea, lo que también hace complicado de leer una vez que terminas el código, y aún más difícil si el código fue creado meses atrás.
En ese entonces se quería lograr que el programador pudiera hacer su trabajo de una forma más efectiva y rápida y también que fuera lo menos confuso para este mismo.
Por la misma complejidad de los programas de la época llegó la Función, que es básicamente llamar a programas ya hechos solo cambiándole el factor, y de esa manera el margen de error reducía considerablemente y también el tamaño del programa reducía, ya que se ahorraban unas tantas líneas de código con esta función.
Al mismo tiempo que llegó a función, también llegaron las Variables de ámbito reducido. Que eran aplicadas para poder utilizar variables en una cierta parte del código exclusivamente, y también facilitaba la vida del programador debido a que los programas eran tan largos que muchas veces tenían que definir cientos de variables con diferentes nombres así que era muy difícil identificar cada una o buscar el nombre de una un tiempo después de que el programa fue realizado, así que la llegada de esto facilitó bastante la programación de aquella época.
Programación orientada al objeto
La llegada de la OOP llegó con muchos cambios ya que hace que los objetos sean autónomos así liberando la mente del programador porque antes tenía que controlar absolutamente todo del código y con OOP podía dejar de hacer eso y confiar en que los objetos una vez creados correctamente eran autónomos. Los objetos nos permiten mezclar sus datos con otros métodos distintos a los de este mismo.
Evolución en cuanto al enfoque
La evolución de los lenguajes de programación, en cuanto a enfoque es también una evolución conceptual, pero ésta es tan profunda que supone un cambio drástico en cuanto al modo de concebir el tratamiento de la programación.
Programación Procedural
La mayoría de los lenguajes de la actualidad funcionan de forma procedural, que es básicamente establecer datos, reglas, etc., también tenemos que hacer que el programa consiga su objetivo a través del código.
Programación Declarativa
El lenguaje ProLog es declarativo, se basa en manipulaciones lógicas, utiliza la lógica proposicional para realizar sus deducciones.
ProLog, se basa en manipulaciones lógicas, utiliza la lógica proposicional -lógica de predicados- para realizar sus deducciones
Programación Orientada al Objeto
Una técnica de programación no es un lenguaje, pero puede aplicarse a cualquier lenguaje.
Podemos definirlo como un conjunto de reglas a seguir para hacernos la tarea de programar más fácil.
Es cierto sin embrago, que para poder aplicar OOP al 100%, es necesario que el lenguaje nos proporcione una serie de mecanismos inherentes al propio lenguaje.
Muchos programadores que han estado aprendiendo programación y todos los lenguajes que ha habido son los que dan este consejo.
Pero estas técnicas, son obviamente, independientes del lenguaje en que trabajemos.
Un lenguaje de programación es algo que todos más o menos conocemos: un conjunto de instrucciones entendibles directamente o traducibles al lenguaje del ordenador con el que trabajemos; combinando estas instrucciones realizamos programas.
¿Qué es la OOP?
Los lenguajes de OOP usualmente muestran características que están basadas en programar algo como un ratón, una ventana, un icono, etc.
No es un lenguaje especifico, sino que son técnicas que se aplican en lenguajes ya existentes.
Hay unos lenguajes que ya cuentan con algunas facilidades para la programación de objetos lo que hace que la OOP sea mucho más fácil de aplicar.
La OOP son un conjunto de técnicas que nos permiten incrementar enormemente nuestro proceso de producción de software, aumentando drásticamente nuestra productividad por un lado y permitiéndonos abordar proyectos de mucha mayor envergadura por otro.
Con la OOP se pueden incorporar diferentes programas ya creados por otros programadores y adaptarlos en nuestros programas, esto fue radicalmente nuevo para el momento en el que fue creada esta manera de programas y cambio para bien el trabajo de los trabajadores, facilitándoles la vida.
Breve historia de la OOP
Se implementó en el lenguaje Simula(1967), y en ese entonces solo se le llamaba clase y herencia.
El lenguaje herencia fue diseñado como de propósito general y pasó como un lenguaje normal durante sus años. Luego que llegaron otros lenguajes similares al Simula pero con innovaciones pequeñas, fue cuando la comunidad programadora reconoció el buen trabajo de los desarrolladores de Simula, ya que antes de eso no se le daba el reconocimiento que este se merecía.
Hoy Simula ya no se usa ya que sus conceptos han sido ampliados y hay muchos más lenguajes más completos, pero siempre se le reconocerá como el padre de los lenguajes de programación actuales hablando de Programación Orientada al Objeto.
Smalltalk fue otro lenguaje que hizo un gran avance para la OOP y hay mucha gente que considera que este lenguaje es el verdadero padre de la OOP actual y no Simula. Este incorporó herramientas de ayuda al desarrollo y un completo interfaz grafico para el usuario.
Smalltalk incluye no solo un lenguaje para el desarrollo de aplicaciones, sino que además incorpora herramientas de ayuda al desarrollo (p.ej. manejadores de árboles de clases, examinadores de objetos, etc.) y un completo interfaz gráfico de usuario.
El gran paso se dio con C++, es el lenguaje de programación orientada al objeto mas utilizado en la actualidad, traído en un libro que se considera casi como la biblia de programación.
La importancia del C++ radica, en que, abandonando ciertos requerimientos de los lenguajes de cuarta generación con tecnología OOP como son Smalltalk o Actor, ha conseguido darle una gran potencia y flexibilidad al más famoso lenguaje, el C.
C ha pasado a llamarse C++. Es la mejor implementación OOP sobre un lenguaje compilado existente en este momento. Su punto más conflictivo no obstante no su total implementación OOP, sino el hecho de permitir herencia múltiple, lo que, según los teóricos, no es muy aconsejable.
Java fue la estrella totalmente, haciendo un cambio gigante en lo que el usuario conocía como programar, perfecto para la programación orientada al objeto.
Programación Orientada al Objeto
Conceptos básicos
Las ideas básicas con las que se trabajan en la OOP son: Clase, Objeto, Herencia, Encapsulación y Polimorfismo. Estas se deben de comprender y manejar con facilidad para poder utilizar la Programación orientada al objeto.
Definición de clase
Una clase, es simplemente una abstracción que hacemos de nuestra experiencia sensible. El ser humano tiende a agrupar seres o cosas con características similares en grupos. Así, aun cuando existen por ejemplo multitud de vasos diferentes, podemos reconocer un vaso en cuanto lo vemos, incluso aun cuando ese modelo concreto de vaso no lo hayamos visto nunca. El concepto de vaso es una abstracción de nuestra experiencia sensible.
...