Archivo

Archivo del autor

Felices Fiestas!

viernes, 21 de diciembre de 2012 2 comentarios
Share Button

Aprovecho la felicitación que hemos realizado las personas que formamos el Proyecto de DelpHispano, para desearos a todos los que visitáis este blog, unas Felices Fiestas.

Felicitación

 

Un saludo.

Categories: Otros Tags: ,

Programas multiidioma con Delphi

jueves, 25 de octubre de 2012 22 comentarios
Share Button

flags-all-countries_6130Ya he hablado en otras ocasiones de cómo generar un aplicación multiidioma en Delphi y de paquetes tanto comerciales, como los componentes siComponents, como de código abierto como GNU GetText. En esta entrada hablaba de ambos y explicaba cómo acometer este proceso.

Aplicación multiidioma con GNU GetText

Hace tiempo había revisado el sistema de internacionalizar aplicaciones de Delphi (en este caso en la versión 6) y no me pareció muy intuitivo, tal vez también por falta de algo de documentación. Por lo que he visto en las versiones nuevas, pocas cosas han variado en el proceso y en las herramientas que trae el IDE.

En este caso me he visto obligado por las circunstancias a utilizarlo, y aunque a priori me ha resultado un poco “confuso”, como en su momento, una vez puesto en marcha, el sistema la verdad es que no es complejo y funciona de forma bastante sencilla. Se echa en falta que determinados aspectos sean un poco más potentes, como el editor de traducciones o el repositorio y la forma en que funcionan. Estos dos elementos realizan su función pero son bastante básicos en comparación con otros paquetes que hay en el mercado.

El sistema de traducción de Delphi, se basa en añadir todos los recursos traducidos a una DLL; Una para cada idioma que necesitamos añadir a nuestra aplicación.


EL PROYECTO

Imagen44Para ver el proceso completo de internacionalización crearemos un proyecto sencillo, con dos formularios y veremos que es relativamente rápido montar toda la estructura para que funcione en varios idiomas.

Algunas etiquetas, un memo con algunos strings, unos botones y un segundo formulario para comprobar un ejemplo con más de uno y un TComboBox que nos permitirá modificar el idioma en tiempo de ejecución.

Una vez que tenemos nuestro proyecto funcionando, comencemos el proceso para añadirle dos nuevos idiomas, en este caso el catalán y el inglés, al que ya tiene por defecto (español o castellano).


INTERNACIONALIZACIÓN

Para ello lo primero que debemos hacer es añadir los 2 nuevos idiomas desde el menú de Project.

en la imagen inferior podéis ver las pantallas del asistente, aunque no tiene ninguna complicación y lo que hacemos con él es añadir los idiomas (tantos como necesitemos) a la aplicación.

internacionalizacion

Una vez finalizado el asistente, veremos que el IDE ha generado dos proyectos más (en nuestro caso) correspondientes a los idiomas que hemos seleccionado.

Imagen45

Podemos probar a compilar y grabar todos los proyectos.

Lo siguiente es comenzar a traducir las cadenas para poder utilizar múltiples idiomas en la aplicación. El editor de cadenas es similar a muchas otros aplicaciones que hay para esta función. Se trata de una pantalla que nos muestra las cadenas actuales y donde debemos introducir las cadena introducidas.

Para acceder al “Translation Manager” podemos hacerlo desde el menú en: “Project / Languages / Update resource DLLs”.

Imagen47

En esta pantalla vemos a la izquierda la estructura del proyecto y los diferentes formularios que lo componen. A la derecha la zona que nos permite traducir las diferentes cadenas. Hay columnas que identifican el elemento (ID), la que contiene las cadenas en el lenguaje original de la aplicación y la que contendrá las cadenas traducidas, en este caso con el título de “Inglés (estados Unidos)”.

He marcado en rojo una cadena que ya aparece traducida automáticamente (&Cerrar – &Close).  Este es debido a que esta cadena ya está traducida en el repositorio.


EL REPOSITORIO

El “Transation Repository” o “Repositorio” es como un diccionario de traducciones que podemos ir ampliando a medida que traducimos aplicaciones. De esta forma, podemos reutilizar las cadenas que ya hemos traducido anteriormente (en la misma aplicación o en otras). En el ejemplo que estamos viendo, mi repositorio ya tiene incluida la traducción desde el Español (internacional) al Inglés (Estados unidos) de la palabra &Cerrar. Por eso al acceder a las traducciones, esta palabra ya aparece traducida.

Imagen48El repositorio nos permite acelerar la traducción de términos. Además posee opciones para importar y exportar traducciones, con lo que podemos compartirlos o incluso utilizar herramientas de traducción automáticas externas e importar las traducciones a él.

