Primeros pasos con RAD Studio XE5 – Parte I

Retomamos la actividad en el blog, que desgraciadamente tuve que interrumpir por motivos de trabajo y lo hacemos a lo grande… con la primera entrada en la que vamos a poder conocer unas pinceladas de XE5, que es la primera versión de Delphi para la plataforma Android.

🙂

Se que eso va a ser de agrado para muchos compañeros que desean conocer algo del próximo lanzamiento, y dado que Embarcadero nos ha autorizado, dentro del programa de MVPs, para poder compartir desde nuestros blogs esas primeras impresiones que hemos recibido a traves de las betas, me parecia la mejor forma de reencontrarme con vosotros.

Realmente no he estado alejado de la Comunidad, ya que he seguido participando activamente dentro del Proyecto Delphispano, y en el marco del foro de Delphi Solidario en Facebook. Pero es verdad que no he podido atender todo lo que quisiera mi propio blog. No obstante creo que ha valido la pena esperar.

Para esta primera entrada había preparado unas capturas dentro de un powerpoint y finalmente, por temas de espacio en el video, se omitieron con la idea de mostrarlas en esta entrada. Las imágenes muestran algunas ideas que me parecen importantes respecto a las novedades.

Esta es la primera idea importante:

Diapositiva2

Viene a expresar que la herramienta que ya soporta múltiples plataformas, nos va a ofrecer un marco común de trabajo capaz de permitirnos trabajar con transparencia sobre muchos de los objetos propios de cada plataforma, de forma que una misma base de código va a permitirnos compilar para distintos dispositivos y plataformas.

Logicamente, cada una de ellas, luego tendrán sus peculiaridades, y eso no nos va a eximir de conocerlas. Ese marco común es por supuesto: Firemonkey.

En este punto os invitaría a la lectura de las cuatro entradas del blog de Delphi en Movimiento, donde nuestro buen amigo Eliseo, compartió con la comunidad, como Delphi nos permitirá que un mismo proyecto pueda ser compilado en distinta plataformas y dispositivos con los mínimos cambios.

Tenemos un entorno de desarrollo multiplataforma, que suma una gran opción a las que ya teníamos, como lo es Android.

Rad Studio XE5 trae muchas mejoras a nivel de IDE que nos van a ayudar a incrementar nuestra productividad. Una de esas mejoras que a mi particularmente me parece genial, es el nuevo explorador de proyectos.

Esa idea se captura en la siguiente imagen, que nos muestra distintos nodos nuevos, concretamente el nodo TARGET, del cual van a colgar los dispositivos vinculados al destino seleccionado. En el nodo habilitado para Android podremos tener conectados los distintos dispositivos sobre los que vayamos a trabajar y alternarlos de una forma tan sencilla como es la selección de uno de ellos. En el video se aprecia claramente esto.

Personalmente me ha parecido muy acertado este cambio. Es de las cosas que mas me han gustado.

Diapositiva3

 Pero hay mas mejoras y Rad Studio viene con muchas mas novedades. Una de esas novedades, en la linea de incrementar la productividad de nuestro trabajo en el IDE es la nueva disposición de IDE Insight, reubicado en una zona mas accesible y separado de la ventana de dialogo, ahora ofrece mayor funcionalidad de cara a nuestro uso frecuente.

Diapositiva4

Rad Studio también ha mejorado el mismo marco de trabajo con iOS y Android en la gestión de Deploy, que además frente a XE4, nos permitirá seleccionar múltiples archivos. Un interfaz mejorado buscando que se incremente la productividad en esas tareas de configuración del dispositivo.

Diapositiva5

Aunque aquí no se vea reflejado, y para que se pueda entender esta idea, la asistencia de nuestro Entorno empieza con la instalación de los SDK y NDK adecuados a la versión actual de desarrollo de forma que tras esa instalación de XE5, nuestro entorno quedará configurado en todas la rutas de gestión de librerías. Esa idea que ya la podíamos encontrar en XE4 cuando descubríamos la facilidad de configurar el marco de trabajo, ahora la volvemos a descubrir con Android. En próximas entradas será algo que podamos ver y comentar.

Otro tema que forma parte de las novedades, viene de la mano de Android el el uso que hace esta plataforma de los permisos a nivel de aplicación.

Ahora podemos encontrar en la zona de opciones de proyecto un área de permisos de usuario donde vamos a configurar con un verdadero//falso los distintos permisos que van a ser dispuestos. En la programación de Android supondría que deberíamos en muchos casos escribir en el Xml del archivo de manifiesto de la aplicación, cada uno de estos permisos. Es una cosa que a mi me ha encantado y me ha parecido una gran idea.

Diapositiva6

 

Hay mucho mas y muchos detalles para comentar. Tendremos tiempo para compartirlos. Quedaban enumerados en la imagen inferior.

