Está en la página 1de 12

Universidad Abierta Para Adultos

[Date]

ESCUELA

ingeniería y Tecnología

ASIGNATURA

Programación 2

FACILITADOR

Roberto Burgos M

PARTICIPANTE

Moisés Gómez Segura

MATRICULA

100041036

Administrator
[COMPANY NAME]
Introducción
La informática no queda excluida del uso de lenguajes, ya que estos son la manera
de especificar las acciones que se desea sean realizadas en la computadora. En
otras palabras, son la interface entre el programador y la computadora. A través de
ellos podemos desarrollar programas o aplicaciones, que se componen por un
conjunto de instrucciones que luego se ejecutarán en la computadora haciendo uso
de sus recursos (CPU, memoria, disco, etc.).

Los lenguajes de programación están destinados a distintos ámbitos, dependiendo


de sus características que simplifican algunas tareas y complejizan otras. Pueden
estar destinados a aplicaciones científicas, aplicaciones de negocios, inteligencia
artificial, programación de sistemas, scripting, y también disponemos de lenguajes
de propósitos especiales.

Los lenguajes de programación tienen una estructura compleja que se compone de


varias partes: sintaxis, semántica, elementos del lenguaje, nivel de abstracción,
paradigma, estructuras de control para ordenar la ejecución de los programas, tipos
de datos (números, letras, etc.), y funciones o procedimientos (unidades) que
contienen un conjunto de instrucciones, entre otras.
1. Investigar en la web acerca de:

 Los lenguajes de programación


o Historia
o Los tipos de lenguajes
o Fundamentos de estos
 Lenguaje de programación C#
o Historia
o Características
o Ventajas
o Versiones que existen

Lenguaje de Programación

¿Qué son los lenguajes de programación?

En informática, se conoce como lenguaje de programación a un programa destinado


a la construcción de otros programas informáticos. Su nombre se debe a que
comprende un lenguaje formal que está diseñado para organizar algoritmos y
procesos lógicos que serán luego llevados a cabo por un ordenador o sistema
informático, permitiendo controlar así su comportamiento físico, lógico y su
comunicación con el usuario humano.

Historia de los lenguajes de programación.

Sobre los últimos 50 años, los idiomas que programan han evolucionado del código
binario de máquina a herramientas poderosas que crean las abstracciones
complejas. Es importante entender por qué los idiomas han evolucionado, y qué
capacidades que los idiomas más nuevos nos dan.

"Tan largo como no había máquinas, programar era ningún problema; cuando
tuvimos unos pocas computadoras débiles, programar llegó a ser un problema
templado y ahora que tenemos las computadoras gigantescas, programar ha
llegado a ser un problema igualmente gigantesco. En este sentido que la industria
electrónica no ha resuelto un solo problema, tiene sólo los creó - ha creado el
problema de usar su producto". [Edsger. W. Dijkstra. "El Programista Humilde" (la
Conferencia del Premio de Turing), Comunicaciones del ACM, Vol 15, No. 10 (el
octubre 1972).] E. W. Dijkstra habló estas palabras proféticas casi hace 28 años en
su es la conferencia del Premio de Turing. En aquel momento, el 'las computadoras
gigantescas él radio de probablemente tenido entre 64 y 128 kilobytes de la
memoria verdadera, y a lo más unos pocos megaoctetos de artefactos de
almacenamiento de acceso directo. Si él pensó que el problema era gigantesco
entonces...

Generaciones

La evolución de los lenguajes de programación se puede dividir en 5 etapas o


generaciones.

• Primera generación: lenguaje máquina.

• Segunda generación: se crearon los primeros lenguajes ensambladores.

• Tercera generación: se crean los primeros lenguajes de alto nivel. Ej. C,


Pascal, Cobol.

• Cuarta generación. Son los lenguajes capaces de generar código por si solos,
son los llamados RAD, con lo cuales se pueden realizar aplicaciones sin ser un
experto en el lenguaje. Aquí también se encuentran los lenguajes orientados a
objetos, haciendo posible la reutilización d partes del código para otros programas.
Ej. Visual, Natural Adabes.

• Quinta generación: aquí se encuentran los lenguajes orientados a la


