You are on page 1of 11

Lenguaje interpretado:

Lenguaje compilado:

Anlisis.
Un lenguaje compilado, se encuentra ya en un cierto cdigo
que la maquina ya conoce y que inmediatamente puede
empezar a llevar a cabo las instrucciones que estn en el.
Un lenguaje interpretado, est en un cdigo diferente, y que
cada que una instruccin necesita ser llevada a cabo por la
maquina primero pasa por una traduccin a un cdigo que la
maquina conozca, y esto se realiza siempre que se ejecute la
aplicacin, en ningn momento se guarda la traduccin.
El compilado pas por un proceso que termina (el cdigo
fuente) en un archivo de cdigo binario, el interpretado se
compila cuando se ejecuta por intermedio de un programa
que reside en la mquina donde ejecutes dicho cdigo fuente
(los scripts son un ejemplo), en el caso de ASP, se trata de

HTML con cdigo script, VBScript, en el caso deASP.NET se


crean assemblies, que no dejan de ser interpretados en una
parte y compilados en otra, tiene que ver con la arquitectura
de Microsoft, le cambi unas cosillas, le puso .NET (un marco
de trabajo) entre el S.O. y el programa en s, en este caso una
aplicacin ASP.NET y de all que digan que es compilado, pero
no de una manera como se le conoca hace unos aos. En
resumen: compilado=se us un programa o varios para
traducir el cdigo fuente a cdigo mquina e interpretado=se
usa un programa para traducirlo a cdigo mquina cuando se
ejecuta ese cdigo fuente.
Lo que pasa que cuando escribes un programa en cualquier
lenguaje en determinado momento debe de ser traducido a
cdigo binario (unos y ceros) ya que este es el nico lenguaje
que la computadora entiende. entonces un lenguaje
compilado lo que hace es que agarra todo el programa y lo
traduce de una vez a binario creando un archivo ejecutable
(.exe por ejemplo) mientras que el interpretado cuando corre
va traduciendo y ejecutando segn sea la lnea que
corresponda durante la ejecucin del programa.

Abstraccin: Operacin intelectual que ignora selectivamente partes de un


todo para facilitar su comprensin.
Abstraccin en la resolucin de problemas: Ignorar detalles especficos
buscando generalidades que ofrezcan una perspectiva distinta, ms favorable
a su resolucin. Abstraccin: descomposicin en que se varia el nivel de
detalle. Propiedades de una descomposicin til:
Todas las partes deben estar al mismo nivel
Cada parte debe poder ser abordada por separado
La solucin de cada parte debe poder unirse al resto para obtener la solucin
final

La programacin orientada a objetos o POO (OOP segn


sus siglas en ingls) es un paradigma de programacin que
usa los objetos en sus interacciones, para disear aplicaciones
y programas informticos. Est basado en varias tcnicas,
incluyendo herencia, cohesin, abstraccin, polimorfismo,
acoplamiento y encapsulamiento. Su uso se populariz a
principios de la dcada de los aos 1990. En la actualidad,
existe una gran variedad de lenguajes de programacin que
soportan la orientacin a objeto.

La programacin orientada a objetos es un paradigma


surgido en los aos 70, que utiliza objetos como
elementos fundamentales en la construccin de la
solucin. Un objeto es una abstraccin de algn hecho
o ente del mundo real, con atributos que representan
sus caractersticas o propiedades, y mtodos que
emulan su comportamiento o actividad. Todas las
propiedades y mtodos comunes a los objetos se
encapsulan o agrupan en clases. Una clase es una
plantilla, un prototipo para crear objetos; en general,
se dice que cada objeto es una instancia o ejemplar de
una clase.

Conceptos fundamentales
La programacin orientada a objetos es una forma de
programar que trata de encontrar una solucin a estos
problemas. Introduce nuevos conceptos, que superan y
amplan conceptos antiguos ya conocidos. Entre ellos
destacan los siguientes:

Clase
Definiciones de las propiedades y comportamiento de un tipo
de objeto concreto. La instanciacin es la lectura de estas
definiciones y la creacin de un objeto a partir de ella.
Herencia
(Por ejemplo, herencia de la clase C a la clase D) es la
facilidad mediante la cual la clase D hereda en ella cada uno
de los atributos y operaciones de C, como si esos atributos y
operaciones hubiesen sido definidos por la misma D. Por lo
tanto, puede usar los mismos mtodos y variables pblicas
declaradas en C. Los componentes registrados como
"privados" (private) tambin se heredan, pero como no
pertenecen a la clase, se mantienen escondidos al
programador y slo pueden ser accedidos a travs de otros
mtodos pblicos. Esto es as para mantener hegemnico el
ideal de POO.
Objeto
Instancia de una clase. Entidad provista de un conjunto de
propiedades o atributos (datos) y de comportamiento o
funcionalidad (mtodos), los mismos que consecuentemente
reaccionan a eventos. Se corresponden con los objetos reales
del mundo que nos rodea, o con objetos internos del sistema
(del programa). Es una instancia a una clase.
Mtodo
Algoritmo asociado a un objeto (o a una clase de objetos),
cuya ejecucin se desencadena tras la recepcin de un
"mensaje". Desde el punto de vista del comportamiento, es lo
que el objeto puede hacer. Un mtodo puede producir un
cambio en las propiedades del objeto, o la generacin de un
"evento" con un nuevo mensaje para otro objeto del sistema.