Una vez que las cadenas están traducidas para los formularios podemos añadirlas al repositorio desde el “Translation Manager” , para tenerlas disponibles más adelante.


EJECUCIÓN

Una vez traducidas y añadidas al repositorio todas las cadenas de los diferentes idiomas, compilamos los proyectos, tanto el original, como los de los diferentes idiomas.

Para probar la ejecución, podemos seleccionar desde el menú de “Project” cual es el idioma que queremos por defecto. Si probamos con alguno de los 2 idiomas y ejecutamos, veremos que efectivamente la aplicación, como era de esperar.

Por último, nos quedaría ver cómo modificar el idioma durante la ejecución de la aplicación. Es bastante simple y para ello hay una sección en la ayuda del propio Delphi a la que podéis acceder; Dentro de la «internacionalización de aplicaciones» hay un tema concreto llamado «Dynamic switching of resource DLLs». Allí se puede leer que basta con añadir la unit Reinit en el uses, y utilizar una línea como la siguiente para cambiar el idioma.

// Cargar los recursos y releer los forms
if (LoadNewResourceModule(lang) < > 0) then begin
  ReinitializeForms;
end;

Comentar que si en alguna versión de Delphi, no encontráis la unit ReInit, podéis buscar dentro del directorio de Demos.

Al final el código que hay más arriba va a ser el único que vamos a necesitar en la aplicación.

Para apoyar la entrada, además del código de ejemplo, he añadido en este caso un vídeo.

 

[youtube dTIo5Oh-wmw]

Como siempre podéis descargar el código del ejemplo desde este link.

<DESCARGAR CÓDIGO FUENTE>

Espero que os haya sido útil y hasta la próxima.

Una quincena más… (28/09/2012)

jueves, 27 de septiembre de 2012 Sin comentarios
Share Button

Ahora que estamos envueltos en mitad de las presentaciones del nuevo RAD Studio XE3, y que las novedades del nuevo RAd Studio se están comentando en la mayoría de blogs sobre Delphi y C++, yo estoy todavía aterrizando, con la vuelta al cole, la llegada de mis vacaciones y los cambios laborales.

Utilizaré esta entrada para «poner» un poco al día el blog y como siempre repasar las últimas noticias y reseñas, aunque en este caso seguramente de más de 15 días…

Ya he hablado antes del proyecto «Embarcadero MVP»; He añadido a los miembros existentes en el programa, los últimos nueve integrantes que han formado parte de él, tal y como informó Anders Ohlsson, en su blog. Entre ellos está Xavi Martínez, que muchos de vosotros conoceréis como Cadetill, y al que tuve el placer de conocer hace un par de días en la presentación de RadStudio XE3 en Barcelona.

Otro tema del que ya he hablado es la iniciativa de un «StackOverflow en castellano»; Recordaros que para esta iniciativa aun faltan algunos votos, animaros ver si entre todos lo conseguimos.

Estos días he leído una entrada interesante (como casi siempre) de Zarko Gajic sobre la clase TScreen, en esta entrada que titula «TScreen Object Desmytified». Puedes leer la entrada y descargar los fuentes de los ejemplos.

Una de las nuevas características del nuevo Delphi XE3, es la creación de aplicaciones cuyo estilo se asemeja a «metro» de Windows 8. Desde esta web podéis descargar un set de iconos con estilo Metro de forma gratuita. Aquí podéis ver un ejemplo de los iconos disponibles (click sobre la imagen para verla a tamaño natural).

 

 

Como ya he comentado, estos días los blogs «echan humo» en cuanto a noticias  relacionadas con RAD Studio XE3; Entre todas ellas resalto la entrada en Delphi Insider con la esta tabla, donde se pueden ver de forma bastante esquemática las nuevas mejoras y cambios introducidos dependiendo de la versión del producto seleccionada…

Ayer leí en el blog de Fernando Rizzato,  que están disponibles para Delphi XE3 y para C++ Builder XE3 las JVCL en su versión 3.46.  JVCL es uno de los paquetes de componentes más ricos que existen para la la VCL con más de 600 componentes entre visuales y no visuales. Seguramente el mejor entre los paquetes gratuitos.

Igualmente ya está disponible, aunque no en versión definitiva (unstable version), la versión v. 0.9.9.635 de los cnPack,  que corresponde a la compatible con XE3. Para los que no los conozcáis, cnPack son una serie de addins para el IDE que enriquecen enormemente las posibilidades del entorno de desarrollo. Con las versiones más nuevas de los IDE’s, estas mejoras son menores (ya que los IDE’s van avanzando), pero si aun tenéis que trabajar en algunos proyectos con Delphi 6, por ejemplo (como es mi caso) entenderéis lo que os digo cuando los tengáis funcionando.

 

