Mobile Development Summer School! (EMEA)

16/07/2013 GMT Register

Lesson 1 - Hello World! - My First App.

16/07/2013 10:00:00

In lesson 1 we learning how to rapidly build applications for iOS and beyond using FireMonkey - Lesson 1 focuses on getting your IDE (Integrated Development Environment) setup and configured ready for the rest of the season. The home work for the lesson is to follow the example on the resource links to build your first hello world application on iOS.

Replay

Resources

DocWiki

Docwiki has a range of articles for getting started and a number of tips and user guides for different elements of development with RAD Studio. http://docwiki.embarcadero.com

Tutorial - Set Up your Development Environment for the MAC

The first half of this tutorial describes the steps that you need to perform in order to run your iOS application on the iOS Simulator on the Mac. The second half of this tutorial describes additional steps required in order to run your iOS Application on your iOS Device http://docwiki.embarcadero.com/RADStudio/XE6/en/Mobile_Tutorial:_Set_Up_Your_Development_Environment_on_the_Mac_(iOS)

iOS Tutorials - Get aheaed with this list of iOS Tutorials

The following tutorials illustrate how to use RAD Studio http://docwiki.embarcadero.com/RADStudio/XE6/en/Tutorials

Mobile Tutorial: Creating a FireMonkey Mobile Application (iOS and Android)

This topic describes how to create a "Hello World" FireMonkey application for the iOS or Android target platforms. http://docwiki.embarcadero.com/RADStudio/XE6/en/Mobile_Tutorial:_Creating_a_FireMonkey_Mobile_Application_(iOS_and_Android)

VIDEO - Same code on Win, Mac, iOS - (<4 mins)

In this online demo, David I shows the same source code working on Windows, Mac and iOS. This is a very quick demo less than 4 minutes long. https://www.youtube.com/watch?v=yoGU31VTREk

VIDEO - Setting up your Development Environment for iOS (6.05mins)

This short video walks you through the steps to configure your XE4 IDE and Mac so that you can run, deploy and debug your apps using your Mac, iOS Simulator and iOS Device. https://www.youtube.com/watch?v=0HnPgQgb6Ao

Presenters

Lesson 2 - Turning up the style and data!

18/07/2013 10:00:00

In lesson 2 we explore the how to style controls in your iOS application and start to work with data to help us populate controls and introduce Visual Live Bindings to manage the link between user interface and model/data.

Replay

Resources

iOS User Interface Design with XE4 (cc29490)

OS User Interface Design with Delphi XE4 helps you build iOS applications that adhere to Apple's Human Interface Guidelines. http://cc.embarcadero.com/item/29490

CodeRage Mobile Replays

CodeRage Mobile was awesome!! You exist to build great apps and you're not alone. Embarcadero's CodeRage events are totally free, totally technical, online conferences dedicated to technology and development. This year's CodeRage Mobile online developer event was held June 18-19, 2013 where Embarcadero team members, top industry speakers, technologists, and industry practitioners talked about nothing but mobile development - without any fluff. Just hands-on tips and strategies for how you can create awesome mobile apps. http://forms.embarcadero.com/CodeRageMobileRegistration

Presenters

Lesson 3 - Learning by examples.

23/07/2013 10:00:00

Now we have got started, this session will allow us to explore more components and discover the concept of Interfaces and learn how they help you make your code multi-platform ready. Rather than writing new code, we will learn about and explore the code examples that come with RAD Studio. Having got the theory out the way, we go and look at how we can use Interfaces in our applications to write code that will work on multiple devices and will be future proof for use also on other platforms including Android

Replay

Resources

Implementing Interfaces (introduction)

Article on DocWiki introducing Interfaces, and how to code with them and to use them. http://docwiki.embarcadero.com/RADStudio/XE6/en/Implementing_Interfaces

Code Samples

Code examples for commonly used members of the FMX, VCL, and RTL libraries http://docwiki.embarcadero.com/CodeExamples/XE6/en/Main_Page

Code Samples (Source Forge)

Delphi Examples on source forge. You should also be able to locate these on your windows machine where Delphi, C++ Builder, RAD Studio is installed in the folder C:\Users\Public\Documents\RAD Studio\11.0\Samples http://sourceforge.net/p/radstudiodemos/code/HEAD/tree/branches/RadStudio_XE4/

RAD-In-Action - FireMonkey Multi Device

Video replay and FireMonkey component Hierachy poster http://www.embarcadero.com/rad-in-action/firemonkey-multi-device

Facebook-style layout for mobile apps

This article, with link to the free source code, shows how to implement a sliding side menu using Gestures, Annimations and layouts, RAD Style. http://www.malcolmgroves.com/blog/?p=1352

Presenters

Lesson 4 - Accessing local storage

25/07/2013 10:00:00

In lesson 4 we explore local storage, covering a range of options including using INI files, in memory datasets that can be persisted to XML easily thanks to TClientDataSet and using FireDAC to connect to and use SQLite or InterBase. We still have loads more we could have covered including saving TStringList to and from file, and using TXMLDocument, but this is enough to get you started and understand the core concepts when writing and reading from disk on iOS.

Replay

Resources

InterBase Documentation

Home of the InterBase documentation including Language Reference Guide, Installation information, and a host of guide documents for API, Developers, Embedding, Operations etc http://docs.embarcadero.com/products/interbase/

InterBase Labs (VIDEOS)

