Está en la página 1de 7

UNIVERSIDAD ABIERTA PARA ADULTOS

(UAPA)

Participante:
Laisha Duvergé

Matrícula:
201908230

Asignatura:
Programación II

Tema:
Unidad I

Facilitador:
Diógenes Amaury Martínez

Viernes 17 de Julio 2020


Santiago de los Caballeros
República Dominicana
I. Investigar en la web acerca de los lenguajes de programación,
su historia, los tipos de lenguajes, los fundamentos de estos y el
lenguaje de programación C#, su historia, características,
ventajas y las versiones que existen.

Los Lenguajes de Programación

o Historia:

La historia de los lenguajes de programación comienza según la mayoría de los


autores cuando Charles Babbage inventó su computadora en el año 1822. El
necesito un lenguaje para poder comunicarse con esta máquina. Estos
primeros lenguajes de programación estaban muy unidos a la computadora y
fueron creados para cada una de ellas. Este lenguaje era muy rudimentario y
consistía en la programación de los diferentes cambios de engranajes que
ejecutaban los cálculos.

Más adelante en el año 1942 se construyó la ENIAC, computadora que se


programaba ya con interruptores y era preciso reescribir el sistema entero para
cada nuevo programa. Era un lenguaje de programación muy tedioso.

A continuación la Historia de los lenguajes de programación nos lleva a Von


Neumann, que en el año 1945 desarrollo una nueva técnica que establecía que
las instrucciones complejas se deben utilizar para controlar el hardware simple,
permitiendo que se pudiese reprogramar más rápidamente (la técnica del
compartir-programa).

La historia de los lenguajes de programación da un gran paso en el año 1957,


cuando aparece el primero de los lenguajes de programación más importantes,
el FORTRAN (del inglés Formula Translation). Este fue el primero de los
lenguajes de programación de alto nivel. En el año 1958 se creó el lenguaje de
programación LISP o proceso de lista que fue diseñado para la investigación la
inteligencia artificial.

Otro lenguaje de programación importante fue el PASCAL, que apareció en el


año 1968. Este lenguaje de programación se usó como uno de los mejores
lenguajes para enseñar programación a los alumnos.
o Tipos y sus fundamentos:

Existen tres tipos de lenguajes claramente diferenciados; el lenguaje máquina y


los lenguajes de bajo nivel y los de alto nivel.
1. El Lenguaje Máquina: es el lenguaje de programación que entiende
directamente la máquina (computadora). Este lenguaje de programación
utiliza el alfabeto binario, es decir, el 0 y el 1.
2. Lenguajes de programación de bajo nivel: Son mucho más fáciles de
utilizar que el lenguaje máquina, pero dependen mucho de la máquina o
computadora como sucedía con el lenguaje máquina.
3. Lenguajes de programación de alto nivel. Los lenguajes de
programación de alto nivel son más fáciles de aprender porque se usan
palabras o comandos del lenguaje natural, generalmente del inglés. Este
es el caso del BASIC, el lenguaje de programación más conocido.

Lenguaje de Programación C

o Historia

C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en


los Laboratorios Bell como evolución del anterior lenguaje B, a su vez basado
en BCPL. Al igual que B, es un lenguaje orientado a la implementación de
Sistemas Operativos, concretamente Unix. C es apreciado por la eficiencia del
código que produce y es el lenguaje de programación más popular para crear
software de sistemas, aunque también se utiliza para crear aplicaciones.

Se trata de un lenguaje débilmente tipificado de medio nivel pero con muchas


características de bajo nivel. Dispone de las estructuras típicas de los lenguajes
de alto nivel pero, a su vez, dispone de construcciones del lenguaje que
permiten un control a muy bajo nivel. Los compiladores suelen ofrecer
extensiones al lenguaje que posibilitan mezclar código en ensamblador con
código C o acceder directamente a memoria o dispositivos periféricos.

La primera estandarización del lenguaje C fue en ANSI, con el estándar


X3.159-1989. El lenguaje que define este estándar fue conocido vulgarmente
como ANSI C. Posteriormente, en 1990, fue ratificado como estándar ISO
(ISO/IEC 9899:1990). La adopción de este estándar es muy amplia por lo que,
si los programas creados lo siguen, el código es portátil entre plataformas y/o
arquitecturas.
o Características

Son varias las características de C tal y como vemos a continuación:

  Estructura de C - Lenguaje estructurado.


  Programación de nivel medio (beneficiándose de las ventajas de la
programación de alto y bajo nivel).
  No depende del hardware, por lo que se puede migrar a otros sistemas.
  Objetivos generales. No es un lenguaje para una tarea específica,
pudiendo programar tanto un sistema operativo, una hoja de cálculo o un
juego.
  Ofrece un control absoluto de todo lo que sucede en el ordenador.
  Organización del trabajo con total libertad.
  Los programas son producidos de forma rápida y son bastante
potentes.
  Rico en tipo de datos, operadores y variables en C.

o Ventajas

 El lenguaje C ha sido pensado para ser altamente transportable.

 Un núcleo del lenguaje simple, con funcionalidades añadidas


importantes, como funciones matemáticas y de manejo de archivos,
proporcionadas por bibliotecas.

 Es un lenguaje muy flexible que permite programar con múltiples estilos.