Ya comenté hace unos días en la entrada referente a la presentación de RAD Studio en Barcelona algo sobre el «RAD Studio Mobile», uno de los elementos más importante del RoadMap de RADStudio. Aquí se puede ver el Roadmap concreto de  RAD Studio Mobile y descargar esa información en PDF si lo preferís.

Entrando en el terreno de los Offtopic, en lo que se refiere a la temática central del blog, estos últimos días, he leído sobre la compra de VirusTotal. para los que no lo conocéis, VirusTotal es una web que permite scannear en busca de virus un fichero que se suba, con los antivirus más conocidos del mercado. Es como tener la posibilidad de instalar 20 antivirus en tu propio equipo y utilizarlos de forma simultánea. Muy útil cuando se realizan descargas o cuando te envían ficheros por correo de los que quieres estar seguro 100%. Segun esta noticia Google la ha comprado. Hay webs parecidas, aunque a mi personalmente es la que más me gusta.

Si queréis probar podéis echarle un vistazo también a Jotti o a VirScan que tienen funcionalidades similares.

 

He actualizado el contenido de la web en DropBox para que estén en todo momento accesibles los ejemplos, artículos, documentación,… Más detalles de todo ello en esta entrada.
Si os vais a dar de alta os agradecería que usarais esta invitación, de esta forma a ambos nos ofrecen un poco más de espacio, que nunca va mal…  ;-)

Por último, una curiosidad. Si no tenéis claro qué significa el concepto de Recursividad, podéis buscarlo en Google y mirar qué palabra os propone realmente Google en el «Quizás quisiste decir…», que aparece al inicio de los resultados. Al final resulta ser una gran explicación…  ;-)

Como siempre son bienvenidos los comentarios, correcciones, sugerencias, críticas,..

Un saludo y hasta la próxima.

 

Categories: Delphi, Resumen Tags: ,

Presentación RAD Studio XE3 en Barcelona.

miércoles, 26 de septiembre de 2012 6 comentarios
Share Button

 

  Como en los últimos años, hoy he asistido a la presentación de la última versión de RAD Studio en Barcelona, que organiza Danysoft. Luis Alfonso Rey, Embarcadero MVP ha sido el encargado de hacer un repaso por la diferentes novedades y cambios que se incluyen en la nueva versión del paquete de desarrollo de Embarcadero.

IMAG0408

La presentación ha comenzado con un repaso por la nuevas características de esta versión.

  • metrostyleLa nuevas posibilidades para gestionar aplicaciones estilo «metrópolis» del nuevo Windows 8.
  • Novedades en Firemonkey (FM2), que incluye muchas mejoras a nivel interno pensando en las futuras aplicaciones que se le van a dar a esta librería. esas necesidades han obligado a realizar cambios en el código existente y no sólo mejoras (aunque también tiene de estas ultimas). Se han añadido características que en la versión inicial echábamos en falta en comparación con la VCL. Actions y actionList, los Anchors para ajustar a diferentes resoluciones de pantalla, mejoras en referencia a audio y vídeo, soporte para las últimas versiones de los sistemas operativos donde se “despliega”.
  • FM2El nuevo diseñador de LiveBindings. Cuyo nombre engaña, ya que no sólo se ha creado un diseñador visual, sino que junto con él, llegan importantes mejoras en las funcionalidades de los LiveBindings. Importantes las mejoras que tienen que ver con la visualización de datos en listas y grids. ahora mucho más sencillas de realizar y mucho más potentes que en la versión inicial.
    LB
  • Además se han comentado también los avances en C++ Builder para añadirle muchas de las características que hasta ahora le faltaban para igualarse en funcionalidades a la personalidad de Delphi.
  • HTML5Por último, como gran novedad la presentación de HTML5 Builder. La herramienta que “hereda” del antiguo RADPhp, aunque remodelada por completo. Nuevo IDE de desarrollo y nuevas tecnologías que utilizan al máximo las posibilidades de HTML5 y CSS3. Posibilidad para generar aplicaciones cliente y servidor que corran en dispositivos con Windows Phone, Android, iPhone, Symbian y Blackberry, utilizando phoneGAP.

   Aparte de dar el repaso por la novedades (las comentadas como más importantes y algunas menos transcendentes) también se han visto algunas de las cosas que podremos ver en próximas versiones o en actualizaciones que verán la luz antes de la aparición de la próxima versión. En concreto muy interesantes los minutos dedicados a “Mobile Studio”, que nos permitirá finalmente desarrollar con Delphi para dispositivos móviles.