Through a series of step-by-step instructional videos, Stephen Ball and Al Mannarino, veteran InterBase trainers, will guide you to a deeper understanding of this powerful database. You will gain the solid foundation of knowledge upon which to use this amazing database for your most creative projects. The beauty of InterBase is not only that it's a full featured, high performance, scalable database but that it is easy to install, is cost effective, requires zero administration, and has a tiny footprint so you can easily embed it into your business critical applications. http://www.embarcadero.com/database-in-action/interbase-labs

INI Files on iOS and programatically listing file found on iOS

This sample code uses INI Files to store simple values on iOS. It shows also an example of deleting files and searching for files programatically. Further reading at http://blogs.embarcadero.com/stephenball/2013/07/24/ini-files-on-ios/ http://cc.embarcadero.com/item/29501

Where to put your files on iOS

This article (may need to be opened into a new window) covers File System Basics including iOS Standard Directories: Where Files Reside. http://developer.apple.com/library/mac/#documentation/FileManagement/Conceptual/FileSystemProgrammingGUide/FileSystemOverview/FileSystemOverview.html

Lesson 5 - Building and Accessing SOAP servers

30/07/2013 10:00:00

In lesson 5 we learn about building scalable SOAP servers and also consuming JSON via TIdHTTP component. JSON and SOAP (with XML) are common data exchange formats used for multi-tier development. Along the way there are a number of tips on how to make your SOAP servers scalable and protect them from change and enhancements. At the end of the lesson, your home work is to write a iOS client application consuming JSON or WebServices with the skills learned so far in the series and from this lesson.

Replay

Resources

Creating Multi-Tiered Applications - Overview

A multi-tiered client/server application is partitioned into logical units, called tiers, which run in conjunction on separate machines. read more... http://docwiki.embarcadero.com/RADStudio/XE6/en/Creating_Multi-tiered_Applications_-_Overview

Using WebServices

Web Services are self-contained modular applications that can be published and invoked over the Internet. This link includes links to a number of supporting articles around understanding Invokable Interfaces, writing Servers that support webservices and Writing Clients for WebServices http://docwiki.embarcadero.com/RADStudio/XE6/en/Using_Web_Services

Writing Clients for Web Services

You can write clients that access Web Services that you have written, or any other Web Service that is defined in a WSDL document. There are three steps to writing an application that is the client of a Web Service - This article follows them. http://docwiki.embarcadero.com/RADStudio/XE6/en/Writing_Clients_for_Web_Services

Working with JSON

Link to some units for working smartly with JSON http://cc.embarcadero.com/Item/29456

Creating iOS Applications that work with Enterprise Architectures

Many developers are asked to build mobile applications that can integrate with SQL databases and in-place enterprise infrastructures including calling SOAP Web Services. This session will show you how to include your mobile applications in a multi-tier software architecture to connect to SQL databases using DataSnap. This session will also show you how to create mobile applications that can call remote methods defined in the WSDL of a SOAP server and how easy it is to use the WSDL import wizard to integrate SOAP interfaces into your mobile client application. Also on http://www.youtube.com/watch?v=CclrHn3dvkA http://cc.embarcadero.com/item/29469

Presenters

Lesson 6 - Powerful multi-tier applications with DataSnap

01/08/2013 10:00:00

DataSnap helps create multi-tier applications in some cases with zero lines of code! Learn about how DataSnap allows you to create servers for accessing business logic. We will close out the series by building a DataSnap server and client that serves employee phone directory to the iOS device.

Replay

Resources

Delphi Labs - DataSnap lessons (VIDEOS)

Through a series of step-by-step instructional tutorials, Pawel Glowacki, veteran Delphi trainer, guides you to a deeper understanding of the powerful technologies in Delphi. You will gain the solid foundation of knowledge upon which to unleash your creative genius. The beauty of rapid application development is that you can build complex systems by assembling components. This approach to building software applications shines when applied to Delphi DataSnap programming. In a matter of minutes, you can create a multithreaded server application, capable of servicing many concurrent clients and listening on multiple communication ports simultaneously. http://www.embarcadero.com/rad-in-action/delphi-labs

Creating Multi-Tiered Applications - Overview

A multi-tiered client/server application is partitioned into logical units, called tiers, which run in conjunction on separate machines. read more... http://docwiki.embarcadero.com/RADStudio/XE6/en/Creating_Multi-tiered_Applications_-_Overview

Devloping DataSnap Applications

The DataSnap technology continues to evolve, as the demands for distributed computing increase. The technology behind DataSnap has moved beyond the approach of remoting data through the Microsoft COM/DCOM to a more open communication approach based on TCP/IP. This evolution has allowed the DataSnap technology to expand its capabilities in order to include a complete middleware technology. One of the key features of the technology is that it is fast: fast to build, fast to deploy, and fast to execute in production. http://docwiki.embarcadero.com/RADStudio/XE6/en/Developing_DataSnap_Applications

Tutorial: Mobile Tutorial: Connecting to an Enterprise Database from a Mobile Client (iOS and Android)

Creating iOS Applications that work with Enterprise Architectures

Many developers are asked to build mobile applications that can integrate with SQL databases and in-place enterprise infrastructures including calling SOAP Web Services. This session will show you how to include your mobile applications in a multi-tier software architecture to connect to SQL databases using DataSnap. This session will also show you how to create mobile applications that can call remote methods defined in the WSDL of a SOAP server and how easy it is to use the WSDL import wizard to integrate SOAP interfaces into your mobile client application. Also on http://www.youtube.com/watch?v=CclrHn3dvkA http://cc.embarcadero.com/item/29469