La llegada de Android implica cambios. Algunos mas importantes otros. Pero creo de verdad que vale la pena.

Diapositiva7

Finalmente, he preparado un pequeño video donde se puede ver un cliente datasnap para firemonkey y simultáneamente, el mismo cliente compilado con iphone. Para hacerlo lo mas simple posible, solo vamos a ejecutar uno de los métodos que por defecto trae la plantilla de datasnap, el método EchoString() que retorna la misma cadena que hemos enviado, pero creo que eso ya nos permitirá valorar las posibilidades que abre todo lo que encierra esta tecnología dentro de las plataformas móviles.

A mi, al menos, me parece francamente prometedor el abanico de posibilidades que disponemos en cuanto a datos: DataSnap, SqlLite, Interbase, Firedac.

El video, también incluye una pequeña demos donde se muestra algo característico de la plataforma Android, como puede ser el uso de los Intent. Embarcadero está haciendo un trabajo enorme que se puede apreciar cuando se recorren las unidades que encapsulan los objetos propios de Android.

En ese sentido me siento francamente convencido de que estamos en un camino correcto. Quizás un poco tarde para las necesidades que teníamos de incorporar Android a nuestros desarrollos pero no me queda duda de que ha valido la pena esperar. Creo que nunca ha sido tan fácil hacer una aplicación tanto para Android como para iOS y las que puedan venir en adelante.

Por eso mi pregunta…

¿De verdad te la vas a perder?

🙂

Me despido para preparar nuevas entradas que os puedan ser de ayuda antes del lanzamiento.

Espero que os guste y que hayais disfrutado de este rato que hemos compartido.

Podeis encontrar mas información en la web de Embarcadero:

Get Ready to Create Android Apps with RAD Studio

Diapositiva8


Enlaces relacionados que no os deberíais perder:

Sneak Peek of Delphi XE5: Android DataSnap
Posted by  on 21-Aug-2013


 

 

11 respuestas a “Primeros pasos con RAD Studio XE5 – Parte I