IMAG0412

 

   Como siempre, además de lo que aporta la presentación en sí, las novedades, las demos, incluso la información de primera mano que se puede obtener, siempre es agradable encontrarse con amigos y antiguos compañeros de trabajo con los que vengo coincidiendo los últimos años.

   Este año además, hemos coincidido en Barcelona (me ha faltado de Salvador Jover), tres de los cuatro “Embarcadero MVP” que hay en España. También he tenido la oportunidad de conocer a Cadetill, del que muchas veces he comentado entradas aquí en mi blog. Hemos podido conocernos, conversar un rato, y comentar algunos aspectos relacionados con Delphi, los Blogs, la Comunidad,…

Estas son las cosas que “enriquecen” las presentaciones.

IMAG0418

   Las fotos como veis no son de mucha calidad ya que están hechas con mi teléfono, que tampoco es que sea una maravilla, pero al menos dan para hacerse una imagen de la sala y de algunas de las cosas vistas en la presentación.

IMAG0407

Un saludo y hasta la próxima.

Categories: Danysoft, Delphi, XE3 Tags: ,

Aires de cambio…

martes, 25 de septiembre de 2012 8 comentarios
Share Button

fuga_cerebro1_thumbNo hace mucho tiempo, ya hubo quien me hizo referencia a esta imagen (que adjunto a la derecha del texto) incluida en una de mis entradas anteriores. Supongo que casi nadie se preguntó porqué estaba ahí y qué tenía que ver con la entrada…

Hoy la vuelvo a colocar porque lo que representa es definitivo.

He cambiado de trabajo y he comenzado una nueva etapa en mi vida profesional. Después de más de 10 años en mi último empleo, he decidido que era el momento de cambiar. No es fácil, la verdad, puesto que es mucho tiempo. Se trata de dejar atrás mucho trabajo, muchas experiencias y gente a la que aprecio mucho, pero era el momento de hacerlo.

Todo esto y algunos aspectos a nivel personal me han tenido ocupado (bastante ocupado) en los últimos días (prácticamente desde después de volver de vacaciones). Es por todo esto que el blog, mis participaciones en los foros y otros proyectos profesionales han quedado relegados a un segundo plano.

Empiezo esta nueva etapa con mucha ilusión y espero en breve poder retomar la actividad en blog con algunas entradas que tengo a medias.

Un saludo.

Categories: Offtopic Tags: ,

Enhorabuena a todos

miércoles, 22 de agosto de 2012 5 comentarios
Share Button

The Embarcadero MVP Program, que es el nombre definitivo de lo que ya os anuncié como «Embarcadero Community Evangelist» se ha anunciado en el blog de Anders Ohlsson.

Creo que esta es la lista definitiva:

AUSTRALIA:
Glenn Stephens
Lachlan Gemmell

BELGIUM:
Filip Lagrou – @BeDelphi
Bruno Fierens
Francois Piette

BRAZIL:
Victory Fernandes – @victoryjorge – http://tkssoftware.com/victory/
Adriano Santos – @asrsantos
Alan Glei – @AlanGlei
Caique Rodrigues- @CaiqueRodrigues
Carlos Agnes- @taturs
Guinther Pauli – @guintherpauli
Marcelo Nogueira – @noginfo
Marcelo Varela – @marcelologica
Marcos Antonio Moreira – @mantmor – http://mantmor.wordpress.com/
Marcos Gomes – @mpdelphi
Newton Michel de Oliveira – @newtongaucho – http://dug-rs.blogspot.com.br/
Pedro Bento – @PedroPauloBento
Ricardo Boaro – @rboaro – http://rboaro.com.br
Rodrigo Carreiro – @carreiromourao – http://www.rodrigocarreiro.com.br/
Samuel David – @mukadavid
Luciano Pimenta – http://www.lucianopimenta.com/
Daniel Wildt

CZECH REPUBLIC:
Radek Cervinka – @delphicz

DENMARK:
Jens Fudge – @JensFudge

FRANCE:
Didier Cabale – @dcabale
Felix Colibri

GERMANY:
Daniel Magin
Daniel Wolf
Uwe Raabe
Martin Stroha

GUATEMALA:
Juan Castillo – @jachguate – http://jachguate.wordpress.com/

ITALY:
Marco Cantu – @marcocantu – http://blog.marcocantu.com/blog/

MEXICO:
Eliseo Gonzalez – @EliseoGN – http://egostar.delphiaccess.com/
Marco Santin

