Archivo

Archivo para la categoría ‘Delphi’

Test Unitarios; Framework DUnit (Entrega 2)

jueves, 1 de febrero de 2018 2 comentarios
Share Button

Esta es la segunda entrada de la serie dedicada a pruebas unitarias. Si en la primera vimos una introducción a la programación guiada por pruebas, en esta segunda vamos a empezar a revisar los frameworks disponibles que nos ayudan a realizar los test unitarios.

Concretamente en esta nos centraremos en DUnit.

Para realizar Test unitarios con Delphi disponemos de dos frameworks; Según la versión de Delphi podemos utilizarlos indistintamente, aunque a partir de la versión XE8 de Delphi, se recomienda utilizar DUnitX.

CREACIÓN DE PRUEBAS UNITARIAS (FRAMEWORKS)

Para realizar test unitarios con Delphi podemos utilizar los frameworks (ambos Open Source) DUnit y DUnitX.

A partir de la versión Delphi XE8 Embarcadero recomienda utilizar DUnitX, ya que DUnit ha quedado desactualizado. Si se ha trabajado con DUnit es relativamente fácil migrar los test ya existentes a DUnitX.

Lo que vamos a hacer es realizar los test con ambos paquetes y de esta forma también podremos ver las diferencias entre ambos y las ventajas prácticas que nos pueden aportar.

FRAMEWORK DUNIT

Para crear nuestro proyecto de pruebas unitarias que testee la clase TAritmeticaBasica de nuestra unit UClass.TAritmeticaBasica, podemos utilizar el asistente que ya trae el paquete. Si en nuestra versión de delphi no está instalado este paquete (DUnit), hay que descargarlo (de la dirección que hay más arriba) e instalarlo.

  1. Lo primero es crear un proyecto que utilice nuestra Unit. Sería nuestra aplicación que va a utilizar esta unit. Para ello crearemos un nuevo proyecto llamado PAritmeticaBasica y le añadiremos la unit anterior.
  2. A continuación vamos a generar, utilizando el asistente, el proyecto para las pruebas unitarias (y lo añadiremos al mismo grupo de proyectos). De esta forma tendremos nuestro proyecto y junto a el el proyecto de pruebas.

 

Leer más…

Categories: Código, Delphi, Test Tags: , ,

Ya disponible RAD Studio 10.2 Tokio Release 2 (10.2.2)

jueves, 14 de diciembre de 2017 2 comentarios
Share Button

Ya está disponible desde hace un par de días, la última release de RAD Studio. El nombre oficial es 10.2 Tokyo – Release 2 (o abreviado como 10.2.2).

Imagen_fondo

A continuación os pongo una lista de algunas novedades que podemos encontrar en esta release:

  • FireMonkey Quick Edit
    Cambios visuales para ayudar al desarrollador en el diseño de formularios.
  • New VCL Controls

    Controles nuevos para VCL. Un «Card Panel» y un «Stack Panel» y controles de selección de Fecha y Hora. Los 2 primeros mejoran la organización de controles y los 2 segundos aportan estilos más modernos a a estos dos clásicos de edición.

     

    VCL_controls

  • Updated IDE Look & Feel
    Nuevo tema para el IDE, nuevos colores y nuevos iconos para actualizar y mejorar la visualización. Podemos seleccionar directamente desde la barra de opciones del IDE un tema claro/oscuro y acceder a la personalización.
    También se ha modificado el layout por defecto al entrar en el IDE.

Leer más…

Coderage XII (7-9 de Noviembre)

viernes, 3 de noviembre de 2017 Sin comentarios
Share Button

La próxima semana se celebra el Coderage 12 de la mano de Embarcadero. Multitud de conferencias gratuitas y online sobre Delphi, C++ Builder y programación en general. Más de 70 sesiones y casi 60 ponentes para abarcar multitud de temas.

CodeRage_12

Aquí tenéis la lista completa de sesiones:

https://community.embarcadero.com/article/16578-coderage

Y aquí el link de registro:

https://register.gotowebinar.com/register/7990350396754529539

Test Unitarios; Introducción (Entrega 1)

martes, 24 de octubre de 2017 3 comentarios
Share Button

Este artículo forma parte de una serie que cuenta con varios otros alrededor del mismo tema. A continuación os adjunto los links de todas ellas (que iré completando a medida que salgan):

¿Qué es un test unitario?

UnitTesting1El objetivo más a corto plazo de un test unitario (o prueba unitaria) es el de probar una porción de nuestro código, de forma que podamos comprobar que funciona correctamente y que se ejecuta con el comportamiento para el que fue diseñado. Por lo tanto nos ayuda a encontrar fallos en nuestro código.
Podríamos decir que un objetivo más amplio de los test unitarios es, en general, mejorar la calidad del software que desarrollamos. Por un mejor diseño y por un menor número de errores.

