1. INSTITUTO TECNOLÓGICO DE MINATITLAN. (ITM)
PROGRAMACION VISUAL.
TAREA UNIDAD 1.
ING. GUILLERMINA JIMENEZ RASGADO.
ALUMNO: EDGAR PEREZ ANTONIO
INGENIERIA ELECTRONICA.
4 SEMESTRE. N. DE CONTROL: 12230425
12 DE MARZO DEL 2014.
OBSERVACIONES:
_________________________________________________
_________________________________________________
_________________________________________________
_________________________________________________
_________________________________________________
2. Los lenguajes de programación orientados a objetos.
La programación orientada a objetos, ha tomado las mejores ideas de la
programación estructurada y los ha combinado con varios conceptos nuevos y
potentes que incitan a contemplar las tareas de programación desde un nuevo
punto de vista. La programación orientada a objetos, permite descomponer más
fácilmente un problema en subgrupos de partes relacionadas del problema.
Entonces, utilizando el lenguaje se pueden traducir estos subgrupos a unidades
autocontenidas llamadas objetos.
1. a Etapa. Lenguajes Ensambladores.
La unidad de programación es la instrucción, compuesta de un operador y los
operandos. El nivel de abstracción que se aplica es muy bajo.
2. a Etapa. Lenguajes de Programación:
Fortran, Algol, Cobol. Los objetos y operaciones del mundo real se podían
modelar mediante datos y estructuras de control separadamente. En esta etapa el
diseño del software se enfoca sobre la representación del detalle procedimental y
en función del lenguaje elegido. Conceptos como: refinamiento progresivo,
modularidad procedimientos y programación estructurada son conceptos básicos
que se utilizan en esta etapa. Existe mayor abstracción de datos.
3. a Etapa.
Se introducen en esta etapa los conceptos de abstracción y ocultación de la
información.
4. a Etapa.
A partir de los años setenta se trabaja sobre una nueva clase de lenguajes de
simulación y sobre la construcción de prototipos tales como Simula-70 y basados
en parte de éste, el Smalltalk. En estos lenguajes, la abstracción de datos tiene
una gran importancia y los problemas del mundo real se representan mediante
objetos de datos a los cuales se les añade el correspondiente conjunto de
operaciones asociados a ellos. Términos como Abstracción de datos, objeto,
encapsulación entre otros, son conceptos básicos sobre la que se fundamenta la
POO.
La POO representa una metodología de programación que se basa en las
siguientes características:
1) Los diseñadores definen nuevas clases (o tipos) de objetos.
2) Los objetos poseen una serie de operaciones asociadas a ellos.
3) Las operaciones tienden a ser genéricas, es decir, operan sobre múltiples tipos
de datos.
3. 4) Las clases o tipos de objetos comparten componentes comunes mediante
mecanismos de herencia.
4. Taxonomía de lenguajes orientados a objetos
• Una taxonomía de lenguajes de programación con propiedades de orientación a
objetos fue creada por Wegner. La clasificación incluye los siguientes grupos:
Basado en objetos. Un lenguaje de programación es basado en objetos si
su sintaxis y semántica soportan la creación de objetos que tienen las
propiedades descritas en temas anteriores.
Basado en clases. Si un lenguaje de programación es basado en objetos y
soporta además la creación de clases, se considera basado en clases.
Orientación a objetos. Un lenguaje de programación orientado a objetos es
un lenguaje basado en clases que soporta también herencia.
Al principio de la década de los sesenta, Kristen Nygaard y Ole-Johan Dhal
desarrollaron Simula en el Norwegian Computer Center (NCC), un lenguaje que
soportaba modelado por simulación de procesos industriales y científicos.
Fue un lenguaje de propósito general que ofrecía capacidad de simulación de
sistemas. Sin embargo, sus usuarios descubrieron pronto que Simula
proporcionaba nuevas y poderosas posibilidades para fines distintos de la
simulación, como la elaboración de prototipos y el diseño de aplicaciones.
• Las sucesivas versiones de Simula fueron mejorándose hasta llegar a Simula-67
(aparición en diciembre de 1966). Simula-67 se derivaba de Algol 60, donde tiene
sus raíces, y se diseñó fundamentalmente como un lenguaje de programación de
diseño; tomó de Algol el concepto de bloque e introdujo el concepto de objeto.
• Los objetos de Simula tenían su propia existencia y podían comunicarse entre sí
durante un proceso de simulación. Conceptualmente, un objeto contenía tanto
datos como las operaciones que manipulaban esos datos. Las operaciones se
llamaron métodos. Simula incorporaba también la noción de clases, que se
utilizaron para describir la estructura y comportamiento de un conjunto de objetos.
La herencia de clases fue también soportada por Simula. La herencia organiza las
clases en jerarquías, permitiendo compartir implementación y estructura.
• En esencia, Simula sentó la base de los lenguajes orientados a objetos y definió
algunos de los conceptos clave de la orientación a objetos. Además, Simula era un
lenguaje fuertemente tipificado. Esto significa que el tipo de cada variable se
conoce en tiempo de compilación, de modo que los errores que implican tipos se
encuentran en esta etapa y no cuando el programa se ejecuta.
• Simula-67 fue el primer lenguaje de programación que incorporó mecanismos
para soportar los conceptos orientados a objetos más sobresalientes:
5. Simula (1967) es aceptado como el primer lenguaje que posee las características
principales de un lenguaje orientado a objetos. Fue creado para hacer programas
de simulación, en donde los "objetos" son la representación de la información más
importante. Smalltalk (1972 a 1980) es posiblemente el ejemplo canónico, y con el
que gran parte de la teoría de la programación orientada a objetos se ha
desarrollado.
Entre los lenguajes orientados a objetos se destacan los siguientes:
ABAP -> SAP Lenguaje orientado a eventos
ABL Lenguaje de programación de OpenEdge de Progress Software
ActionScript
ActionScript 3
Ada
C++
C#
Clarion
Clipper[1]
D
Object Pascal (Embarcadero Delphi)
Gambas
Genie
Harbour
Eiffel
Fortran 90/95
Java
JavaScript[2]
Lexico[3]
Objective-C
Ocaml
Oz
6. R
Perl[4]
PHP[5]
PowerBuilder
Python
Ruby
Self
Smalltalk[6]
Magik (SmallWorld)
Vala
VB.NET
Visual FoxPro[7]
Visual Basic 6.0
Visual DataFlex
Visual Objects
XBase++
Lenguaje DRP
Scala[8]
Muchos de estos lenguajes de programación no son puramente orientados a
objetos, sino que son híbridos que combinan la POO con otros paradigmas.
Al igual que C++, otros lenguajes, como OOCOBOL, OOLISP, OOPROLOG y
Object REXX, han sido creados añadiendo extensiones orientadas a objetos a un
lenguaje de programación clásico.
Un nuevo paso en la abstracción de paradigmas de programación es la
Programación Orientada a Aspectos (POA). Aunque es todavía una metodología
en estado de maduración, cada vez atrae a más investigadores e incluso
proyectos comerciales en todo el mundo.
Alan Kay creó Smalltalk-80 en Xerox PARC (Xerox Palo Alto Research Park) con
Adele Goldberg, que previamente había trabajado con una implementación de
Simula. Smalltalk es un lenguaje orientado a objetos puro, «todos es un objeto» de
una clase y todas las clases heredan de una única clase base denominada Object.
7. Smalltalk afirmó el término «método» para describir las acciones realizadas por un
objeto y el concepto de «paso de mensajes» como el medio para activar
«métodos». Es también un lenguaje tipificado dinámicamente, que liga (enlaza) un
método a un mensaje en tiempo de ejecución.
• Smalltalk ha sido, a su vez, el inspirador de un gran número de lenguajes OO.
Entre ellos destaquemos Eiffel, Smalltalk- 80, Smalltalk/V, C++, Actor, Objective-C
y CLOS, así como extensiones OO de lenguajes tradicionales, tales como Object
Pascal, Object COBOL, etc.
• Bertran Meyer, el diseñador de Eiffel, fue también un usuario de Simula, e incluso
llegó a ser presidente de la Asociación de Usuarios de Simula.
• Jean Ichbiah, el diseñador jefe de Ada-83, dirigió un equipo que implementó un
subconjunto de Simula, y Bjarne Stroustrup, el diseñador de C++, utilizó Simula y
siempre ha agradecido su influencia en el diseño de C++.
• Existen varias versiones y dialectos de Smalltalk: Smalltalk- 72, -74, -76, -78, -80
y más recientemente -y seguramente la más popular- Smalltalk/V de Digitalk.
• Smalltalk no es un lenguaje tipificado. Smalltalk es extraordinariamente rico en
conceptos orientados a objetos. En
Smalltalk todo es un objeto, incluyendo clases base y tipo base. Esto significa que
la potencia de Smalltalk, como un entorno de programación completo, se
fundamenta en el envío de mensajes a objetos.
• Otra característica fundamental que diferencia a Smalltalk es su capacidad de
concurrencia. La concurrencia es un aspecto del mundo real. Por ejemplo, en un
entorno de oficina, secretarias, administrativos, gerentes y otros empleados
funcionan simultánea e independientemente. Se comunican entre sí, a través de
conversaciones, informes, correo electrónico, etc. Smalltalk empleó la
construcción denominada proceso para soportar concurrencia.
• Durante la década de los ochenta, los conceptos orientados a objetos (tipos
abstractos de datos, herencia, identidad de objetos y concurrencia), Smalltalk,
Simula y otros lenguajes comenzaron a mezclarse y producir nuevos lenguajes
orientados a objetos, así como extensiones y dialectos
Java
Java se creó como parte de un proyecto de investigación para el desarrollo de
software avanzado para una amplia variedad de dispositivos de red y sistemas
embebidos. La meta era diseñar una plataforma operativa sencilla, fiable, portable,
8. distribuida y de tiempo real. Cuando se inició el proyecto, C++ era el lenguaje del
momento. Pero a lo largo del tiempo, las dificultades encontradas con C++
crecieron hasta el punto en que se pensó que los problemas podrían resolverse
mejor creando una plataforma de lenguaje completamente nueva. Se extrajeron
decisiones de diseño y arquitectura de una amplia variedad de lenguajes como
Eiffel, SmallTalk, Objetive C y Cedar/Mesa. El resultado es un lenguaje que se ha
mostrado ideal para desarrollar aplicaciones de usuario final seguras, distribuidas
y basadas en red en un amplio rango de entornos desde los dispositivos de red
embebidos hasta los sistemas de sobremesa e Internet.
Ejemplo 1
Clara orientación a objetos de java. Este ejemplo también insertar un salto de
línea.
public class saludo {
public static void main(String[] args) {
System.out.println("Hola mundo");
}
}
JavaScript
Javascript es un lenguaje orientado a objetos diseñado para crear documentos
web interactivos. Ofrece las caracteristicas básicas de un lenguaje orientado a
objetos como puede ser Java. Hay que puntualizar que Java y JavaScript
comparten la misma sintaxis pero son dos lenguajes distintos. JavaScript puede
responder a diferentes acciones sin necesidad de realizar transmisiones por la red.
Además es un lenguaje interpretado, es decir, que el navegador compilará las
instrucciones antes de ejecutarlas.
Ejemplo 1
De hecho en la mayoría de navegadores basta con poner <script> o <script
language="JavaScript"> pero w3c recomienda poner type="text/javascript". Con
document.write podremos escribir lo que se encuentra entre paréntesis en nuestra
web.
9. <SCRIPT LANGUAGE="JavaScript" type="text/javascript">
document.write("Hola Mundo");
</SCRIPT>
Pascal
El lenguaje Pascal se creó en la década de los 70 con el objetivo de disponer de
un lenguaje de programación de alto nivel y propósito general (se utiliza para gran
diversidad de aplicaciones) orientado hacia los nuevos conceptos de
programación, desarrollado por el profesor suizo Niklaus Wirth como un lenguaje
para la enseñar la programación de modo disciplinado, fácil de aprender y con la
complejidad suficiente para permitir una correcta preparación de los
programadores futuros. Por eso existe una gran similitud entre la sintaxis del
pseudocódigo y la de pascal.
Ejemplo 1
Totalmente estructurado, así es Pascal.
program Hello;
begin
writeln ('Hola mundo')
end.
Smalltalk
Un lenguaje de programación desarrollado en 1970 pensado para programar
orientado a objetos. Se dice que es "puramente" orientado a objetos y es un
estándar para comparar con otros lenguajes que dicen ser orientados a objetos.
Difiere de C++ en que no existe ningún intento de permitir construcciones de
procedimientos como las de C.
Ejemplo 1
Transcript show:'Hello World';cr
LOGO
10. Logo es uno de los pocos lenguajes de programación con instrucciones en
español. Logo es un lenguaje de alto nivel en parte funcional en parte
estructurado, de muy fácil aprendizaje (por lo cual, generalmente es el lenguaje de
programación preferido para trabajar con niños y jóvenes).
Ejemplo 1
escribe [Hola Mundo]
Icon
Icon es un lenguaje de programación de alto nivel y de propósito general con un
largo repertorio de características para procesar estructuras de datos y cadenas
de carácteres. Icon es lenguaje imperativo y procedural con una sintaxis que
recuerda a la de C y Pascal pero con semánticos a un nivel más elevado.
Ejemplo 1
procedure main ()
write ( "Hola Mundo" );
end
XUL
XUL (XML User Interface Language) es un lenguaje de marcas que se utiliza para
describir interfaces de usuario. Con XUL es posible crear fácilmente ricas y
sofisticadas aplicaciones multiplataforma. Forma parte del navegador Mozilla y
está disponible como parte de Gecko, el motor de Mozilla.
Ejemplo 1
*<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<window
id="Hola"
title="Ejemplo: hola mundo"
orient="vertical"
persist="screenX screenY width height"
xmlns= "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<description style='font-size:24pt'>Hola mundo</description>
<description value='Hola mundo' style='font-size:24pt'/>
<label value = 'Hola mundo' style='font-size:24pt'/>
11. </window>*
Perl
Perl es (Practical Extraction and Report Language), un lenguaje de programación
gratuito disponible para Unix, MVS, VMS, MS/DOS, Macintosh, OS/2, Amiga y
otros sistemas operativos. Perl tiene unas poderosas funciones para manejar
texto. Combina características y propósitos de muchos lenguajes de comandos.
Recientemente perl ha ganado popularidad en la creación de webs de contenido
dinámico sirviendo de pasarela entre el sistema, las bases de datos y los usuarios.
Ejemplo 1
El ejemplo más simple de Perl.
print "Hola mundo";
Lisp
LISP (LISt Processing) es un lenguaje de programación que se utiliza para
desarrollar Inteligencia Artifical (AI). LISP fue desarrollado en el MIT por John
McCarthy y sus colaboradores.
Ejemplo 1
(print "Hola Mundo!")
COBOL
cobol nace en 1951, alentado por el Pentágono de los ee.uu. para facilitar la
administracíon de aplicaciones programadas hasta entonces en lenguajes distintos
sobre hardware diverso. Sus siglas, Common Bussiness Oriented Language, nos
dan una idea clara de los objetivos básicos de sus diseñadores, y de hecho desde
entonces el cobol se ha transformado en un estandar de hecho en la industria.
Aunque en ocasiones resulte difícil de creer, el parque de aplicaciones cobol
instalado en estos momentos es muy elevado; para convencerse de ello basta con
consultar las ofertas de empleo de los suplementos económicos de algunos diarios
Ejemplo 1
12. 000100 IDENTIFICATION DIVISION.
000200 PROGRAM-ID. HOLAMUNDO.
000300
000400*
000500 ENVIRONMENT DIVISION.
000600 CONFIGURATION SECTION.
000700 SOURCE-COMPUTER. RM-COBOL.
000800 OBJECT-COMPUTER. RM-COBOL.
000900
001000 DATA DIVISION.
001100 FILE SECTION.
001200
100000 PROCEDURE DIVISION.
100100
100200 MAIN-LOGIC SECTION.
100300 BEGIN.
100400 DISPLAY " " LINE 1 POSITION 1 ERASE EOS.
C++
Desarrollado por Bjarne Stroustrup, es un lenguaje de proposito general, orientado
a la programación de sistemas. El lenguaje ha sido estandarizado por ISO en
1997, bajo el nombre ISO/IEC 14882. Entre sus características se encuentran: -
soporte de abstracción de datos. - soporte para programación orientada a objetos.
- soporte para programación genérica.
Ejemplo 1
#include <iostream>
using namespace std;
int main() {
cout << "Hola Mundo" << endl;
return 0;
}
C#
C# (pronunciado "C sharp") es un moderno lenguaje de programación orientado a
objetos que permite a los programadores construir rápidamente un gran abanico
de aplicaciones para la nueva plataforma .NET de Microsoft.
13. Ejemplo 1
using System;
namespace HelloNameSpace
{
public class HelloWorld
{
static void Main(string[] args)
{
Console.WriteLine("Hola Mundo!");
}
BASIC
BASIC nació en la Universidad de Hannover en 1969 como un intérprete apto para
todos los públicos, incluso personas sin relación directa con la informática. Desde
entonces se ha ramificado en multitud de versiones, y durante un tiempo llegó a
dominar de forma hegemónica como lenguaje de "todo uso". La evolución de los
ordenadores, más rápidos, capaces y baratos, impulsó la creación de software de
complejidad creciente a lo que BASIC temporalmente no pudo hacer frente de
forma competitiva ante compiladores de lenguajes estructurados como Pascal o C.
Puede decirse que el compilador BASIC llegó tarde, y cuando se ha querido
reaccionar en los últimos años, incluyendo una versión estructurada, QBasic 1.1,
en la entrega 5.0 del sistema operativo de Microsoft, BASIC ya tenía muy poco
que hacer en el mercado del DOS frente a productos de la calidad de Turbo
Pascal de Borland, por ejemplo. Sin embargo, el impulso de los entornos gráficos
y la complejidad de la programación en Windows han abierto hueco a la
programación visual, espacio en el que VisualBasic brilla por su potencia y
facilidad de uso. En su última versión va mas allá, incluyendo funciones de base
de datos, política reforzada por el hecho de existir en el mercado aplicaciones que
incorporan VB como lenguaje de macros.
Ejemplo 1
El CLS es opcional pero si lo ponemos nos limpiará la pantalla y quedará mejor.
14. CLS
PRINT "Hola Mundo"
ASP
ASP (Active Server Pages) es un lenguaje propiedad de microsoft que se incluye
con su software de servidor IIS. Se utiliza solo en el campo de la web para
dinamizar el contenido. Se sirve de JScript y vbs para la creación de los
algorritmos y es lenguaje más utilizado en servidores windows.
Ejemplo 1
Incluso en el ejemplo más simple se puede observar la orientación a objetos de
este lenguaje
<% Response.Write("Hola mundo") %>
ActionScript
El lenguaje de script que utiliza Macromedia Flash se llama ActionScript. Con
ActionScript el autor puede controlar todos los objetos, establecer interactividad y
elementos de navegación, crear fantásticos efectos especiales, juegos y, en
definitiva, producir websites muy profesionales.
Ejemplo 1
_root.createTextField("mytext",1,100,100,300,100);
mytext.multiline = true;
mytext.wordWrap = true;
mytext.border = false;
myformat = new TextFormat();
myformat.color = 0xff0000;
myformat.bullet = false;
myformat.underline = true;
mytext.text = "Hola Mundo";
mytext.setTextFormat(myformat);
PHP
PHP, acrónimo de "PHP: Hypertext Preprocessor", es un lenguaje "Open Source"
interpretado de alto nivel, especialmente pensado para desarrollos web y el cual
15. puede ser embebido en páginas HTML. La mayoría de su sintaxis es similar a C,
Java y Perl y es fácil de aprender. La meta de este lenguaje es permitir escribir a
los creadores de páginas web, páginas dinámicas de una manera rápida y fácil,
aunque se pueda hacer mucho más con PHP.
Ejemplo 1
El ejemplo más simple y trivial en este lenguaje.
<?php
echo "Hola Mundo";
?>