NETHERLANDS:
Bob Swart – @eBob42
Danny Wind – @DannyWind

NEW ZEALAND:
Alister Christie

PERU:
Jose Castillo – @jcastillo666

RUSSIA:
Alexander Alexeev
Alexander Bozhko
Andrey Terekhov
Vladislav Bajenov

SLOVENIA:
Primoz Gabrijelcic – @thedelphigeek

SPAIN:
Germán Estévez Ruiz – @Neftali_German – http://neftali.clubdelphi.com/
Luis Alfonso Rey
Salvador Jover – @salvadorjover – http://www.sjover.com/delphi/
Xavier Martinez – http://www.cadetill.com/ 

SWEDEN:
Magnus Flysjö

UNITED KINGDOM:
Brian Long
Mike Sutton

UNITED STATES:
Alan Fletcher – @starhikers
Cary Jensen – @caryjensen
Nick Hodges
Ray Konopka
Robert Love – @delphidev
Olaf Monien
Jim McKeeth

VENEZUELA:
Luis Felipe González Torres – http://lfgonzalez.visiblogs.com

DOMINICAN REPUBLIC:
Kelyn Pena

INDIA:
Nirav Kaku

CROATIA:
Zarko Gajic

_________________________________________

ACTUALIZADO: He añadido los identificadores de twitter y algunos blogs.

Categories: Embarcadero, Offtopic Tags: ,

XE3 y más allá: Mirando hacia la movilidad

miércoles, 22 de agosto de 2012 10 comentarios
Share Button

Algunas veces compañeros y usuarios de los foros me comentan la dificultad de acceder a la información en los foros y blogs de Embarcadero, puesto que la mayoría de información está en Inglés. Algunos tienen más o menos problemas con el idioma y aunque muchos de nosotros nos ayudamos de los traductores automáticos, no siempre es fácil entender el “resultado”.

Hace un par de día apareció este artículo en los blogs de Embarcadero y me ha parecido muy interesante, para todos los desarrolladores que trabajamos con Delphi, porque aclara mucho hacia dónde se están dirigiendo los esfuerzos de Embarcadero y los que nos pueden deparar las futuras versiones de Delphi/C++.

La versión de Delphi que está a punto de salir (XE3) ”parece” que trae pocos cambios y mejoras, que poco a poco iremos conociendo, pero la realidad es que hay una “revolución en los bajos fondos” enfocada a las futuras versiones y a las próximas características

He dedicado un rato a traducirlo y publicarlo.
Valga decir que no soy ningún experto en estos temas; Leo sin problemas, pero no soy experto en el idioma, así que es bastante probable que la traducción no sea perfecta ni mucho menos. Sólo espero a que sea un poco más clara que la que ofrece cualquier traductor automático…  ;-D

___________________________________________________________________________

Link al artículo original (J T @ Embarcadero).

Estoy seguro que a estas alturas muchos de ustedes ya han visto los eventos programados del World Tour, sobre el próximo lanzamiento de XE3. Hay una gran cantidad de emocionantes novedades en XE3, que no podemos esperar a compartir con ustedes. Por ello le invitamos a alguno de los eventos del World Tour para que pueda descubrirlas. Con XE3 al caer, quiero detenerme un momento para hablarle de algunas cosas interesantes en las que estamos trabajando ya, para las versiones siguientes a XE3 -para ello XE3 y FireMonkey 2 (FM2) han sentado las bases.

Nuestros equipos están trabajando duro en la construcción de un nuevo conjunto de tecnologías y productos que traerán C++, Delphi, y FireMonkey a los dispositivos móviles, en la que será una solución diferente a cualquier otra del mercado. Esta solución incluirá un nuevo conjunto de herramientas para Delphi y C++ (frontend, backend, linker, debugger, run-time library, etc) dirigidas a conseguir que FireMonkey FM2 tenga una nueva plataforma de ejecución final dirigida a dispositivos móviles, junto con un entorno de diseño y desarrollo dirigido específicamente para plataformas móviles.

El lenguaje Delphi (front-end) está siendo mejorado para generar aplicaciones adaptadas para dispositivos móviles, añadiendo características de administración de memoria, tales como el contador de referencias automático. El nuevo backend de Delphi para tecnología móvil, es una novedad pensada y diseñada para generar binarios altamente optimizados para ARMv7. Esto incluye un nuevo linker y un nuevo debugger para trabajar con los formatos de objetos nuevos. Y, por último, tanto la biblioteca en tiempo de ejecución y el framework FireMonkey, están siendo optimizado para dispositivos móviles, con la eliminación de funcionalidades de escritorio innecesarias y añadiendo características específicas para dispositivos móviles.