Evento
Es un suceso en el sistema (tal como una interaccin del
usuario con la mquina, o un mensaje enviado por un objeto).
El sistema maneja el evento enviando el mensaje adecuado al
objeto pertinente. Tambin se puede definir como evento la
reaccin que puede desencadenar un objeto; es decir, la
accin que genera.
Atributos
Caractersticas que tiene la clase.
Mensaje
Una comunicacin dirigida a un objeto, que le ordena que
ejecute uno de sus mtodos con ciertos parmetros asociados
al evento que lo gener.
Propiedad o atributo
Contenedor de un tipo de datos asociados a un objeto (o a
una clase de objetos), que hace los datos visibles desde fuera
del objeto y esto se define como sus caractersticas
predeterminadas, y cuyo valor puede ser alterado por la
ejecucin de algn mtodo.
Estado interno
Es una variable que se declara privada, que puede ser
nicamente accedida y alterada por un mtodo del objeto, y
que se utiliza para indicar distintas situaciones posibles para
el objeto (o clase de objetos). No es visible al programador
que maneja una instancia de la clase.
Componentes de un objeto
Atributos, identidad, relaciones y mtodos.
Identificacin de un objeto

Un objeto se representa por medio de una tabla o entidad que


est compuesta por sus atributos y funciones
correspondientes.
En comparacin con un lenguaje imperativo, una "variable" no
es ms que un contenedor interno del atributo del objeto o de
un estado interno, as como la "funcin" es un procedimiento
interno del mtodo del objeto.

Caractersticas de la POO[editar]
Existe un acuerdo acerca de qu caractersticas contempla la
"orientacin a objetos". Las caractersticas siguientes son las
ms importantes:
Abstraccin
Denota las caractersticas esenciales de un objeto, donde se
capturan sus comportamientos. Cada objeto en el sistema
sirve como modelo de un "agente" abstracto que puede
realizar trabajo, informar y cambiar su estado, y
"comunicarse" con otros objetos en el sistema sin
revelar cmo se implementan estas caractersticas. Los
procesos, las funciones o los mtodos pueden tambin ser
abstrados, y, cuando lo estn, una variedad de tcnicas son
requeridas para ampliar una abstraccin. El proceso de
abstraccin permite seleccionar las caractersticas relevantes
dentro de un conjunto e identificar comportamientos comunes
para definir nuevos tipos de entidades en el mundo real. La
abstraccin es clave en el proceso de anlisis y diseo
orientado a objetos, ya que mediante ella podemos llegar a
armar un conjunto de clases que permitan modelar la realidad
o el problema que se quiere atacar.

Encapsulamiento
Significa reunir todos los elementos que pueden considerarse
pertenecientes a una misma entidad, al mismo nivel de
abstraccin. Esto permite aumentar la cohesin de los
componentes del sistema. Algunos autores confunden este
concepto con el principio de ocultacin, principalmente
porque se suelen emplear conjuntamente.
Modularidad
Se denomina modularidad a la propiedad que permite
subdividir una aplicacin en partes ms pequeas (llamadas
mdulos), cada una de las cuales debe ser tan independiente
como sea posible de la aplicacin en s y de las restantes
partes. Estos mdulos se pueden compilar por separado, pero
tienen conexiones con otros mdulos. Al igual que la
encapsulacin, los lenguajes soportan la modularidad de
diversas formas.
Principio de ocultacin
Cada objeto est aislado del exterior, es un mdulo natural, y
cada tipo de objeto expone una interfaz a otros objetos que
especifica cmo pueden interactuar con los objetos de la
clase. El aislamiento protege a las propiedades de un objeto
contra su modificacin por quien no tenga derecho a acceder
a ellas; solamente los propios mtodos internos del objeto
pueden acceder a su estado. Esto asegura que otros objetos
no puedan cambiar el estado interno de un objeto de manera
inesperada, eliminando efectos secundarios e interacciones
inesperadas. Algunos lenguajes relajan esto, permitiendo un
acceso directo a los datos internos del objeto de una manera
controlada y limitando el grado de abstraccin. La aplicacin
entera se reduce a un agregado o rompecabezas de objetos.
Polimorfismo

Comportamientos diferentes, asociados a objetos distintos,