Hay quien dice que los test unitarios están pensados para equipos de trabajo donde hay roles definidos. Personalmente considero que hoy en día los test unitarios para un programador, son como el «control de versiones» o los «repositorios de código». Para mi NO SON EXCLUSIVOS de equipos de trabajo, sino que un programador a nivel personal (individual) DEBE trabajar con ellos, aunque no esté integrado en un equipo.

Leer más…

«Programación Delphi para Principiantes»; eBook en Español

lunes, 21 de agosto de 2017 8 comentarios
Share Button

Durante este mes de Agosto se ha publicado en la web de Embarcadero la traducción al Español del libro «Programación Delphi para Principiantes» que durante unos meses hemos estado traduciendo algunos de los MVP de Embarcadero de habla hispana.

Portada del libro

Es un libro, tal como su título explica, está destinado a personas que se inician en la programación con Delphi; La idea es que esté accesible de forma gratuita para profesores y estudiantes que formen parte del «Programa Académico Embarcadero».

Un esfuerzo y un tiempo dedicado, que los que hemos participado en este proyecto esperamos que sea útil para los que se inician en este entorno y que redunde en beneficio de la Comunidad de habla hispana.

Os adjunto la imagen del índice:

Contenido del libro

Un saludo y hasta la próxima.

Categories: Delphi, Embarcadero, Otros Tags: , ,

Multi-Threading for TBitmap, TCanvas, and TContext3D

viernes, 7 de abril de 2017 8 comentarios
Share Button

Mucho se ha hablado de las características de Tokyo en cuanto al soporte de nuevas plataformas. Está claro que la irrupción de Linux entre las plataformas destino de nuestras aplicaciones, es el gran atractivo de esta nueva versión. Otros compañeros de la comunidad han hablado del tema y han publicado vídeos al respecto.

En mi caso voy a hablar de otra de las novedades de la versión Tokyo. Se trata del soporte de multithread para las clases TBitmap, TCanvas y TContext3D en Firemonkey para poder trabajar con un único elemento desde diferentes threads.

Tal y como se explica en el enlace de la wiki, internamente las clases realizan la sincronización de forma automátca, así que aunque no ganemos en rendimiento, si podemos ganar en organización y en claridad a la hora de escribir nuestro código y clases. Imaginad que tenemos que dibujar diferentes objetos o elementos en un TCanvas. Ahora podamos organizar el trabajo en diferentes clases (Threads) que se encarguen de dibujar cada uno de ellos. De otra forma tendríamos que tener un único código o clase donde se dibujaran todos ellos (por lo tanto menos estructurado y organizado).

Leer más…

Lanzamiento de RAD Studio 10.2–Tokio

miércoles, 22 de marzo de 2017 Sin comentarios
Share Button

Si habéis estado atentos a las redes últimamente y/o a la comunidad de Embarcadero seguro que ya os suena el nombre de "Tokio". Este es con el que conocemos a la nueva versión de RAD Studio 10.2 que está a punto de salir.

descargaAl igual que lo que pasó con versiones anteriores cuando se añadió FMX o el soporte para Android, esta versión trae una característica especial que sobresale sobre el resto. La inclusión de Linux como nueva plataforma "target" para las aplicaciones.

Decir que esta nueva característica no está enfocada a realizar aplicaciones gráficas (es lo primero que pregunta gente en el blog y en los foros) sino que está dirigida al desarrollo de aplicaciones servidor. Independientemente de si esta primera versión trae más características o menos, en mi opinión es que nos abre las puertas a poder desarrollar nuevas soluciones de cara a un futuro.

Por ahora el soporte incluye Ubuntu LTS Version 16.04 and RedHat Enterprise Version 7.

He dicho que esta es la característica más llamativa, pero no la única.

Se incluyen otras mejoras relacionadas con soporte para Android en Jelly Bean (4.1, 4.2, 4.3), Kit Kat (4.4), Lollipop (5.x), Marshmallow (6.x) and Nougat (7.x).
Mejoras en los componentes para VCL (32 y 64 bits).
Mejor soporte en multi-threading para TBitmap, TCanvas y TContext3D.
Mejoras en el soporte para AppTethering para VCL y FMX.
Mejoras referentes a High-DPI y soporte para monitores 4K.

El Webminar de Lanzamiento es el 27 de Marzo y podéis revisar más información e inscribiros en el siguiente enlace.

