010 - Introducción A La Programación v04

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

Teoría de los Lenguajes y Algoritmos

Introducción a la programación

Definición de Programa o Aplicación


En informática, Un programa informático o programa de computadora es una
secuencia de instrucciones, escritas para realizar una tarea específica en una
computadora. El concepto de computadora abarca dispositivos de escritorio, dis-
positivos móviles, etc.

Una aplicación es a su vez un programa informático diseñado como herramienta


para permitir a un usuario realizar uno o diversos tipos de tareas. Esto lo diferen-
cia principalmente de otros tipos de programas, como los sistemas operativos
(que hacen funcionar la computadora), las utilidades (que realizan tareas de
mantenimiento del sistema operativo o de uso general), y las herramientas de
desarrollo de software (para crear programas informáticos). Las aplicaciones
pertenecen al software de aplicación.

Algunos Paradigmas de Programación


¿Qué es un Paradigma de Programación?
Un paradigma de programación consiste en un método para llevar a cabo cómpu-
tos y la forma en la que deben estructurarse y organizarse las tareas que debe
realizar un programa.

Se trata de una propuesta tecnológica adoptada por una comunidad de progra-


madores, y desarrolladores cuyo núcleo central es incuestionable en cuanto que
únicamente trata de resolver uno o varios problemas claramente delimitados; la
resolución de estos problemas debe suponer consecuentemente un avance sig-
nificativo en al menos un parámetro que afecte a la ingeniería de software. Re-
presenta un enfoque particular o filosofía para diseñar soluciones.

Los paradigmas difieren unos de otros, en los conceptos y la forma de abstraer


los elementos involucrados en un problema, así como en los pasos que integran
su solución del problema, en otras palabras, el cómputo. Tiene una estrecha re-
lación con la formalización de determinados lenguajes en su momento de defini-
ción. Es un estilo de programación empleado.
(Definición Wikipedia)

¿Qué es la Programación Orientada a Procedimientos (POP)?


POP sigue un enfoque de “paso a paso” para dividir una tarea en una serie de
instrucciones. Cada paso es ejecutado de forma ordenada y sistemática para
que la computadora pueda entender la tarea a realizar. El programa es dividido
en pequeñas partes denominadas funciones o procedimientos.
El programador, para resolver el problema que requiere ser automatizado, sigue
aquí un enfoque “de arriba hacia abajo”. Cada función o procedimiento tiene su
propio propósito. Todo problema demasiado grande para resolver en una función
o procedimiento se divide o “delega” llamando a otra construida para esa tarea
de menor jerarquía.

Página 1 de 6
Teoría de los Lenguajes y Algoritmos

Introducción a la programación

¿Qué es la Programación Orientada a Objetos (POO)?


POO es un paradigma de programación de alto nivel, donde un programa se
divide en partes pequeñas llamadas “objetos”. Este paradigma se basa en obje-
tos y clases.
Un objeto es básicamente una entidad que contiene tanto datos como las ins-
trucciones para manipular y comunicar esos datos. Los objetos creados a partir
de las clases, es decir, que son “instancias” de las clases.
Una clase, en términos simples, es un “plano” de lo que debe ser un objeto,
donde se define todas sus propiedades comunes a todos los objetos creados a
partir de la misma. Una clase puede ser utilizada para definir múltiples objetos
en un programa.
Las instrucciones contenidas en los objetos para manipular los datos se llaman
métodos. Los métodos de un objeto son la única manera de acceder a sus datos.

Un programador puede también crear un nuevo objeto a partir de los objetos


existentes.

¿Cuáles son las principales diferencias entre estos paradigmas?


• La programación procedimental pone su foco en la lógica de programa-
ción, mientras que la orientada a objetos pone su foco en los datos.

• La programación procedimental sigue un enfoque de resolución descen-


dente (de lo general a lo particular), mientras que la programación orientada a
objetos sigue un enfoque ascendente (desde las entidades de datos).

• En programación procedimental, cuando se envía cierta información a un