pueden compartir el mismo nombre; al llamarlos por ese
nombre se utilizar el comportamiento correspondiente al
objeto que se est usando. O, dicho de otro modo, las
referencias y las colecciones de objetos pueden contener
objetos de diferentes tipos, y la invocacin de un
comportamiento en una referencia producir el
comportamiento correcto para el tipo real del objeto
referenciado. Cuando esto ocurre en "tiempo de ejecucin",
esta ltima caracterstica se llama asignacin
tarda o asignacin dinmica. Algunos lenguajes proporcionan
medios ms estticos (en "tiempo de compilacin") de
polimorfismo, tales como las plantillas y la sobrecarga de
operadores de C++.
Herencia
Las clases no se encuentran aisladas, sino que se relacionan
entre s, formando una jerarqua de clasificacin. Los objetos
heredan las propiedades y el comportamiento de todas las
clases a las que pertenecen. La herencia organiza y facilita el
polimorfismo y el encapsulamiento, permitiendo a los objetos
ser definidos y creados como tipos especializados de objetos
preexistentes. Estos pueden compartir (y extender) su
comportamiento sin tener que volver a implementarlo. Esto
suele hacerse habitualmente agrupando los objetos
en clases y estas en rboles o enrejados que reflejan un
comportamiento comn. Cuando un objeto hereda de ms de
una clase se dice que hay herencia mltiple; siendo de alta
complejidad tcnica por lo cual suele recurrirse a la herencia
virtual para evitar la duplicacin de datos.
Recoleccin de basura
La recoleccin de basura o garbage collection es la tcnica
por la cual el entorno de objetos se encarga de destruir

automticamente, y por tanto desvincular la memoria


asociada, los objetos que hayan quedado sin ninguna
referencia a ellos. Esto significa que el programador no debe
preocuparse por la asignacin o liberacin de memoria, ya
que el entorno la asignar al crear un nuevo objeto y la
liberar cuando nadie lo est usando. En la mayora de los
lenguajes hbridos que se extendieron para soportar el
Paradigma de Programacin Orientada a Objetos como C++
u Object Pascal, esta caracterstica no existe y la memoria
debe desasignarse expresamente.

La programacin estructurada es un paradigma de


programacin orientado a mejorar la claridad, calidad y
tiempo de desarrollo de un programa de computadora,
utilizando nicamente subrutinas y tres estructuras:
secuencia, seleccin (if y switch) e iteracin (bucles for y
while), considerando innecesario y contraproducente el uso de
la instruccin de transferencia incondicional (GOTO), que
podra conducir a "cdigo espagueti", que es mucho ms
difcil de seguir y de mantener, y era la causa de muchos
errores de programacin.

Surgi en la dcada de 1960, particularmente del trabajo de


Bhm y Jacopini,1 y una famosa carta, La sentencia goto
considerada perjudicial, de Edsger Dijkstra en 19682 y fue
reforzado tericamente por el teorema del programa
estructurado, y prcticamente por la aparicin de lenguajes
como ALGOL con adecuadas y ricas estructuras de control.

Programacin modular

Diagrama del funcionamiento de un subprograma.

La programacin modular es un paradigma de programacin que consiste en dividir un


programa en mdulos o subprogramas con el fin de hacerlo ms legible y manejable.
Se presenta histricamente como una evolucin de la programacin estructurada para
solucionar problemas de programacin ms grandes y complejos de lo que sta puede
resolver.
Al aplicar la programacin modular, un problema complejo debe ser dividido en varios
subproblemas ms simples, y estos a su vez en otros subproblemas ms simples. Esto debe
hacerse hasta obtener subproblemas lo suficientemente simples como para poder ser
resueltos fcilmente con algn lenguaje de programacin. sta tcnica se llama refinamiento
sucesivo, divide y vencers anlisis descendente (Top-Down).
Un 'mdulo' es cada una de las partes de un programa que resuelve uno de los subproblemas
en que se divide el problema complejo original. Cada uno de estos mdulos tiene una tarea
bien definida y algunos necesitan de otros para poder operar. En caso de que un mdulo
necesite de otro, puede comunicarse con ste mediante una interfaz de comunicacin que
tambin debe estar bien definida.
Si bien un mdulo puede entenderse como una parte de un programa en cualquiera de sus
formas y variados contextos, en la prctica se los suele tomar como sinnimos
deprocedimientos y funciones. Pero no necesaria ni estrictamente un mdulo es una funcin o
un procedimiento, ya que el mismo puede contener muchos de ellos. No debe confundirse el
trmino "mdulo" (en el sentido de programacin modular) con trminos como "funcin" o
"procedimiento", propios del lenguaje que lo soporte.

En programacin orientada a objetos (POO), un


constructor es una subrutina cuya misin es inicializar un
objeto de una clase. En el constructor se asignan los valores
iniciales del nuevo objeto.

Se utiliza para crear tablas de clases virtuales y poder as


desarrollar el polimorfismo, una de las herramientas de la
programacin orientada a objetos. Al utilizar un constructor, el
compilador determina cual de los objetos va a responder al
mensaje (virtual) que hemos creado. Tiene un tipo de acceso,
un nombre y un parntesis.

En Java es un mtodo especial dentro de una clase, que se


llama automticamente cada vez que se crea un objeto de
esa clase.

Posee el mismo nombre de la clase a la cual pertenece y no


puede regresar ningn valor (ni siquiera se puede especificar
la palabra reservada void). Por ejemplo si aadiramos a la
clase SSuma un constructor, tendramos que llamarlo tambin
SSuma. Cuando en una clase no se escribe propiamente un
constructor, java asume uno por defecto.

You might also like