Uno de los más empleados es el estructurado "no llevado al extremo"
(permitiendo ciertas licencias de ruptura).

 Un sistema de tipos que impide operaciones sin sentido.

 Usa un lenguaje de pre-procesado, el preprocesador de C, para tareas


como definir macros e incluir múltiples archivos de código fuente.

 Acceso a memoria de bajo nivel mediante el uso de punteros.

 Interrupciones al procesador con uniones.

 Por defecto, el paso de parámetros a una función se realiza por valor. El


paso por referencia se consigue pasando explícitamente a las funciones
las direcciones de memoria de dichos parámetros.
 Punteros a funciones y variables estáticas, que permiten una forma
rudimentaria de encapsulado y polimorfismo.

o Versiones

En la actualidad son muchos los fabricantes de compiladores C, aunque los


más populares entre los fabricantes de software son: Microsoft e Imprise.
Una evolución de C, el lenguaje C++ (C con clases) que contiene entre otras,
todas  las características de ANSI C. Los compiladores más empleados son
Visual C++ de Microsoft, Builder C++ de Imprise (Antigua Borland),  C++ bajo
Unix y Linux.
En el verano del 2000, Microsoft patentó una nueva versión de C++, que es C#,
una evolución del C++ estándar, con propiedades de Java y diseñado para
aplicaciones en línea.

II. Elaborar informe acerca de la programación orientada a


objetos(definición, características, ventajas y desventajas)

 Programación Orientada a Objetos

La Programación Orientada a Objetos (POO, en español; OOP, según sus


siglas en inglés) es un paradigma de programación que viene a innovar la
forma de obtener resultados. Los objetos manipulan los datos de entrada para
la obtención de datos de salida específicos, donde cada objeto ofrece una
funcionalidad especial.
Muchos de los objetos prediseñados de los lenguajes de programación
actuales permiten la agrupación en bibliotecas o librerías, sin embargo, muchos
de estos lenguajes permiten al usuario la creación de sus propias bibliotecas.
Está basada en varias técnicas del sexenio: herencia, cohesión, abstracción,
polimorfismo, acoplamiento y encapsulamiento.
Su uso se popularizó a principios de la década de 1990. En la actualidad, existe
una gran variedad de lenguajes de programación que soportan la orientación a
objetos.
 Características

Abstracción: Es el proceso de capturar los detalles fundamentales de un


objeto mientras se suprimen o ignoran detalles. La abstracción proporciona un
mecanismo crucial para permitir que las personas comprendan, se comuniquen
y razonen sistemas complejos.

Encapsulamiento: Es el proceso de ocultar todos los detalles de un objeto que


no contribuyen a sus características esenciales. La ventaja principal del
encapsulamiento es que proporciona al programador libertad en la
implementación de los detalles del sistema. La única restricción que tendrá el
programador es mantener la interfaz abstracta que vean los usuarios externos.

Polimorfismo: Es la propiedad que permite enviar el mismo mensaje a objetos


de diferentes clases, de forma que cada uno de ellos responde a ese mismo
mensaje de modo distinto dependiendo de su implementación.
El polimorfismo como sobrecarga en Java ocurre cuando una clase T tiene
múltiples métodos con el mismo nombre, cada uno de ellos con una signatura
(combinación de su nombre y el tipo y número de argumentos que pasan por
los métodos) diferente

Herencia: Es el proceso mediante el cual un objeto adquiere las propiedades


de otro objeto.

 Ventajas del Lenguaje de Programación Orientada a Objetos

Descomponer un problema: Mediante conceptos como la modularización y la


abstracción, la programación orientada a objetos permite la división del
problema en partes pequeñas. Esto supone una gran ventaja a la hora de
encarar rompecabezas complejos que con la programación funcional serían
una tarea titánica y enrevesada.

Programas más fáciles de mantener: Sumado a su buena legibilidad, el


concepto de los objetos favorece el mantenimiento de un programa. Gracias a
estos elementos resulta sencilla la tarea modificar o eliminar código.
Orden y Legibilidad: Como adelantamos en la introducción del artículo,
codificar bajo el paradigma de la POO por lo general da como resultado un
código más ordenado y legible. Las clases y objetos son fáciles de identificar a
primer golpe de vista, y gracias a bondades como la herencia, un programa
resulta más comprensible en comparación a las intrincadas líneas de código
que suelen predominar en la programación estructurada. No obstante, tampoco
conviene desatender las buenas prácticas y el código limpio.

 Desventajas del Lenguaje de Programación Orientada a Objetos

No es tan recomendable para tareas fáciles: La programación orientada a


objetos es realmente útil para descomponer problemas complejos, para tareas
sencillas que requieran una estructura secuencial algorítmica es más eficaz
acudir a la programación estructurada.

La ejecución de los programas puede ser lenta: No es una máxima, y


también existen estas diferencias presumibles entre programas interpretados y
compilados, pero un programa desarrollado en base a la POO suele tener una
ejecución más lenta en comparación a los lenguajes funcionales.

Curva de aprendizaje: Si bien no representa grandes dificultades al momento


de encarar un problema y codificar (por el contrario), la comprensión de los
conceptos suele representar todo un desafío para los alumnos primerizos.

También podría gustarte