Estructuras Datos por valor o por referencia Un struct es básicamente, una estructura de datos o al menos ese es su objetivo o representación. Pero vista desde un punto de vista más amplio a nivel de Swift podemos pensar que un struct es un realidad una clase sin herencia y cuyo principal objetivo es crear una estructura de código que pueda ser representada a partir de un tipo de dato por valor y no por referencia. Mientras los tipos de dato por referencia suponen la base de la orientación a objetos, donde una variable o constante no contiene el dato en sí, si no la… Continuar leyendo


Tuplas Las tuplas es un tipo de dato compuesto que es una de las grandes novedades que incorporó Swift, y cuyo mayor valor no es el tipo en sí, si no que está muy integrado en el sistema y por lo tanto podemos sacarle un gran rendimiento. Ejemplo: Imaginemos que queremos declarar varias variables a la vez y darles un valor, como por ejemplo, un alto y un ancho. Normalmente haríamos: var alto = 2 var ancho = 2 Con ayuda de las tuplas, podemos reducir el código así: var (alto, ancho) = (2, 2) print(alto) print(ancho) Podemos enumerar tanto arrays como… Continuar leyendo


Clases y herencia Una clase es una plantilla para la creación de objetos de datos según un modelo predefinido. Las clases son un pilar fundamental de la programación orientada a objetos. Permiten abstraer los datos y sus operaciones asociadas al modo de una caja negra. Los lenguajes de programación que soportan clases difieren sutilmente en su soporte para diversas características relacionadas con clases. La mayoría soportan diversas formas de herencia. Muchos lenguajes también soportan características para proporcionar encapsulación, como especificadores de acceso. class ClaseEjemplo {     var atributo: Int = 0 } class ClaseEjemplo2 : ClaseEjemplo{     } Hemos… Continuar leyendo


Una función (método o procedimiento, como prefiramos llamarlo) es un trozo de código con entidad propia que recibe o puede recibir unos valores y que devolverá o puede devolver un resultado. Su cometido es simple: permitir ejecutar una serie de instrucciones en nuestro código, de manera repetida, sin tener que poner el mismo código cada vez. Las funciones se declaran siempre con la palabra clave func seguida del nombre que queramos darle. Luego, imprescindible, paréntesis. Si la función no recibe parámetros de entrada (valores con los que trabajará) ponemos unos de apertura y cierre seguidos () y si no, separados por coma ponemos los parámetros… Continuar leyendo


En este artículo veremos las instrucciones de flujo de control como bucles o condicionales.    If y switch La forma de condicionar un flujo de ejecución, para hacer que nuestro programa ejecute o no determinadas partes de código, se hace con las instrucciones if y switch. El primero es una simple condición (si x es igual a y, haz z) y el segundo es lo que se denomina una sentencia case, o lo que es lo mismo, un listado de posibles, con un conjunto de instrucciones en caso de cumplirse una de estas condiciones (dependiendo del valor de x, si es 1 haz esto, si es 2 esto otro, si es 3 lo de más allá.… Continuar leyendo


Swift es un lenguaje de programación multiparadigma creado por Apple enfocado en el desarrollo de aplicaciones para iOS y Mac OS X. Fue presentado en WWDC 2014​ y está diseñado para integrarse con los Frameworks Cocoa y Cocoa Touch, puede usar cualquier biblioteca programada en Objective-C y llamar a funciones de C. También es posible desarrollar código en Swift compatible con Objective-C bajo ciertas condiciones. Swift tiene la intención de ser un lenguaje seguro, de desarrollo rápido y conciso. Usa el compilador LLVM incluido en Xcode. En el año 2015 pasó a ser de código abierto. Swift es un lenguaje fuertemente tipado, aunque su declaración no siempre es necesaria gracias a su capacidad de… Continuar leyendo


Variables y constantes Una variable es un contenedor cuyo valor puede variar en el transcurso de la ejecución de nuestro programa. Una constante, por el contrario, es un valor que permanecerá inalterable (o inmutable) durante el mismo. Ambos tipos forman parte de lo que se llaman propiedades. Las variables se definen con la palabra clave var antecediendo al nombre de la misma y las constantes con la palabra let. Ejemplo: var saludo = «Hola» var numero = 5 let cantidad = «20 unidades» let pedido = 15 Podemos definir varias variables o constantes en una misma línea, separando cada nombre y su valor por una coma. var x = 0, y = 0.0,… Continuar leyendo


¿Qué es electron? Electron es un framework que permite la creación de aplicaciones de escritorio utilizando JavaScript puro, a través de un runtime con APIs nativas, enfocado en aplicaciones de escritorio, en vez de servidores web, es de código abierto y multiplataforma (funciona bajo Linux, Mac y Windows). Esto no significa que Electron sea un binding de librerías GUI para JavaScript. Electron utiliza páginas web como su GUI, por lo cual puedes verlo como un navegador Chromium mínimo, controlado por JavaScript. Compañías como Microsoft, Facebook, Slack y Docker utilizan esta plataforma. Electron en acción Primeramente para continuar necesitas tener instalado Node.js, para luego… Continuar leyendo


RMI (Java Remote Method Invocation) es un mecanismo ofrecido por Java para invocar un método de manera remota. Permite que un objeto ejecutándose en un JVM llame a métodos de otro objeto que esta en una JVM diferente. Para plataformas diferentes se necesitaría SOAP o CORBA. RMI se caracteriza por la facilidad de su uso en la programación por estar específicamente diseñado para Java; proporciona paso de objetos por referencia (no permitido por SOAP), recolección de basura distribuida (Garbage Collector distribuido) y paso de tipos arbitrarios (funcionalidad no provista por CORBA). A través de RMI, un programa Java puede exportar un objeto, con lo que dicho objeto estará accesible a… Continuar leyendo


Una de las prácticas habituales en los desarrollos, es la creación de script sql incrementales. Con lo que comenzamos con script de creación de tablas, script de inserción de datos etc etc … y, a medida que avanza el desarrollo, cada uno de los desarrolladores va creando scripts con las modificaciones oportunas que le exige la tarea que está llevando a cabo. Esta práctica hace del proceso de cambios de base de datos un proceso totalmente manual, que puede llevar a confusiones, sobre todo debido a que es muy posible no saber que scripts se han ejecutado y cuales faltan… Continuar leyendo