Técnicas de desarrollo 4.1.1. Orientados Procedimientos: Con la programación procedimental realizamos tareas lógicas en un mismo proceso, archivo o ambiente lógico, la invocación de un procedimiento se utiliza para llamar a los subprocesos, después estas secuencia son procesada, el flujo de control continua igual después de la última posición donde la llamada fue realiza. La llamada de subrutina sirve para relacionar unos programas con otros y permite modular las aplicaciones, partiendo estas en dos o más secciones llamadas procedimientos, subrutinas, o funciones, según los casos. Por esta razón los lenguajes de programación clásica se llaman también procedimentales Ejemplo (pascal) program enter10 (input,output); var suma,dato,conta: integer; begin suma:= 0; conta:= 0; while conta < 10 do begin readln(dato); writeln (dato); suma:= suma+dato; conta:= conta+1; end; writeln (' suma de 1o enteros = ', suma); end.
4.1.1.1 Orientados a Eventos: En la programación orientada a eventos es el programador quien especifica la secuencia del programa, Aunque en la programación secuencial puede haber intervención de procesos externo a él, estas intervenciones ocurrirán cuando el desarrollador lo haya especificado, y no en cualquier momento como puede ser en el caso de la programación orientada por eventos. Existen muchos ambientes de trabajo que permiten este tipo de programación, aunque los más comunes son los ambientes gráficos que permiten una gran variedad de opciones en su programación, entre ellos podríamos mencionar el clic, doble clic, arrastras y soltar, entre otros, estos son eventos y según su requerimiento se programan los que se necesiten. Ejemplo (Visual Basic) Function Bin(n As Double) Dim s As String, i As Integer uu = u(x) 'Print uu For i = 0 To uu s = (n Mod 2) & s t =n / 2 n = Int(t) Next Bin = s End Function Private Sub a_change() a= a Private Sub Combo1_Change()
'If Combo1 <> "# of bits" Then a = Combo1 Private Sub Command1_Click() 'Print a, Combo1 'If Combo1 <> "# of bits" Then a = Combo1 If Not IsNumeric(x) Then Exit Sub Dim mm As Double Mm = Int(x) e = x - mm Y1 = Bin(mm) Y2 = dec(e, a) Y3 = StrReverse(Y2) y = Y1 & "." & Y3 'y = length(x) Function u(d) 'v1 = Int(Log(x) / Log(2)) 'v2 = Log(x) / Log(2) 'If v1 = v2 Then u = v1 'If v1 <> v2 Then u = v1 u = Int(Log(x) / Log(2)) End Function Function dec(q, a) For i = 1 To a w= q * 2 If Int(w) = 1 Then dec = 1 & dec q=w-1 End If If Int(w) = 0 Then dec = 0 & dec q=w CORPORACIÓN UNIVERSITARIA REMINGTON
End If 'Print dec If q = 0 Then 'Print dec Exit For End If Next i 'Print dec End Function Private Sub Form_Load() a =8 Option1.Enabled = False Option2.Enabled = False Option3.Enabled = False Option7.Enabled = False Option8.Enabled = False Option9.Enabled = False Option10.Enabled = False Option11.Enabled = False Option6.Enabled = False Private Sub Option1_Click() a =8 Private Sub Option10_Click() a = 24 Private Sub Option11_Click() a = 30 Private Sub Option2_Click() a = 16 Private Sub Option3_Click() a = 36
Private Sub Option4_Click() Option1.Enabled = False Option2.Enabled = False Option3.Enabled = False Option7.Enabled = False Option8.Enabled = False Option9.Enabled = False Option10.Enabled = False Option11.Enabled = False Option6.Enabled = False 'Option5.Enabled = False Option4.Enabled = True 'Combo1.Enabled = False a.enabled = True Private Sub Option5_Click() 'Option4.Enabled = False a.enabled = False Option1.Enabled = True Option2.Enabled = True Option3.Enabled = True Option7.Enabled = True Option8.Enabled = True Option9.Enabled = True Option10.Enabled = True Option11.Enabled = True Option6.Enabled = True Option5.Enabled = True 'Combo1.Enabled = True Private Sub Option6_Click() a =4 Private Sub Option7_Click() a =6
Private Sub Option8_Click() a = 12 Private Sub Option9_Click() a = 20 4.1.2. Orientados a Objetos: Está basado en varias técnicas, incluyendo herencia, modularidad, polimorfismo, reutilización, hilos y encapsulamiento. Su uso se hizo frecuente en los años 90 s. En la Actualidad existen muchos lenguajes de programación que integran la orientación a objetos por su poder y alcance que tiene y sobre todo por su flexibilidad y reutilización. Es una de las técnicas más comunes en la actualidad, por su cercanía con el mundo cotidiano y su potencia, tiene como virtud principal la reutilización del código previamente creado, haciendo que un nuevo aplicativo sea más fácil de construir por los recursos que se tienen previos, la mayor parte de los lenguajes modernos sean estos mono plataforma o multiplataforma utilizan esta técnica. Ø Clase: se encarga de definir las propiedades y comportamiento de un tipo de objeto concreto. La instancia de lectura de estas definiciones y la creación de unos objetos nuevos a partir de ellas. Ø Herencia: Es la facilidad mediante la cual la clase A comparte en ella cada uno de los atributos y operaciones de B, como si esos atributos,
operaciones y procesos se hubieran definidos en la primera clase A. en este caso se pueden usar los mismos métodos y variables publicas declaradas en la clase B. Ø Objeto: entidad compuesta por n conjunto de propiedades o atributos y de métodos, los mismos que a eventos. Es equivalente a los objetos reales del mundo que nos rodea. Ø Método: es la parte lógica que se aplica a la programación en cuestión, en el desarrollamos todos los procesos que el aplicativo requiere, está asociado a un objeto, pero la ejecución de este solo se mediante un "mensaje". Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema. Ø Evento: Es un suceso que ocurre en el programa, tal como puede ser un clic, un doble clic etc. El sistema maneja el evento enviando el mensaje adecuado al objeto seleccionado. Ø Mensaje: es la forma de comunicarse con un objeto, mediante este se ordena que ejecute uno de sus métodos con parámetros asociados al evento que lo generó. Ø Propiedad o atributo: contiene un tipo de datos relacionado con un objeto, cuyo valor puede ser alterado por la ejecución de algún método. Ø Características de la Programación Orientada a Objetos
Ø Abstracción: Especifica las características fundamentales de un objeto, donde se captura su comportamiento. Cada objeto que posee el programa sirve como modelo abstracto, además de poder informar y cambiar su estado, y "comunicarse" con otros objetos en el sistema sin revelar cómo se implementan estas características. Ø Encapsulamiento: Es la característica de reunir a todos los elementos que pueden pertenecer a una misma entidad, al mismo nivel de abstracción. Se puede definir también como el principio de ocultación, principalmente porque se suelen emplear conjuntamente. Ø Polimorfismo: Se cataloga como un comportamiento diferente, asociado a objetos distintos, pueden tener el mismo nombre, al llamarlos por ese nombre se utilizará el comportamiento correspondiente al objeto que se esté usando. Esto indica que las referencias y las colecciones de objetos pueden tener objetos de diferentes tipos. Recolección de basura: la Recolección de basura o Garbage Collector es la técnica por la cual el ambiente de Objetos se encarga de destruir automáticamente sus clases, objetos o métodos, este tipo de proceso anteriormente se conocía como constructor. Esto significa que el
desarrollador no debe preocuparse por la asignación o liberación de memoria. Ejemplo (Java) Import java.applet.applet; import java.awt.*; import java.awt.event.actionevent; import java.awt.event.actionlistener; import java.util.calendar; import java.util.gregoriancalendar; public class DiaNac extends Applet implements ActionListener { public DiaNac() { cumple = new Label("Para Su Cumpleaños Faltan?"); zodiaco = new Label("Su Signo Zodiacal"); labelreturnedday = new Label("Fecha de Nacimiento"); textday = new TextField("", 10); textmonth = new TextField("", 10); textyear = new TextField("", 10); buttoncompute = new Button("Calcular
Día"); } public void init() { setlayout(new BorderLayout()); add(createswings(), "North"); textday.requestfocus(); } Orientados a Servicios: Es un concepto de la arquitectura de software que utiliza los servicios para dar soporte a los requisitos del usuario. Permitiendo la creación de sistemas escalables que reflejan el negocio de la empresa, lo cual facilita la interacción entre diferentes sistemas propios y/o de terceros. Introducción al UML UML, es un lenguaje de Modelos Unificados por sus siglas en inglés, es el lenguaje de modelos de sistemas de software más popular en la actualidad, es un lenguaje para construir, especificar, visualizar y documentar sistemas de aplicativos.