inteligencia artificial. Estos lenguajes todavía están poco desarrollados. Ej. LISP

Tipos de lenguajes de programación.

Los lenguajes de programación son la base con la que se construyen todas las
aplicaciones que utilizamos para nuestras tareas diarias, desde el sistema operativo
de nuestra computadora hasta nuestro editor de texto favorito, pasando por las
páginas web que visitamos todos los días.

Básicamente, los lenguajes de programación se dividen en dos tipos:

Lenguajes de Bajo Nivel

Son lenguajes totalmente orientados para la máquina, o sea son los que más se
aproximan al “Código de Máquina”, o sea, a los 0 y 1, y es necesario conocerse
sólidamente el hardware. Los programas resultantes de estos lenguajes son de muy
pequeño tamaño y de extrema rapidez. Ejemplos de estos lenguajes de bajo nivel
son Assembler y Lenguaje C.

Lenguajes de Alto Nivel

Son lenguajes más orientados para el problema que se desee resolver, de modo
que el programador debe prestar poca o ninguna atención a las características de la
computadora en las que se irá a ejecutar el programa. Los programas resultantes de
estos lenguajes no son tan rápidos. Ejemplos de lenguajes de alto nivel son Delphi,
Visual Basic, Pascal, el antiguo Clipper y Foxpro, entre otros.

Para que los programas funcionen, necesitan ser traducidos para el código de
máquina, es decir que el código fuente del programa debe ser transformado a
código objeto) y para eso necesita de un traductor o compilador.

• Traductor

Debe estar en la memoria mientras se ejecuta el programa, el programa necesita


ser traducido cada vez que es ejecutado. Cada instrucción va siendo traducida a
medida que va siendo ejecutada, con eso el programa termina por ser más lento.
Ejemplo de ello son Access, DBase y demás aplicaciones de este tipo.

• Compilador
No necesita estar en la memoria mientras se ejecuta el programa, pues este es
traducido enteramente una vez sólo, haciendo su ejecución muy rápida. Ejemplo de
este tipo de apps son Delphi, Clipper, Pascal y C, entre otros.

Lenguaje C#

Historia del lenguaje de programación C#

El lenguaje más popular de Microsoft siempre había sido Visual Basic, sobre todo
con la versión Visual Basic 6.

Pero Microsoft apostó por crear la plataforma Framework .NET para suplir las


carencias y desventajas que tenían con VB6.

Microsoft .NET es la tecnología por la que sigue apostando la compañía


actualmente, y se ha transformado en una de las más potentes hoy en día,
abarcando diferentes ámbitos en la programación, desde las aplicaciones de
escritorio hasta la creación de videojuegos.

Cuando se presentó .NET en el 2003, lo hizo junto a un nuevo lenguaje de


programación. Llevaban años desarrollándolo, bajo el nombre
de COOL (C Object Oriented Language), pero al final en su presentación cambió de
nombre por C Sharp.

El creador principal de C# es Andres Hejlsberg, que participó en la escritura del


código de la plataforma .NET.

Antes había trabajado en el diseño de Turbo Pascal, Delphi (la parte visual de
Pascal) y Visual J++.

El símbolo # (almohadilla)

Características principales de C#

Estas características pueden verse como una serie de ventajas y desventajas


del lenguaje de programación C#.
 Sintaxis sencilla. La sintaxis de C# es muy similar a Java, lo que simplifica al
desarrollador a la hora de escribir código.

 Escritura. En C# tienes que declarar los tipos de datos con las variables,
además que estas variables no pueden ser globales. De esta manera se
reducen los errores de compilación. Además, es un lenguaje orientado a
objetos, así que obliga que todos los métodos y propiedades estén dentro de
una clase.

 Orientación a componentes. Además de ser orientado a objetos, como hemos


dicho antes, es orientado a componentes. Podemos definir propiedades sin
necesidad de crear métodos, como en Java, o usar eventos sin tratar con
punteros a funciones. Escribir código en C# es mucho más sencillo y potente
que en otros lenguajes de programación.

 Sistema de tipos unificado. Todos los tipos de datos sencillos de C# derivan


de una clase común llamada System.Object. De esta manera, la conversión
de tipos sólo es compatible entre los tipos más cercanos (números enteros
con decimales, por ejemplo), además de facilitar la creación de colecciones.

 CLR (Common Language Runtime). Es el núcleo de .NET, el motor que