Si bien hay una gran cantidad de nuevas funcionalidades que vendrán en las herramientas de compilación, en el nuevo framework FireMonkey para móviles, se aprovecharán las nuevas características del lenguaje Delphi en gestión de memoria y las características específicas para móviles; Como interfaces de usuario nativos para iOS y Android con una visualización perfecta de los controles a nivel de pixel, así como interfaces de usuario personalizadas (que pueden compartir estilos personalizados con la aplicaciones de escritorio de XE3), y un conjunto de servicios para los sensores de hardware, tales como GPS, acelerómetros, giroscopios, y cámaras, y los servicios del sistema operativo, como la ubicación, la publicidad, y las aplicaciones de pago. Y aunque los nuevos productos para dispositivos móviles incluirán nuevas herramientas específicas, FireMonkey FM2 para móviles, y un entorno de desarrollo específico para móviles, estos productos están siendo diseñados para poder aprovechar de forma fácil, los proyectos para MAC y para Windows ya existentes.

En XE2, entregamos las herramientas para ayudar a migrar aplicaciones FireMonkey de Windows a XCode y FPC, lo que permitió a los desarrolladores migrar proyectos de escritorio a XCode y recompilar estos para generar binarios dirigidos a dispositivos basados iOS. Con algunos ajustes, un desarrollador podía seleccionar una aplicación de escritorio FireMonkey y generarla para iOS sin una cantidad significativa de esfuerzo. La desventaja de este enfoque es que las aplicaciones que se ejecutan en dispositivos móviles utilizan el marco FireMonkey diseñado para las aplicaciones de escritorio, por lo que las experiencias de usuario y el rendimiento no estaban a la altura a menos que los controles se adaptaran por completo. Algunos desarrolladores han creado aplicaciones increíbles para móviles basadas en XE2, pero con un esfuerzo significativo. Además, no había ninguna experiencia de desarrollo integrando el IDE de Xcode. Las herramientas de migración en XE2 son una prueba de la capacidad multiplataforma de FireMonkey. En lo que estamos trabajando ahora para nuestro desarrollo móvil de próxima generación, es en ofrecer la mejor solución de desarrollo para dispositivos móviles a los desarrolladores.

Como resultado de los cambios en el lenguaje enfocado a dispositivos móviles y los cambios en FireMonkey (que se ejecutará en los dispositivos móviles), FireMonkey FM2 ya no es compatible con el conjunto de herramientas FreePascal utilizado para compilar aplicaciones para iOS con XCode. Por lo tanto, las herramientas de migración entregados en XE2 ya no se incluyen en XE3 y las aplicaciones FireMonkey FM2 de escritorio no serán compatibles con FreePascal y XCode. Sin embargo, como cliente de XE3 usted tendrá acceso al producto XE2 que puede seguir utilizando con FireMonkey XE2 para crear aplicaciones para iOS con Xcode y FreePascal.

Nuestras soluciones para dispositivos móviles de próxima generación, están todavía en desarrollo y serán la primera y única solución nativa de tanto para iOS y Android, que compartirán un código común (también con los proyectos de escritorio de XE3). Esta será una solución revolucionaria para los desarrolladores, que ofrecerá el mejor rendimiento en las plataformas móviles más importantes; Con un único entorno de desarrollo, un solo lenguaje (Delphi o C++), un framework y un único código para todos. Creemos que usted estará muy contento con las capacidades de ejecución y flujo de trabajo de desarrollo para dispositivos móviles; Y si usted está interesado en formar parte de la fase de pruebas (beta), recoja su copia de XE3* para poder acceder a la beta móvil, y verá que estamos muy entusiasmados con todo esto.

Mientras tanto, nos vemos en la gira mundial!

 

* El acceso a la beta móvil requiere una licencia “Professional” de XE3 o posterior.

__________________________________________________________________________

Como siempre se aceptan correcciones y sugerencias.

Si alguien considera que alguna frase no es del todo correcta o no refleja fielmente la explicación ariginal, el comentario será bienvenido.

Un saludo.

 

Una quincena más… (17/08/2012)

viernes, 17 de agosto de 2012 Sin comentarios
Share Button

Una semana más estamos con el repaso habitual de los últimos días.

Es estas fechas, todo (o casi todo) se ralentiza, los que no están de vacaciones, están con el ritmo de Agosto y de las vacaciones, al menos por aquí.  Uno de los pocos que no descansa es Salvador, que justo el día después  de publicar mi última entrada de resumen donde comentaba sus 2 primeros artículos sobre el componente TTreeView en FMX, publicaba la tercera y última entrega.