procedimiento para su modificación, el mismo tiene control total de modificar di-
chos datos. En programación orientada a objetos, es el objeto quien tiene en
última instancia el control sobre la modificación de sus datos.

• La programación orientada a objetos permite al programador crear clases


nuevas a partir de las propiedades de una clase existente, incorporarle a la nueva
clase comportamientos nuevos y modificarle los comportamientos heredados de
la clase original.

Página 2 de 6
Teoría de los Lenguajes y Algoritmos

Introducción a la programación

Definición de IDE
Un entorno de desarrollo integrado o entorno de desarrollo interactivo, en inglés
Integrated Development Environment (IDE), es una aplicación informática que
proporciona servicios integrales para facilitarle al desarrollador o programador el
desarrollo de software.
Normalmente, un IDE consiste de un editor de código fuente (las instrucciones
de programación), herramientas de construcción automáticas y un depurador. La
mayoría de los IDE tienen auto-completado inteligente de código (IntelliSense).
Algunos IDE contienen un compilador, un intérprete, o ambos, tales como Visual
Studio, NetBeans y Eclipse; otros no, tales como SharpDevelop y Lazarus.
El límite entre un IDE y otras partes del entorno de desarrollo de software más
amplio no está bien definido. Muchas veces, a los efectos de simplificar la cons-
trucción de la interfaz gráfica de usuario (GUI, por sus siglas en inglés) se inte-
gran un sistema controlador de versión (que administra la historia de cambios en
cada componente de software) y varias herramientas. Muchos IDE modernos
también cuentan con un navegador de componentes, para su uso con el desa-
rrollo de software dentro del paradigma orientado a objetos, que discutiremos
más adelante.

Que es .NET?
Microsoft .NET es un Plataforma de desarrollo y ejecución de aplicación; es decir,
proporciona los elementos necesarios para el desarrollo de la aplicación de soft-
ware y todos los mecanismos de seguridad y eficiencia para asegurar su optima
ejecución.

Las Principales Características:

• Las Aplicaciones de .NET se ejecutan en un entorno aislado del sistema


operativo denominado "runtime", lo que lo hace flexible, seguro y portable.

• Es 100% orientado a objetos

• Permite desarrollar aplicaciones en más de un lenguaje de programación,


como ser Visual Basic .NET o C# (que se lee "C Sharp").

• Está diseñado para permitir el desarrollo de aplicaciones corporativas


complejas, robustas y flexibles.

• Permite crear aplicaciones con Patrón MVC, que es una manera amplia-
mente aceptada de repartir la funcionalidad de una aplicación en diferentes tipos
de componentes. Profundizaremos sobre este concepto más adelante.

Página 3 de 6
Teoría de los Lenguajes y Algoritmos

Introducción a la programación

Como Funciona .NET


Un programador de C# puede entender fácilmente el código de un programador
de Visual Basic .NET y ambos pueden programar en el lenguaje con el que se
sientan más cómodos. Esto se debe a que todos los lenguajes que hacen uso
de .NET comparten las librerías de .NET, por lo que no importa en qué lenguaje
programemos, las reconocemos en cualquiera de ellos. A continuación, conoce-
remos los diferentes componentes de .NET: CLR, Assembly y CIL.

CLR
El primer componente de .NET que conoceremos es el Common Language Run-
time, también denominado CLR.
Este es un programa de ejecución común a todos los lenguajes que se encarga
de leer el código generado por el compilador y lleva adelante su ejecución. Sin
importar si el programa fue creado con C#, con Visual Basic .NET o algún otro
lenguaje de .NET, el CLR lo lee y ejecuta.

Assembly
Cuando tenemos un programa escrito en un lenguaje de .NET y lo compilamos
se genera el assembly. El assembly contiene el programa compilado en lo que
conocemos como CIL y también información sobre todo los tipos de información
que se utilizan en el programa.