ejecuta las aplicaciones programadas en C#, lo que ayuda a la integración
del sistema operativo o dlls externas.

 Espacio de nombres. Puedes agrupar o aislar código mediante namespaces,


parecido al package de Java.

 Polimorfismo. En C++ se permite la herencia múltiple, pero en C# no, aunque


puedes implementar interfaces. De esta manera se evitan complicaciones y
simplifica la escritura.

 Operadores sobrescritos. En C# puedes recodificar un operador, como puede


ser el sumatorio + o el incremento ++.

 Bibliotecas. Cualquier compilador de C# viene con un mínimo de biblioteca de


clases disponibles y que puedes usar.
 Eliminación de los problemas de DLLs. Aunque puedes crear dlls en .NET, no
te encuentras con la problemática de la sustitución de versiones antiguas de
dlls compartidas con versiones nuevas. Pueden existir diferentes versiones
de la misma dll, simplificando la instalación del softwasre.

 Multiplataforma. Actualmente, el lenguaje C# es de código abierto y se ha


utilizado en otros IDEs, como el proyecto Mono o Xamarin, y en múltiples
sistemas operativos, como puede ser OSx o Android.

 Integración con otros lenguajes. Cualquier lenguaje que se compile con .NET,
como la nueva versión de visual basic, puede aprovecharse para usar en tu
proyecto.

 Mejora en la gestión de memoria. Al igual que Java, en C# dispone de un


recolector de basura que destruye los objetos que no se usan en memoria.

 Tratamiento de errores. Cualquier lenguaje de programacion moderno utiliza


las excepciones para controlar los posibles errores en el código.

 Multihilo. Puedes dividir tu código en múltiples hilos de ejecución, trabajar en


paralelo y sincronizándose al final.

2. Elaborar un cuadro comparativo entre un leguaje estructurado y otro orientado

a objeto.

Programación estructurada Programación orientada a


objetos

Definición Se refiere a un conjunto de La programación a orientada a


técnicas que han ido objetos es un paradigma de
evolucionando desde los primeros programación que usa objetos
trabajos de Edgar Dijkstra. Estas y sus interacciones para
técnicas aumentan diseñar aplicaciones y
considerablemente la productividad programas de computadora
del programa reduciendo en
elevado grado de tiempo requerido
para escribir, verificar, depurar y
mantener programas.

Historia Los términos de programación Su uso se popularizo a


modular, programación principios de la década de 1990
descendente y programación
estructurada se introdujeron en la
segunda mitad de la década de los
sesenta y a menudo sus términos
se utilizan como sinónimos aunque
no significan lo mismo

Características La programación estructurada es el Está basado, en varias


conjunto de técnicas que técnicas, incluyendo herencia,
incorporan: modularidad, polimorfismo y
encapsulamiento.
Recursos abstractos.
Se basa en objetos del mundo
Diseño descendente(top-Down).
real
Estructuras básicas

Ventajas Programas más fáciles de escribir, Sus características como


verificar, leer y mantener, reducen herencia modularidad,
los errores. polimorfismo, encapsulamiento
etc.; facilitan el trabajo dentro
de la programación ya que es
menos compleja que la
programación estructurada

Facilidad al dividir el programa


en partes más pequeña

Desventajas Resulta un único bloque de código No todos los objetos pueden


lo que resulta en un programa ser modelados
grande difícil de entender, esto se
resuelve utilizando programación Necesidad de usar librerías de
modular clases que obliga a su estudio
entendimiento.

La ejecución de los programas


es más lenta

Opinión personal

Para mi es mejor la programación estructuradas ya que con ella más fácil de


entender los programas de leer y reducen errores.

También considero que la programación orientada a objetos es más fácil en una


parte para entender ya que las estructuras de los programas pueden dividirse en
segmentos más pequeños asegurado la funcionalidad del programa.

Bibliografía

https://kataix.umag.cl/~ruribe/Utilidades/Introduccion%20a%20la%20Programacion
%20Orientada%20a%20Objetos.pdf

https://www.ecured.cu/Historia_del_Lenguaje_C

También podría gustarte