Las dos primeras:

costesmac En esta tercera entrega, se completa la serie sobre este componente ampliando lo visto en las dos anteriores. Se muestra un ejemplo completo de trabajo, nuevas clases, creación de Interfaz común a varios objetos, estilos personalizados y algunas cosas más.
Fantástica entrada para acabar la serie sobre este componente.

Arbol TTreeView en Firemonkey (y III)

Para complementar el artículo, podéis ver un video comentado y descargar todo el código fuente del proyecto.

Esta semana me  encuentro con el proyecto DelphiUnitSize, programado en Delphi XE2 y utilizando FireMonkey. Con él podemos conocer el tamaño exacto de las units que se incluyen en nuestro proyecto (EXE). Además nos da un tamaño aproximado de los símbolos (classes, métodos, procedimientos,…) contenidos en cada unit.

delphiunitsizes

En la página del proyecto podéis ver unas pequeñas guías para su utilización y configuración.

Es bueno ver que poco a poco se van viendo más programas que utilizan FireMonkey; Eso es una señal inconfundible que marca si una tecnología es “utilizable” en el mundo real o no.

images La técnica de “Class Helpers” es muy interesante y sencilla, a la vez que polivalente. Ya Salvador habló algo de ella en alguna de sus entradas sobre TreeView (link), haciendo a su vez referencia a un entrada de Carlos García (link). Desde Embarcadero podéis revisar este artículo titulado “Class Helper’s with Firemonkey” que aplica esta misma técnica a FireMonkey y revisar la DocWiki de Embarcadero donde se explica de forma sencilla cómo aplicarla a clases y a records (que también la admiten).

fm

Desde la página de Embarcadero, se han publicado una serie de documentos sobre desarrollo de FireMonkey en Windows y MAc, con el título “Get Started with Windows and Mac development”, que incluye una serie de PDF’s y videos para desarrollar con FMX.

Recordaros, desde este resumen, aunque ya lo he comentado en el blog, la iniciativa  de conseguir un “StackOverflow in SPanish”. Creo que es una buena iniciativa para la Comunidad y podeís leer toda la historia desde el Blog de Jachguate.

sigue-la-propuesta

 

Una vez más en estos resúmenes (ya es habitual) una reseña a los componentes de Cadetill para trabajo con Google Maps; La librería GMLib en su versión 0.1.6a, que se ha publicado estos días.

Aquí podeís revisar la lista de novedades de la última versión que no son pocas.

images (2) A través de un enlace que me facilita Salvador, accedo a una interesante (muy interesante) serie de tutoriales (step-by-step) de Pawel Glowacki sobre DataSnap. Muy completos con Video, WhitePaper y Código fuente necesario.

http://www.embarcadero.com/ru/rad-in-action/delphi-labs

Por último y para acabar, supongo que ya lo habréis leído estos días en foros y blogs. Ya se ha anunciado la próxima salida de RAD Studio y el RAD XE3 World Tour con las fechas de todas las presentaciones. Faltan en la lista, las de América Latina que están por concretar, en lugar y día.

La lista completa de presentaciones (países y fechas), a las que ya os podéis apuntar está aquí.

No ha trascendido mucho la lista de novedades (completa, al menos), salvo algún documento que se ha filtrado y que ha aparecido en blogs extranjeros. Está claro que Embarcadero apuesta por la nueva interface Metro o “Modern UI” como le gusta a MS que la llamemos, enfocado a los dispositivos táctiles. La referencia a FM2 nos hace pensar que siguen avanzando en la tecnología FireMonkey y nos prometen una nueva herramienta para incorporar a RAD Studio, HTML5 Builder.
Habrá que ver en acción qué nos depara esta nueva versión.

Para Barcelona y Madrid tendremos que esperar al 25 y 26 de Septiembre. Espero que nos vemos.

Un saludo y hasta la próxima.

StackOverflow en Español, nueva propuesta

jueves, 2 de agosto de 2012 2 comentarios
Share Button

 Link a a propuesta

Propuesta StackOverflow en Español

Creo que es una buena e interesante iniciativa para la comunidad.

La explicación completa y detallada del proyecto y de lo que se necesita, la tienes aquí, en el Blog de jachguate.  Échale un vistazo y anímate.

Un reto:

  • 60 seguidores.
  • 40 preguntas de ejemplo, con al menos, 10 votos cada una.

¿Lo conseguiremos?  ;-)

TRUCO: Nos interesa que las preguntas lleguen a 10 votos, pero no más; Es decir, es mejor repartir votos para que el máximo de preguntas lleguen a ese límite de 10. ;-)