Add yours

  1. Gracias, Eliseo.
    Me alegra que haya tenido tan buena acogida.
    Ha sido un excelente forma de reencontrarme con el blog.

    Por cierto, aunque no te comentara nada expresamente, felicidades por la serie tan útil que compartiste con nosotros, con los cuatro artículos que comentaba en el interior de la entrada. Fue un acierto su publicación. Así que Felicidades también con retraso.

    🙂

    Saludos.

    Me gusta

  2. La falta de ejemplos y tutoriales por parte de Embarcadero ha hecho que tengamos que rebuscar en blogs como el tuyo….
    Muchas gracias por vuestro aporte incondicional que hace que aún se mantenga vivo este maravilloso lenguaje…

    Me gusta

  3. Buen día. Muy buena explicación y gracias por tus aportes. Tengo una aplicacion en delphi 7 y se esta pensando en un proceso de migración a un entorno RAD, y poder generar funcionalidad para varias plataformas. Con tu experiencia no se si has realizado algún proceso de migración, y me comentaras como se puede iniciar o que debería tener en cuenta para que no sea tan traumático. Mil gracias.

    Me gusta

  4. Hola, acabo de crear una aplicacion para windows escritorio y sale el sigueinte mensaje en otra computadora: «El programa no puede iniciarse porque falta BORLNDMM.DLL en el equipo», ya he buscado y desactivado las opciones del project-Linker-Use RTL Dinamic , runtime libreries. y aun sigue igual. Como lo soluciono para que el porgrama se ejecute en cualquier windows..gracias

    Me gusta

    1. Hola:

      Si buscas en internet, todas las respuestas apuntan a ese punto.

      La opción de desactivar «Use RTL Dinamic…», (desmarcar el check), implica a efectos de tu ejecutable y de esta librería, que se ha enlazado en tiempo de compilación frente a la carga dinámica, que requeriría que tu aplicación distribuyera esa y otras dlls que necesita para ejecutarse. Por lo tanto, el tamaño, del exe resultante, debería ser lógicamente mayor, al contrario de la situación inicial. Es decir, era menor porque necesitabas distribuir las librerías junto con el ejecutable. Yo te recomendaría que te aseguraras que efectivamente que el compilador está enlazando las librerías y que el tamaño es apreciablemente mayor, antes que nada.

      No puedo adivinar que version de delphi estas usando ni indicas alguna razón que haga sospechar de qué problema puede existir. Si efectivamente, copias esta librería en la carpeta de la aplicación (o del sistema) y se ejecuta correctamente algo ha fallado en esa compilación. Tampoco indicas si has probado el ejecutable en varias maquinas y en todas se produce el error.

      No creo que tenga nada que ver el antivirus (lo digo por decir algo). En algunos casos puedes leer en internet que han existido falsos positivos que bloquean algunas dlls. Pero eso estaría mas relacionado con la carga dinámica. Si tu aplicación distribuye una serie de librerías y la maquina cliente, su antivirus, lleva a la zona de cuarentena una de ellas, quedando inaccesible.

      Da alguna pista.

      Me gusta

      1. Gracias por responderme, bueno indicarte que tengo instalado la version de Embarcadero RAD Studio 10 Seattle, de ahi elijo Delphi 10 Seatle, de ahi sale un menu para escoger para crear un Multi-device-aplication, crear nuevo proyecto o abrir proyecto.
        Yo elijo Crear nuevo proyecto y me sale otras opciones entre las cuales estan: «component»,»Data Module»,»FireMonkeyFrame»,»FireMonkeyMetropolis UI»,»MultiDeviceForm»,»Thread Object»,»Unit», «VCL Form»,»VCL Frame»,»VCL Metropolis UI Form», de esas opciones he creado con «MultideviceForm» y con «VCL Form», pero cuando les envio a mis amigos por correo para que lo ejecuten en sus computadoras el ejecutable les sale que les falta la libreria BORLNDMM.DLL .

        Si necesita mas informacion, estare pendiente de su respuesta. gracias

        Me gusta

  5. Gracias por responderme, bueno indicarte que tengo instalado la version de Embarcadero RAD Studio 10 Seattle, de ahi elijo Delphi 10 Seatle, de ahi sale un menu para escoger para crear un Multi-device-aplication, crear nuevo proyecto o abrir proyecto.
    Yo elijo Crear nuevo proyecto y me sale otras opciones entre las cuales estan: “component”,”Data Module”,”FireMonkeyFrame”,”FireMonkeyMetropolis UI”,”MultiDeviceForm”,”Thread Object”,”Unit”, “VCL Form”,”VCL Frame”,”VCL Metropolis UI Form”, de esas opciones he creado con “MultideviceForm” y con “VCL Form”, pero cuando les envio a mis amigos por correo para que lo ejecuten en sus computadoras el ejecutable les sale que les falta la libreria BORLNDMM.DLL .

    Si necesita mas informacion, estare pendiente de su respuesta. gracias

    Me gusta

  6. Siento no haber podido responder antes.
    Lo tenía pendiente pero tampoco tenía una respuesta. Por lo que, con independencia de que estemos comentándolo aquí, te invitaría a que trasladases la pregunta en el grupo de Facebook DelphiSolidario, https://www.facebook.com/groups/delphisolidario/ en el que si no puedo ayudarte, quizás algún otro compañero si se le ocurra algo. Somos ya bastantes compañeros. Mas de 1100 miembros.

    Respecto a lo que me comentabas, está claro que has iniciado ambos proyectos, uno con la vcl y otro con firemonkey, y entiendo que te sucede en ambos, y además, estas usando Delphi 10. Vale.

    La libreria que te esta pidiendo estaría relacionada con la gestión compartida de memoria, como puedes ver por el enlace:
    http://docwiki.embarcadero.com/RADStudio/Seattle/en/Sharing_Memory

    Se solía incluir en el uses de la aplicación que iba a usar memoria compartida con una dll, gestionando las cadenas de texto, el uses ShareMem, al inicio de la cadena de Uses. Eso te obligaba a incluir la librería al distribuir tu aplicación.

    Quizás sea alguna instalación posterior, que esté haciendo que sea requerido y tu no detectas el error porque ya lo tienes en la ruta del entorno y lo localiza.

    Haz memoria. Espero que te de alguna pista.

    Me gusta

Deja un comentario

Blog de WordPress.com.

Subir ↑

Marina Casado

Escritora y Doctora en Literatura Española. Periodista cultural. Madrid, España

Sigo aqui

Mi rincon del cuadrilatero, ahi donde al creer que me he rendido, aun sigo peleando.

Recetas y consejos nutricionales

Indicadas para personas con diabetes, recomendadas para todos.

¡Buen camino!

ANÉCDOTAS Y REFLEXIONES SOBRE UN VIAJE A SANTIAGO…

https://lfgonzalez.visiblogs.com/

Algunas reflexiones y comentarios sobre Delphi

It's All About Code!

A blog about Delphi, C++ Builder and related technologies...

The Podcast at Delphi.org

The Podcast about the Delphi programming language, tools, news and community.

Blog de Carlos G

Algunas reflexiones y comentarios sobre Delphi

The Road to Delphi

Delphi - Free Pascal - Oxygene

La web de Seoane

Algunas reflexiones y comentarios sobre Delphi

El blog de cadetill

Cosas de programación....... y de la vida

Delphi-losophy

A Lover of Delphic Wisdom

Delphi en Movimiento

Algunas reflexiones y comentarios sobre Delphi

marcocantu.blog

Algunas reflexiones y comentarios sobre Delphi

Press F9

Algunas reflexiones y comentarios sobre Delphi

El blog de jachguate

Un blog sobre tecnología y la vida en general