sábado, 8 de octubre de 2011

Multiparadigma



Que es lenguaje de programacion multiparadigma

Es el cual soporta mas de un paradigma de programacion. Segun lo describe Bjarne Stroustrup, permiten crear "programas usando mas de un estilo de programacion.

Lenguaje Ada multiparadigma

Ada es un lenguaje de programacion orientado a objetos y fuertemente tipado de forma estatica que fue diseñado por Jean Ichbiah de CII Honeywell Bull por encargo del Departamento de Defensa delos Estados Unidos. Es un lenguaje multiproposito, orientado a objetos y concurrente, pudiendo llegar desde la facilidad de Pascal hasta la flexibilidad de C++.


Comparacion con Pascal:
Estructura de un programa

Ada:                                                                  Pascal:   
                                                                       
procedure Mi_Programa is                             program Mi_Programa;                            
                                                                        const
Max_Empleados : constant  := 50;                   Max_Empleados = 50;
                                            
type T_Empleados is                                       type
     range 1 . . Max_Empleados;                        T_Empleados=1... Max_Empleados;

Num_Empleados :                                            Var
      T_Empleados  := 10;                                  Num_Empleados : T_Empleados;

procedure Un_Proc is                                      procedure Un_Proc;
begin                                                                begin

. . . ; -- instrucciones                                         . . . ; (* instrucciones *)
                                                                         end;
end Un_Proc; 
                                                                         begin
begin
   . . . ; -- instrucciones                                      . . . ; ( instrucciones )
end Mi_Programa;                                           end.

Ada en multiparadigma es:

Concurrente: Ada soporta la programacion de procesos concurrentes mediante las tareas ("tasks").

Las tareas constan de especificacion y cuerpo:
  • La especificacion de una tarea delara sus puntos de entrada (si los hay)
  • El cuerpo define una actividad que se ejecuta independientemente, tiene declaraciones e instrucciones.
Las tareas van en la parte de declaraciones de un modulo.
  • Se arrancan nada mas ser visibles
  • El modulo que las declara no termina si no han terminado todas sus tareas.
Ejemplo:

procedure Control_del_Automovil is

task Medida_Velocidad;

task Control_ABS;

task Control_Inyeccion;

task  body Medida_Velocidad is
 begin
   loop
      Acciones de Medida_de_Velocidad;
      Esperar al proximo periodo (20 ms);
 end loop;
 end Medida_Velocidad;

task body Control_ABS is   is
begin
    loop
 Acciones de Medida_de_Velocidad;
 Esperar al proximo periodo (40 ms);
 end loop;
end Control_ABS;

task body Control_Inyeccion is
 begin
 loop
 Acciones de Control de Inyeccion;
 Esperar al proximo periodo (80 ms);
 end loop;
 end Control_Inyeccion;

begin
 null; -- el programa principal es otra tarea
 end Control_del_Automovil;
Generico: es un tipo de programación que está mucho más centrada en los algoritmos que en los datos. La idea de esta forma de programar pretende generalizar las funciones utilizadas para que puedan usarse en más de una ocasión.
Ejemplo:
Algoritmo Generico
generic
type item is private;
procedure canjear (x,y: in out item);

procedure canjear (x,y : in out item) is
aux:item;
begin
aux:=x;
x:=y;
y:=aux;
end;

Distribuido: es un paradigma de programación enfocado en desarrollar sistemas distribuidos, abiertos, escalables, transparentes y tolerantes a fallos. Este paradigma es el resultado natural del uso de las computadoras y las redes.

Imprescindible:

Orientado a objetos: 
Encapsulado de objetos: mediante paquetes.
Clases de objetos: tipos de datos abstractos y etiquetados, declarados en un paquete, o en un paquete generico.
Operacion de un objetos: subprogramas definidos en el paquete donde se declara el objeto o la clase de objeto.            
link recomendados 

sábado, 1 de octubre de 2011

PHP Orientado a Objetos

 
La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo herencia, abstracción, polimorfismo y encapsulamiento. Su uso se popularizó a principios de la década de los años 1990. En la actualidad, existe variedad de lenguajes de programación que soportan la orientación a objetos.

Crear un objeto

Utilizaremos class para definir un objeto.

Los objetos tienen atributos y tienen metodos. Los atributos son variables y los metodos son funciones. Las variables se definen con (var) y los metodos se crean con funciones o funciones con parametros.


Constructor

Vamos a usar un constructor y el constructor debe de tener el mismo nombre que se le asigna a class.

Creamos el constructor con una funcion con el mismo nombre de class y tendra un parametro llamado "algo" y esta funcion devolvera un "echo" y cerramos con un punto y la variable ($algo).

Hasta aqui estamos guardando un objeto en la memoria.

Ahora para que muestre algo el navegador vamos a poner ($decir).


Metodos que usan atributos

Esto es como utilizar metodos para utilizar atributos de una clase.

Para usar el atributo utilizaremos (this). Para llamar a la variable atributo.Hasta a qui nada a ocurrido lo unico que emos echo es declarar una clase.

Ahora creamos una instancia del objeto y reiniciar el navegador para ver lo que emos echo.


Llamando a un metodo concreto

 
Esto es para ver como llamar a uno de los metodos concretos de un objeto. Crearemos una clase llamada saluda que tendra dos metodos.

Para llamar al metodo tendremos que hacer una instancia, despues crearemos una variable y asi probar el codigo.

De estos link me apoye para poder explicar lo basico de como es PHP orientado a objetos espero que les guste y la verdad los recomiendo.

http://www.webestilo.com/php/articulo.phtml?art=27 
http://www.desarrolloweb.com/articulos/1540.php
http://todo-php.blogspot.com/2007/07/php-orientado-objetos.html