Categories: Programación Tags: ,

Una quincena más… (30/07/2012)

lunes, 30 de julio de 2012 4 comentarios
Share Button

imagesRetomando un poco (o eso espero) el ritmo de las entradas, para los que estéis interesados  en FireMonkey y en las posibilidades de realizar animaciones y aplicaciones con características 3D, os remito al canal de youtube de ketufe. Podéis encontrar desde ejemplos sencillos y algunos no tanto. Los videos dan ideas de las diferentes posibilidades a utilizar. Hay mucho material para revisar, ya que el canal cuenta con más de 100 videos.

Aquí podemos encontrar un pequeño tutorial de Document Insight; La herramienta de documentación de DevJet Software que viene incluida de forma gratuita con Delphi XE2. Es una de aquellas cosas que no son fáciles de encontrar en la documentación (o que no encontramos directamente) pero que son tremendamente útiles, para los que desarrollamos componentes y librerías que luego utilizan otros programadores. En estos casos la documentación en necesaria (obligatoria diría yo) y además a la larga significa una mayor eficiencia a la hora de programar.

No hace muchos días de la publicación en la página de Salvador (Delphi básico) de dos entradas dedicadas al componente TTreeView en Firemonkey; Yo diría que indispensables para los que queráis empezar a trabajar con él y entender bien su funcionamiento.

Las dos entradas hacen un completo repaso de este componente de este componente y su utilización en Firemonkey. Las diferencias que existen entre este y su versión en la VCL, repasando propiedades, métodos y distintos comportamientos. Muy recomendable por lo compleja y extensa que es. La explicación es muy clara y podéis descargar los códigos de ejemplo para poder realizar las pruebas sin problemas. No os desvelo más del contenido del artículo, que lo hay, os invito a que lo reviséis completo. ;-)

 demo3

 

Esta semana, también ha visto la luz la siguiente versión de los componentes de Cadetill para trabajar con Google Maps. La librería GMLib; En este caso la versión 0.1.5a. Añaden bastantes correcciones y nuevas funcionalidades respecto a la anterior versión.

47_web20_320x240_gmlib 

“GMLib (Google Maps Library) son una serie de componentes para Delphi que encapsulan el API de Google Maps y así poder gestionar los mapas de Google de forma sencilla mostrando el resultado en un TWebBrowser.“

 

Siguiendo con el tema de FireMonkey, desde hace unos días podemos descargar desde la web de Embarcadero de una versión “free” de la herramienta de conversión entre VCL y FireMonkey llamada Mida. No he tenido tiempo de probarla, así que si alguien tiene oportunidad estaría bien que compartiera sus experiencias. Trabaja con componentes de terceros, además de los estándard, LiveBindings, Estilos y bastantes cosas más, aunque no todas disponibles en la versión gratuita.

Icarus_48También estos días se ha liberado la versión 3.4.4 de Icarus. Se trata de una utilidad gratuita de la casa Peganza (http://www.peganza.com) la misma que comercializa PAL (Pascal Analizer). Icarus es una “analizados de units”; Permite analizar el código de proyectos Delphi en busca de units no necesarias añadidas al uses o de aquellas que pueden ser movidas entre las secciones de Interface e Implementation.

Hoy mismo leo sobre la La versión 2.6 de las DDevExtensions se ha liberado estos días. Podéis descargarla para las diferentes versiones de los compiladores y leer sobre los cambios y correcciones de la última versión en este link (DDevExtensions 2.6). Gran trabajo que va mejorando versión a versión.

Poco a poco van apareciendo componentes nativos para FireMonkey. Es una tecnología nueva para los que trabajamos con las herramientas de Embarcadero y es normal que el arranque cueste un poco. Ya conocía un paquete de componentes específicos de la mano de TMS y estos días he leído que arcana también ha publicado Apesuite, una serie de componentes para FMX.
Siempre es una buena noticia que las empresas apuesten, se involucren y vaya generando componentes para FMX.

Por último os dejo esta completísima recopilación de reursos para FireMonkey. Si deseáis introduciros en este tema y empezar a hacer “pinitos» con esta tecnología debéis guardaros esta recopilación. Además de la propia documentación de Embarcadero, aquí podéis encontrar una amplia variedad de links que abarcan bastantes aspectos.

Introduction

Styles

What about the VCL?

Networking

IDE

Forms

File I/O

Video and sound

DataSnap

Controlling other programs

Printing

3D animation

Runtime packages and DLLs

Component development

Errors

Bugs

Third Party

 

    Un saludo y hasta la próxima.
Categories: Delphi, FireMonkey, Resumen Tags: ,