¿Por qué debería modernizar mi aplicación?
Experienced developers know that retaining users can be a challenge, so they continuously invest in making their applications faster, more functional and more user-friendly. This effort isn't for the user alone - cleaning up unused and inefficient code makes it easier for the developer to maintain apps moving forward.
- Conservar la compatibilidad con Windows. Las versiones más antiguas de Windows están llegando al final de su ciclo de vida, es el momento perfecto para aprovechar las últimas funcionalidades de Windows 10 y planificar la compatibilidad con las futuras plataformas de Windows.
- Las aplicaciones multiplataforma son necesarias. Considerando que 73 % de los usuarios de internet recurren primero a su dispositivo móvil, depender únicamente de un modelo de aplicación de escritorio limita la utilidad y el alcance de tu aplicación.
- Atrae a los usuarios con UI sofisticadas. Los usuarios abandonan las aplicaciones que tienen un aspecto antiguo o que no están optimizadas para sus dispositivos. Es el momento de sorprender al usuario con una actualización del diseño, lo cual se logra fácilmente con los frameworks visuales de VCL y FMX.
- Refactorización y optimización del código. Es normal que ocurra con el paso del tiempo... el código realizado tiempo atrás se vuelve tosco o inútil. Dedica tiempo a optimizar tu código y cosecharás el beneficio de actualizaciones más veloces, mantenimiento más sencillo y mejor rendimiento de la aplicación.
- Modernize your application and leverage REST API's with RAD Server
¿Por dónde empezar?
Las aplicaciones modernas ofrecen UI sofisticadas, son intuitivas para el usuario, tienen un rápido desempeño y están hechas para facilitar la integración y la implementación de forma continua.
RAD Studio 12 is here and it's AWESOME. Join Ian Barker as he run through some of the features with some cool examples
Join Embarcadero's Developer Advocate as he takes us through the easy way to track down security holes, hidden backdoors, malicious code, and code flaws using automated analysis.
Yesterday's Tools Won't Cut It
¡Tomaste la decisión correcta de modernizar tus antiguas aplicaciones! Para lograrlo exitosamente, necesitarás las mejores aplicaciones de desarrollo disponibles: 11 Alexandria.
- Gracias a la compatibilidad con aplicaciones móviles en todas las ediciones Professional, Enterprise y Architect los desarrolladores pueden ofrecer compatibilidad con aplicaciones nativas iOS y Android mediante un único código fuente y crear fácilmente diseños de UI para aplicaciones móviles con FMX.
- Framework VCL actualizado. Crea UI/UX modernas para Windows, compatibles con funcionalidades de altos PPP, estilos sofisticados y una capacidad de respuesta inigualable.
- Implementa las mejores funciones de compatibilidad nativa con Windows (¡Mejores que las propias de Microsoft!).
- Reutiliza tu código para crear microservicios de alto rendimiento y/o aprovechar la creación de contenedores.
- Create Web Clients with RAD Server using REST API technology
- Ten la seguridad de que el rendimiento de la aplicación no se deteriorará gracias a los frameworks comprobados.
- Optimiza la integración de los datos con las nuevas opciones de conectividad.
- Aprovecha los actuales conocimientos de desarrollo y ahorra tiempo y esfuerzo al migrar el código, sin la molestia de reescribir para otros lenguajes.
Obtén más información sobre metodologías y tecnologías específicas de migración de aplicaciones a continuación u obtén RAD Studio Rio ahora mismo.
Unicode
Se agregó compatibilidad con Unicode a RAD Studio, Delphi y C++Builder, a partir de la versión 2009. En ese entonces, se desarrollaron muchos recursos de migración que siguen siendo útiles hoy, al actualizar desde una versión pre-Unicode (2007 o anterior).
Con las décadas, Delphi ha logrado que la migración sea relativamente menos engorrosa; no obstante, no significa que sea sencilla, ¡y Unicode es un área a la que se debe prestar cierta atención!
Primero, las buenas noticias: muchos casos de aplicaciones heredadas de Delphi se pueden convertir a la versión actual de Delphi y requieren muy poca o ninguna modificación. Si principalmente trabajas con componentes VCL (para los que se ha considerado cuidadosamente la compatibilidad con Unicode, en la mayoría de los casos) o con componentes de terceros que dedicaron un tiempo a entender lo que implica la compatibilidad con Unicode, ya tienes una ventaja.
No entres en pánico si tu aplicación tiene "millones de cadenas"; eso NO significa que debas modificar el código, en absoluto.
Resumen técnico de Unicode
Lo que determina la necesidad de realizar cambios de Unicode es cómo usas las cadenas y para qué. Si no tienes grandes tareas de procesamiento de texto o manipulaciones y te apegas a la operación estándar de la cadena, lo más probable es que tu código funcione sin problemas. Además, si tu código tiene montones de literales de cadena no necesariamente significa que tengas que realizar cambios en el código. Las cosas más comunes a las que deberás prestar atención es el archivo de I/O y las interfaces con archivos DLL y/o bibliotecas externas sin Delphi.
Recursos de Unicode
Para comenzar, echa un vistazo a estos documentos y artículos técnicos, videos y herramientas de migración que te ayudarán con Delphi y la migración a Unicode:
Delphi and Unicode
Delphi y Unicode Este documento técnico fue preparado para ayudar a los desarrolladores que usan versiones de Delphi o RAD Studio previas al lanzamiento de Delphi 2009. Lee este documento si buscas más información sobre por qué y cómo hacer compatible con Unicode un código fuente desarrollado usando una versión pre-compatible con Unicode.
Historias y recomendaciones de expertos
Si estás en las primeras etapas del proceso de migración de una aplicación existente a RAD Studio compatible con Unicode, o si estás en la mitad del proceso, el documento "Delphi Unicode Migration for Mere Mortals" ("Migración a Delphi Unicode para simples mortales") puede ayudarte. Este documento, escrito por muchos de los principales expertos en RAD Studio de la comunidad, te brinda técnicas y consejos valiosos que te simplificarán el camino.
Seminario web: Migrating Legacy Applications to Unicode-enabled Delphi with Cary Jensen (Migración de aplicaciones heredadas a Delphi compatible con Unicode, con Cary Jensen)
Cary Jensen ha trabajado con desarrolladores Delphi de todo el mundo -incluidos destacados autores, principales terceros proveedores y desarrolladores de primera línea- para conocer su enfoque en la conversión a Unicode, los desafíos que enfrentaron y las soluciones aplicadas. Conoce las prácticas más recomendadas para migrar a Unicode en este seminario web informativo.
Migrating your legacy C++Builder applications to unicode
(Migra tus aplicaciones C++Builder heredadas a Unicode)
Blog destacado
Página sobre Unicode y 8 consejos para Unicode, del Dr. Bob – Abarca el formato Unicode y diferentes tipos de cadena
docwiki
Artículo popular sobre Unicode en la documentación online, en DocWiki, que trata sobre "Unicode en RAD Studio"
Herramienta de estadística de Unicode
Herramienta de estadística de Unicode sobre tu aplicación Delphi, para comprobar si es necesario realizar cambios de Unicode
Esta Herramienta de estadística de Unicode te ayudará a recopilar datos estadísticos útiles sobre el tiempo y el trabajo necesarios para migrar tus aplicaciones Delphi a Unicode.
La herramienta examina tu código y te indica dónde y qué es más probable que debas modificar. Esto te dará, al menos, un estimativo de cuántas líneas deberán revisarse.
TEN EN CUENTA: La Herramienta de estadística de Unicode no sabe si alguna de las líneas de tu código realmente debe ser modificada o reemplazada, pero al menos, te indicará una cantidad de líneas a las que deberías echarle un vistazo. Quizá no sea necesario implementar ningún cambio. Todo dependerá de cómo estés usando las cadenas y los caracteres en tu aplicación.
El resultado en Delphi es 100 % Unicode. La migración es sencilla, la biblioteca de componentes visuales (Visual Component Library - VCL) y el compilador se ocuparán de muchas cosas.
La herramienta indica todas las unidades utilizadas, incluidas las unidades de Delphi (y cuántas veces se usó cada una), el número de archivos, el número de líneas y el número de instancias de String, Read, Write, SizeOf, etc.
Blog destacado
Migrating your project from older versions of Delphi. The Pitfalls
(Cómo migrar tu proyecto desde versiones anteriores de Delphi. Los escollos )
Craig Chapman abarca una variedad de temas de migración, como:
- La migración multiplataforma
- Windows 64 bits
- Migración a Unicode
Migración a 64 bits
Desde el lanzamiento de Delphi XE2, es posible generar aplicaciones Delphi de 64 bits a partir de un mismo código fuente, como tu código Delphi tradicional para Windows 32 bits. En este documento técnico, se trata el caso empresarial para 64 bits: The Impact of 64-bit Applications to your Company’s Bottom Line
¡En general, pasar a 64 bits (en Windows y también en iOS) es muy fácil de lograr! Es tan sencillo como agregar la plataforma objetivo de 64 bits en el administrador de proyectos y remodelar el proyecto. Esto representa un enorme beneficio sobre otros lenguajes que necesitan que se declaren diferentes tipos para resolver las diferencias entre dos plataformas.
Recursos de 64 bits
Creación de aplicaciones de 64 bits con Delphi
Breve tutorial que resume cómo crear aplicaciones para 64 bits con Delphi.
[7m16sec]
Blog destacado
Codificación con Delphi en 64 bits, por Stephen Ball -abarca las similitudes y diferencias, predefinición de opciones de compilador condicional y uso de código ensamblador.
Código Delphi 64 bits
Base de datos y middleware
Modernize your application with RAD Server
Migrate existing Delphi or C++ client/server business logic to a modern services-based architecture that is secure and scalable. RAD Server supports REST with JSON (or XML) parameter passing and return results. Publish APIs, manage connected users and devices, capture analytics about the use and users of applications, and connect to local and enterprise databases using FireDAC components. RAD Server also supports user authentication, push notifications, geolocation, and data storage.
Get the RAD Server Technical Guide Watch the RAD Server WebinarCómo migrar de Borland Database Engine (BDE) o DBExpress
Borland Database Engine (BDE) ha quedado obsoleto y a partir de la versión XE8, BDE fue eliminado de la instalación de Delphi, pero todavía se puede descargar de forma individual desde Code Central. Se recomienda migrar todas las aplicaciones que usan BDE a FireDAC. Si eres nuevo en FireDAC Data Access Components, comienza por aquí echando un vistazo a los enlaces sobre Primeros pasos y Cómo comenzar.
dbExpress también se encuentra solo en modo de mantenimiento y los usuarios deberían procurar migrar a FireDAC, que ofrece más bases de datos, es más veloz y ofrece más funciones.
Recursos para bases de datos
FireDAC Skill Sprints - Migrating BDE applications to FireDAC and InterBase (Migrar aplicaciones de BDE a FireDAC e InterBase) - David I
reFind, herramienta destacada de RAD Studio
DocWiki sobre la migración de dbExpres a FireDAC
Este artículo ofrece un tutorial sobre cómo migrar una aplicación cliente-servidor simple usando componentes de acceso a datos dbExpress, como TSQLConnection, TSQLQuery, TSQLTable a FireDAC
docwiki
FireDAC Skill Sprints es una serie de 12 videos de 20 minutos que te enseña las funciones avanzadas de FireDAC
Migración de bibliotecas/componentes de terceros
¿Qué bibliotecas (o componentes) de terceros usas en tu Delphi anterior?
Los complementos de terceros (bibliotecas) se deben reconstruir en la versión actual de Delphi. Contar con el código fuente simplifica el proceso. Tendrás que recompilar tus componentes/bibliotecas de terceros del Delphi anterior, usando la versión 10.1 actual de Delphi para poder usar los componentes y bibliotecas en los proyectos actuales de Delphi.
Los componentes/bibliotecas de terceros sin código fuente podrían necesitar versiones actualizadas de la versión 10.1 de Delphi actual.
La versión actual de Delphi incluye el nuevo Getit Package Manager que te permite buscar, descargar, comprar e instalar paquetes GetIt en la actual versión de Delphi. GetIt actualmente incluye 31 paquetes populares gratuitos, como bibliotecas, componentes, extensiones IDE y SDK, como componentes de código abierto "TurboPack", JEDI Visual Component Library, etc., ¡certificados para funcionar en la versión actual de Delphi!
10 consejos para el éxito de tu aplicación móvil
-
Monetiza tu aplicación usando pagos y anuncios en la aplicación
Los anuncios son una buena manera de monetizar tus aplicaciones. Usa anuncios superpuestos de pantalla completa al iniciar la aplicación y puntos de parada naturales. Integra anuncios rectangulares "leaderboard" o "banners" (320x50) en el encabezado o pie, donde sea más adecuado para tu interfaz. En AppBrain Stats tienen una lista de las redes más populares de anuncios, que incluyen Admob, Millennial Media, InMobi, Chartboost, Tapjoy y muchas más. Agrega pagos en la aplicación para consumibles, compras por única vez e ingresos mediante suscripciones. Ofrece una versión de pago sin anuncios y una versión gratuita de tu aplicación. Brinda una manera de desactivar los anuncios en la versión gratuita, a través de una compra en la aplicación.
-
Asegura las conexiones de datos de tu aplicación con SSL
Los usuarios móviles actualmente están más móviles que nunca y pasan de puntos de acceso inalámbricos seguros a conexiones 4G y puntos de acceso inalámbricos inseguros varias veces por día. Si quieres mantener los datos de tus usuarios seguros de los fisgones que usan rastreadores de paquetes de red, debes implementar un cifrado estándar como TLS/SSL (Seguridad de capa de transporte/Capa de sockets seguros). La manera de lograrlo es mediante una buena biblioteca de terceros probada y comprobada.
-
Estimula a los usuarios a calificar tu aplicación
Una buena calificación en las diferentes tiendas de aplicaciones hoy es más importante que nunca. Generalmente, solo la gente que quiere calificar negativamente va a la tienda de aplicaciones para dar una mala calificación a tu aplicación. Puedes estimular a los usuarios que les gusta tu aplicación a calificarla y guiarlos para que lo hagan. La tercera vez que el usuario use tu aplicación es un buen momento para pedirle que vaya a la página para calificar tu aplicación en la tienda de tu elección.
-
Crea e implementa íconos para tu aplicación
Tener un ícono atractivo es indispensable para aumentar las posibilidades de éxito en las tiendas de aplicaciones. Hay más de 30 tamaños de ícono diferentes que debes crear e implementar para aplicaciones Android y iOS. Crear todos estos íconos es una tarea demandante. Hay utilitarios que pueden ayudarte, como Mobile Gfx Setup, Paint.net y Adobe Flash CC, un programa comercial para Windows más avanzado que viene con una prueba gratuita y con el cual puedes crear y también exportar tus íconos con bastante facilidad.
-
Gestiona eventos de ciclo de vida de activación y desactivación de la aplicación
Una vez que tu aplicación tenga todas las funciones, no termina allí. Un motivo por el cual algunas aplicaciones tienen éxito y otras no es por los detalles que incluyen. Tanto en Android como iOS, hay eventos que le indicarán a tu aplicación cuándo estar activa o cuándo operar en segundo plano. Debes encontrar y gestionar estos eventos para una sofisticada experiencia del usuario. Prueba y manipula todas las diferentes acciones de tu aplicación como entrar en descanso, reactivarse o la función del botón "atrás".
-
No dejes pasar nada por alto. Agrega análisis a tu aplicación
Implementa la característica de datos analíticos mediante bibliotecas de terceros, como Google Analytics, Flurry Analytics, GameAnalytics y Parse Analytics, por nombrar algunas. Los proveedores de datos analíticos cuentan con sus propios SDK para Android, iOS y REST que puedes integrar. Monitorea datos críticos, como cuánto tiempo usa tu aplicación el usuario, qué pantallas usa más y en qué puntos tiene problemas o deja la aplicación. Lo más importante es actuar en base a la información de los datos analíticos. Itera y prueba. Itera y prueba.
-
Establece notificaciones push
Las notificaciones push son un mecanismo importante para que tus usuarios se mantengan involucrados en la aplicación. Procura encontrar el equilibrio: no envíes demasiadas ni muy pocas notificaciones push, para mantener el interés de los usuarios. Las notificaciones push de Android están disponibles a través de Google Cloud Messaging. Las notificaciones push de iOS están disponibles a través de Apple Push Notification Service. Implementar notificaciones push puede ser complicado, pero hay terceros proveedores que te simplificarán la tarea, como Parse, PushWoosh y Upsight (anteriormente, Playhaven).
-
Usa subprocesos para que tu aplicación sea responsiva
Los subprocesos te permiten ejecutar procedimientos de larga ejecución en un proceso separado. Usar subprocesos en cualquier parte de tu aplicación bloqueará la intervención del usuario, como la carga y descarga de archivos, la información de procesamiento o la carga de datos. Si la aplicación se bloquea, los usuarios la dejarán y buscarán otra aplicación. Si un usuario tiene que esperar delante de pantalla para alguna acción, piensa en cómo rediseñar tu aplicación para que el evento que origina esa espera se ejecute en segundo plano.
-
Verifica la conectividad de red antes de intentar conectar
No se puede dar por sentado que el dispositivo móvil tenga conectividad. Si tu aplicación requiere acceso a internet, debes poder manejar la situación cuando no haya conectividad. Usa sistemas de puesta en cola para la carga y descarga de datos. Implementa la posibilidad de reanudar la descarga de archivos cuando sea posible. Una buena idea puede ser un modo sin conexión cuando no haya conectividad, para las características que requieren conexión.
-
Mejora el nombre, la descripción y la distribución de tu aplicación
Un nombre funcional, descriptivo y exclusivo (o una combinación de todo) contribuirá al éxito de tu aplicación. Evita los términos de marcas registradas. Una buena descripción que indique lo que hace tu aplicación, quién es tu competencia y qué tecnología utilizaste puede ayudar para que la gente encuentre tu aplicación. Crear tu aplicación es solo el comienzo. La distribución también es fundamental para el éxito de la aplicación; por lo tanto, si tu aplicación es tanto para Android como para iOS, verifica que se distribuya en las tiendas de aplicaciones más importantes, como Google Play, Apple App Store, Amazon Appstore y Samsung Apps. Cada tienda de aplicaciones tiene su propio proceso y pautas de recepción, pero vale la pena para obtener ese impulso extra que necesitas. Quizá encuentres tu nicho simplemente en Amazon Appstore o Samsung Apps.