Official Launch Webinar for RAD Studio 10.2 Tokyo

 

Tokyo-Release-Webinar

 

Las varias horas para la presentación; El horario aquí en España es el siguiente:

  • Mon, Mar 27, 2017 3:00 PM – 4:00 PM CEST
  • Mon, Mar 27, 2017 8:00 PM – 9:00 PM CEST
  • Tue, Mar 28, 2017 1:00 AM – 2:00 AM CEST

Un saludo y hasta la próxima

Categories: Delphi, Tokio Tags: , ,

#FunWithDelphi: La foto del día

martes, 31 de enero de 2017 2 comentarios
Share Button

NASA_DelphiBueno, pues ya está publicada la mía!! Y si todavía no os habéis animado os animo a que lo hagáis.

Desde hace unos días está en marcha la competición #FunWithDelphi que ha promovido Embarcadero y que se basa en la API de la NASA.

La descripción completa de la competición la tenéis en estos links; Esta entrada de Marco Cantú, y esta otra donde se explican algunos detalles más técnicos.

Y las reglas y los pasos prácticos a seguir, en este otro enlace:
https://community.embarcadero.com/competitions/14-fun-with-delphi-nasa-api-mash-up

Al final de la página también tenéis la lista de las publicadas hasta ahora, con las opciones para acceder a ellas y votar.

Básicamente, se trata de hacer una aplicación que utilice la API de la NASA y que muestre características de las últimas versiones de RAD Studio. Cualquier plataforma disponible y con el único límite de la imaginación.

Os muestro un vídeo de la mía en funcionamiento (Windows + Android)

Link al video (https://www.youtube.com/watch?v=CBqpnR6hwlo)

Y os dejo algunas imágenes:

Se puede descargar el binario para windows desde el repositorio de github. El código completo de la aplicación lo publicaré en el blog y en el repositorio, una vez que acabe la competición

Sólo me queda esperar que os guste y si es así que la votéis.

Un saludo.

Visualizando y utilizando Mapas (Componente TMapView)

miércoles, 21 de diciembre de 2016 44 comentarios
Share Button


En Delphi podemos utilizar diferentes componentes que nos permitan visualizar mapas en nuestras aplicaciones. El más básico, es el componente TWebBrowser del que ya he hablado otras veces en el blog. Al final un la visualización de un Mapa (utilizando los diferentes servicios existentes) no es más que la visualización de una página web.

Si queréis ver entradas anteriores relacionadas con esto, aquí os dejo una lista:

Aparte de esto, si queréis más información sobre el tema, os puedo recomendar las webs de:

Leer más…

CodeRage XI en Español, 7 y 8 de Diciembre

lunes, 28 de noviembre de 2016 4 comentarios
Share Button

 

Header-CR

 

ACTUALIZACIÓN  09/12/2016: Ya están disponibles los «replays» de las conferencias, aquí:   http://embt.co/CRXIEspanolReplay

Esta conferencia en línea totalmente gratis se realizará el 7 y 8 de diciembre de 2016 y, como siempre, estará llena de sesiones donde se tratarán temas técnicos en profundidad para todos los niveles y todo sobre el desarrollo con RAD Studio.
Se está finalizando la selección de oradores de este año, ¡que incluirá también a los principales expertos de las comunidades hispanohablantes!

ACTUALIZACIÓN (01/12/2016)

Aquí está la agenda con los diferentes seminarios programados.

AGENDA
Fecha: 7 de Diciembre
9:00 México
10:00 Colombia
12:00 Argentina
16:00 España
Migración de aplicaciones a FireDAC Antonio Cabanillas
10:00 México
11:00 Colombia
13:00 Argentina
17:00 España
Aplicaciones distribuidas con REST Jose García
11:00 México
12:00 Colombia
14:00 Argentina
18:00 España
TBD TBD
12:00 México
13:00 Colombia
15:00 Argentina
19:00 España
Cómo modernizar su estilo de programación Jhonny Arley Suárez
Fecha: 8 de Diciembre
9:00 México
10:00 Colombia
12:00 Argentina
16:00 España
Delphi MVC Framework y FireDAC Emilio Pérez
10:00 México
11:00 Colombia
13:00 Argentina
17:00 España
Por qué usar C++Builder Luis Felipe Gonzalez Torres
11:00 México
12:00 Colombia
14:00 Argentina
18:00 España
Desarrollando Apps Móviles con Delphi y SQLite José Castillo Reyes
12:00 México
13:00 Colombia
15:00 Argentina
19:00 España
Creando un cliente de una API REST Fluida con la biblioteca cliente REST de Delphi Juan Antonio Castillo