Ir al contenido principal

Entradas

Mostrando las entradas etiquetadas como clases

Powershell como si fuera en primero

En este post continuaremos dando un vistazo a Powershell , el lenguaje de scripting de Microsoft. La programación orientada a objetos está presenta en lenguajes de programación modernos y en éste no podría faltar. Los pilares de la POO son los siguientes: Abstracción , entender los atributos a utilizar; la interacción entre sí. Encapsulación , niveles de acceso y plantillas. Herencia , crear clases a partir de clases existentes. Reutilización de código. Polimorfismo , comportamiento según el contexto e implementación. Creamos nuevo archivo: new-item clases1.ps1 -type file clases1.ps1 class MyClase{ static [int]$MAX = 137 [string]$NombreAtributoStr [int32]$NombreAtributoInt [datetime]$NombreAtributoFecha } $obj = [MyClase]::new() $obj.NombreAtributoStr = 'Alquimista' $obj.NombreAtributoInt = 33-11; $obj.$NombreAtributoFecha = '12/12/2022' $obj Algunos tipos de datos que podemos usar son: [int16], [i...

Python: clases, herencia y cosas útiles

Continuando con la serie de ejercicios de programación usando Python en esta ocasión veremos un ejemplo de Herencia.  Ej. 1. Crear clase con sus respectivos atributos y métodos. Economica (presente, tasa, periodo); Donde: presente, tasa y periodo son las variables necesarias para calcular el valor futuro de una cantidad a inversión. futuro = presente*pow(1+tasa/100, periodo) economica.py class Economica ( object ): pass Definimos una clase (Economica) que "hereda" implícitamente de object. Definir atributos es muy fácil: class Economica ( object ): def __init__ ( self ,presente,tasa,periodo): self . presente = presente self . tasa = tasa self . periodo = periodo print "Objeto Economica creado e inicializado" Python es perfecto para usuarios que detestan escribir líneas interminables de código. Ahora definiremos su método "toString()"  def __repr__(self), el cual actúa convirtiendo un object a su...

Groovy: uso de"with"

En los lenguajes dependientes de la JVM encontramos varias peculiaridades que no llaman la atención. Y Groovy no se queda atrás.  Tenemos esta clase en Java: class Cliente {     private String nombre;     public Cliente(){}     public void setNombre(String nombre){          this.nombre=nombre;    }      public String getNombre(){       return nombre;    } } Y ahora en Groovy: class Cliente{     String nombre } Lo primero que notamos es que es menor código escrito. Pero también a la hora de instanciar encontramos algo como esto: En Java: Cliente cliente= new Cliente(); En Groovy: def cliente= new Cliente(nombre:"") Y para "settear": En Java: cliente.setNombre( "El alquimista de código" ); En Groovy nos permite hacer esto de varias formas: def cliente= new Cliente(nombre: "El alquimista de có...

Python, lo bello es mejor que lo feo

En el post anterior vimos como crear una clase en Python . Comparado con lenguajes como Java es bastante sencillo.  /*Java*/ public class Submarino{       private java.util.List<String> tripulacion;       public Submarino(){}       //getters y setters      ...      ... } ''' Python ''' class  Submarino( object ):        def __init__(self,tripulacion):                self.tripulacion=tripulacion Esto solo para crear una clase, pero si necesito que una clase herede atributos y método de una clase ... ¿existe la herencia en Python?. La respuesta es si. #clase Padre class Submarino( object ):          def tipo(self):              print "submarino militar" #clase hija class Submarino_Juguete( Sub...

Creando una clase en Python

Crear una clase en Python es bastante sencillo. En la siguiente imagen se muestra un ejemplo de una clase llamada 'Triángulo_equilátero'. En Python: ''' Clase '''   class   Triangulo_equilatero(object):       def __init__(self,altura,base,lado):                  self.altura=altura                  self.base=base                  self.lado=lado No es necesario crear métodos setter y getter. Podemos acceder a cualquier miembro/propiedad de la clase de la siguiente manera: ''' main ''' def main(): #instanciamos la clase      triangulo=Triangulo(2.8,3.0,3.0)      #mostramos valores      print "altura: %f , base: %f ,lado: %f\n"%(triangulo.al...