CIL
Anteriormente el Common Intermediate Language CIL, se llamaba Microsoft In-
termediate Language o MSIL.
Los programas de .NET no se compilan directamente en código ensamblador del
compilador, en su lugar son compilados a un lenguaje intermedio conocido como
CIL. Este lenguaje es leído y ejecutado por el Runtime es lo que le da .NET su
gran flexibilidad y su capacidad de ser multiplataforma.

Página 4 de 6
Teoría de los Lenguajes y Algoritmos

Introducción a la programación

Conceptos generales de creación y ejecución de una


aplicación .NET
Podemos crear una aplicación .NET utilizando un lenguaje de programación,
para este efecto será C#; con el lenguaje de programación creamos el código
fuente del programa (instrucciones que le dicen al programa qué hacer).

Cuando hemos finalizado con nuestro código fuente, entonces utilizamos el com-
pilador. El compilador toma el código fuente y crea un assembly para nosotros.
Este assembly tendrá el equivalente de nuestro código, pero escrito en CIL; esto
nos lleva a otra de las ventajas de .NET:

Nuestro código puede ser optimizado por el compilador para la plataforma hacia
la cual vamos a usar el programa, es decir que el mismo programa puede ser
optimizado para un dispositivo móvil, una PC normal o un servidor, sin que no-
sotros tengamos que hacer cambios en él.

Cuando nosotros deseamos invocar al programa, entonces el runtime entra en


acción, lee el assembly y crea para nosotros todo el entorno necesario. El run-
time empieza a leer las instrucciones CIL del assembly y conforme las va leyendo
las compila para el microprocesador de la computadora en la que corre el pro-
grama; esto se conoce como JIT o compilación justo a tiempo. De esta manera
conforme se avanza en la ejecución del programa se va compilando; todo esto
ocurre de manera transparente para el usuario.

El Framework de .NET provee, para los programas que se están ejecutando, los
servicios de administración de memoria y recolector de basura. En lenguajes no
administrados como C y C++ el programador es responsable de la administra-
ción de memoria, en programas grandes esto puede ser una labor complicada,
que puede llevar a errores durante la ejecución del programa. Afortunadamente
lenguajes administrados como C# tienen un modelo en el cual nosotros como
programadores ya no necesitamos ser responsables por el uso de la memoria.
Un componente propio del lenguaje llamado recolector de basura se encarga de
eliminar todos los elementos que ya no son necesarios. De esta forma se liberan
memoria y recursos.

El recolector de basura trabaja de forma automática para nosotros y ayuda a


eliminar toda la administración de recursos y memoria que era necesaria en
Win32. En algunos casos especiales como los archivos, las conexiones a bases
de datos o de red se tratan de recursos no administrados, para estos casos de-
bemos de indicar explícitamente cuando es necesario que sean destruidos.

Página 5 de 6
Teoría de los Lenguajes y Algoritmos

Introducción a la programación

El Lenguaje C#

• Es el último en una línea de evolución de los lenguajes derivados de C,


que incluye C++ y Java.

• Usado por Microsoft para desarrollar la mayoría del código de .NET.

• Creada con .NET en mente, por tanto es el lenguaje ideal para el Desa-
rrollo en .NET.

• C# introduce varias mejoras sobre C++ en las áreas de seguridad de da-


tos, versionamiento (historial de cambios de componentes), eventos y recolec-
ción de basura.

• Más simple que C++ pero igualmente poderoso y flexible.

Bibliografía

Páginas Web
https://es.wikipedia.org/wiki/Entorno_de_desarrollo_integrado
https://es.wikipedia.org/wiki/Aplicaci%C3%B3n_inform%C3%A1tica
https://es.wikipedia.org/wiki/Programaci%C3%B3n_por_procedimientos
https://es.wikipedia.org/wiki/Common_Intermediate_Language
http://www.differencebetween.net/technology/difference-between-oop-and-pop/

Libros
DesarrolloNet01
C# - La guia total del Programador: Pagina 15, 16

Página 6 de 6

También podría gustarte