RAD Studio XE Reviewer's Guide

By: Tim DelChiaro

Abstract: Reviewer's Guide with an overview of Embarcadero RAD Studio and what's new in RAD Studio XE

This Reviewer's Guide is also available in PDF format. Download the PDF of the RAD Studio XE Reviewer's Guide.

    RAD Studio XE

Product Reviewer’s Guide

September 2010


Overview

    Introduction

Thank you for your interest in reviewing RAD Studio XE, Embarcadero’s cutting-edge native Windows, .NET, and web development tool. This reviewer’s guide will give you an overview of some of the key benefits that developers will enjoy with RAD Studio XE.

    Product Description

Embarcadero® RAD Studio XE provides a comprehensive application development suite and the fastest way to visually build GUI-intensive, data-driven applications for Windows, .NET, PHP and the Web. RAD Studio includes Delphi®, C++Builder®, Delphi Prism, and RadPHP™ enabling developers to deliver applications up to 5x faster across multiple Windows, Web, and database platforms.

    Contact Information

We are here to support you throughout your evaluation period — and beyond. Please do not hesitate to contact us anytime at the numbers and emails below.

    RAD Studio XE Highlights

    New and Interesting Features of RAD Studio XE

  • Development when and where you need it – RAD Studio XE now comes with four key products, Delphi XE and C++Builder XE for native development, Delphi Prism XE for .NET and ASP.NET development, and new to the suite, RadPHP XE, cross-platform, RAD development for the PHP platform.
  • Built-in Source Code Management – integration into the IDE that allows full control of the subversion repository.
  • Built-in Cloud Development
  • Build applications that use the Windows Azure cloud platform with integrated components and libraries.
  • Deploy applications to the Amazon EC2 cloud infrastructure with a few simple mouse clicks.
  • Innovative expanded Tool Chest for optimized development – developers have the latest tools readily available from integrated profiling and logging, to enhanced file compare functionality, and added build automation and management of projects.
  • DataSnap Multi-tier Development – develop multi-tier applications with ease using industry standard communications and interfaces for the fastest business layer.
  • Productivity enhancements throughout the product – enhancements make it easier for developers to get their job done in shorter amounts of time.
  • Cross Platform .NET Development on Windows and Mac OS X -Previously Delphi Prism included a Visual Studio based IDE for development on Windows. Now it also includes an additional MonoDevelop IDE built-in for development on both Windows and Mac OS.
  • Cross Platform Web development with RadPHP XE – The only PHP development environment that supports visual development of PHP 5.x applications in a component-based approach. These applications are 100% cross-platform PHP.
  • Support for the latest .NET 4.0 and Silverlight Technologies - .NET 4.0 and Silverlight 4 are fully supported along with new improvements in supporting better native/managed interoperability, threading improvements, enhanced garbage collection, and many others.

     Key Features and Benefits for Developers

Embarcadero’s RAD Studio XE takes development to the next level. Development demands and pressures are higher today for both Enterprise IT teams and ISVs running their business. Developers need tools at their fingertips that can get the job done, and get it done fast. RAD Studio XE includes native development in either Delphi (Object Pascal) or C++. It allows developers to take advantage of the latest .NET technologies from Microsoft including .NET 4.0 and Visual Studio 2010. Plus, new in RAD Studio XE, we have RadPHP XE that allows developers to rapidly build 100% standard PHP applications that can connect to multiple databases and has built-in easy integration with Delphi and C++Builder’s DataSnap native servers.

  • Built on an excellent IDE framework that supports the latest in development practices including 2-way rapid graphical user interface development, refactoring, UML (Unified Modeling Language) support, static code audits and metrics, integrated debugger and so much more.
  • 500+ components included in the box with built-in touch support that allow you to assemble the application rapidly.
  • Advanced DataSnap servers for both Delphi XE and C++Builder XE for cutting-edge industry standard middle-tier development.
  • Instant access to DataSnap servers using Delphi, C++, JavaScript, and PHP to connect your middle-tier business logic anywhere your requirements demand.
  • Work in the latest .NET development environments available today. Delphi Prism XE developers can use either Visual Studio 2010 or the latest from the MonoDevelop IDE.
  • Build cutting-edge .NET applications with the latest framework support for .NET and ASP.NET 4.0 from Microsoft.
  • Integrated Subversion in Delphi, C++Builder and Delphi Prism, to manage your source code with a few clicks of the mouse.
  • Build cross-platform web applications with the new RadPHP XE included in the RAD Studio XE package. RadPHP XE is built with Delphi and allows developers to build 100% PHP applications using the Delphi development approach.
  • Now find and isolate performance problems faster than ever before with the integrated AQtime Profilers and find those tricky bugs with advanced logging with CodeSite Express.
  • Create a repeatable build process in seconds using the included FinalBuilder Embarcadero Edition, with many included actions that allow you to take full control of your applications build process.
  • Create Apple iPhone applications with Novell’s MonoTouch product (sold separately) using the same .NET language you know and love.
  • Target any Microsoft Windows OS, including Windows 2000, Windows XP, Windows Vista 32-bit/64-bit, Windows Server 2008, and Windows 7 32-bit/64-bit.

    RAD Studio XE combines the right tools for any job

    Delphi XE

Delphi XE is the fastest way to deliver ultra-rich, ultra-fast Windows applications. Dramatically reduce coding time and create applications 5x faster with component-based development and a fully visual two-way RAD IDE. Speed development across multiple Windows and database platforms – like GUI desktop applications, interactive touch-screen, kiosk, and database-driven multi-tier, cloud, and Web applications.

Hide image
Click to see full-sized image

   

    C++Builder XE

Hide image
Click to see full-sized image

C++Builder XE is the only true RAD C++ environment and component framework – designed for ultra-fast development of highly-maintainable Windows GUI applications across multiple Windows and database platforms. C++Builder’s fully visual two-way RAD IDE and thousands of available components, speed and simplify building rich and data-intensive end-user applications.

   

    Delphi Prism XE

Delphi Prism XE morphs to your style of development and does not leave you hanging like other .NET environments. That is because Delphi Prism XE comes with both the latest Visual Studio 2010 integration and the cross-platform open source IDE MonoDevelop.

Hide image
Click to see full-sized image

   

Hide image
Click to see full-sized image

Delphi Prism supports development on both Windows and the Apple Mac OS X operating system.

   

    RadPHP XE

RadPHP XE revolutionizes web development with a completely integrated, rapid visual development approach and component framework for PHP. The powerful PHP editor and debugger increase coding speed and efficiency.

The integrated RadPHP component libraries help developers quickly and visually create PHP web and Facebook applications, and the library can be extended with third party and open source components.

Hide image
Click to see full-sized image

   

    What Do Users Create with RAD Studio XE?

Hide image
Click to see full-sized image

RAD Studio has a rich heritage in native Windows applications. Native is the best way to go for applications that require speed – think visualizing data, controlling hardware in real time, or manipulating 3D objects. RAD Studio XE is the environment of choice for applications where response time matters such as financial modeling, gaming, imaging, medical equipment, point-of-sale (POS) systems, and more.

Applications that are better suited to native code, particularly rich user interfaces, packaged applications, and apps that require interaction with hardware and devices – such as driver UIs, healthcare equipment, science and engineering systems, and manufacturing automation. Because Delphi and C++Builder generate compact standalone Windows executables without large and cumbersome runtimes like .NET and Java, they are also well suited and extremely popular with ISVs and Micro ISVs for building packaged software from large high end CAD and GIS systems down to inexpensive and free utilities, Skype for Windows is built with Delphi for examples as well as some of the most popular and most downloaded windows utilities.

With the breadth of RAD Studio products, both enterprise IT and independent developers can do everything from mission-critical enterprise applications, to intense rich desktop applications. RAD Studio XE allows developers to focus on the solution and not have to worry about the technology or where the solution needs to reside. Additionally, RAD Studio XE does not require everything to be run on Microsoft Windows, or only in .NET, it allows the developer to pick the best platform for the application, no matter if that is a Mac OS X, Linux, a mainframe (PHP), or even the Apple iPhone (with MonoTouch from Novell).

    Project Development

After installing RAD Studio XE, you will have the opportunity to decide what type of development you want to do. The RAD Studio XE options are:

  • Delphi XE and C++Builder XE for native compiled applications
  • Delphi Prism XE for building cross-platform .NET and Mono applications
  • RadPHP XE for building PHP web and Facebook applications

Both Delphi XE and C++Builder XE can be run stand-alone, however they can be run together using the Embarcadero RAD Studio item in the project group. The rest of this section will be broken down into the above three options.

    Projects in Delphi XE and C++Builder XE

Once you have decided to start with either Delphi XE or C++Builder XE, or both, the first thing you will need to do is create a project.

Hide image
Click to see full-sized image

This can be accomplished by clicking the File|New|Other menu item. This is the updated object gallery and it displays all of the different projects that can be created. Since you are reviewing the Architect edition, all features are turned on and available for review. The gallery is a simple layout and I will give a brief description of the type of standard projects.

  • Delphi / C++Builder Projects – a list of standard projects like a forms application, .dll, templates, or shell extensions.
  • ActiveX – create, consume, and modify ActiveX projects.
  • DataSnap Server – Advanced multi-tier development approach that generates industry standard business and data servers with multiple connections types.
  • Multitier – various types of data access and containment components called DataModules.
  • VCL for the Web – A set of native components and projects for developing web applications.
  • WebBroker – A special project type for developing web applications that takes advantage of Microsoft’s IIS web server.
  • WebServices – A set of projects for building robust web services applications taking advantage of SOAP.
  • WebSnap – A set of specialized web components to work with JavaScript
  • XML – A set of projects for working with and consuming XML and Data to XML
  • Design Projects – Fully integrated UML non-code based modeling.
  • Other Files – Simple file types like blank projects and text files.
  • Profiling – new integration of SmartBear’s AQtime profilers.
  • Unit Test – Integrated xUnit unit testing projects.
  • Web Documents – create standard web files, like HTML, CSS, etc.

    Delphi Prism XE

The same tasks of creating a new project can be accomplished if you decide to create a project in Delphi Prism XE. The steps in Delphi Prism XE (Visual Studio 2010 or MonoDevelop) to create a new project can be accomplished in either IDE by simply clicking the New Solution from the File menu.

Hide image
Click to see full-sized image

Hide image
Click to see full-sized image


Once the desired project type is selected and named, the IDE will walk the developer through any additional steps that may be needed to create the project.

Once the project is created through the wizard, it is ready to start building the actual application or library the developer is creating.

Notice in the Delphi Prism Visual Studio New Project, that it is also possible to create an Apple Mac OS X application. After the application is created in the IDE, it would have to be transferred to the host operating system, and for this example, it would be the Mac.

    RadPHP XE

Since RadPHP is developed with Delphi and the development approach is the same as Delphi XE and C++Builder XE, the steps are exactly the same. Click the File|New|Other menu item to get the Object gallery just like in Delphi and C++Builder.

Hide image
Click to see full-sized image

In RadPHP, you have the following project groups in the Object gallery.

  • Other files – Simple file types like blank projects and text files.
  • RadPHP Projects – The set of standard projects that can be built.
  • PHP Files – Allows you to create Components, DataSnap connectors, and various other PHP files and applications.
  • Web Documents – create standard web files, like HTML, CSS, etc.

    Native application types you can build with Delphi and C++Builder

The big difference between Delphi and C++Builder is the underlying language. Many developers feel comfortable in either the Delphi (Object Pascal) language or C++. The types of applications created are the same. Both Delphi and C++Builder use the same backend compiler and generate standard Windows executables. Both environments share the same component libraries and many of the standard or 3rd party libraries available support both products. The real difference comes down to simple language preference.

C++Builder:

//----------------------------------------------------------------------------

System::UnicodeString TServerMethods1::ReverseString(System::UnicodeString value)

{

return ::ReverseString(value);

}

//----------------------------------------------------------------------------

Delphi:

Function TServerMethod2.ReverseString(Value: string):String

Begin

Result := StrUtils.ReverseString(Value);

End;

Again, both of the above methods do the exact same thing, the only difference being the first one is in C++ and the second is in Delphi (Object Pascal).

Therefore, the type of application you build depends on the requirements that need to be fulfilled. So, if the requirement is to build a rich GUI based application, or an application that interacts with various databases, that is no problem for either environment.

There are a few that I would like to highlight as special in this release of RAD Studio XE.

  • DataSnap is a server-based technology that allows developers to quickly build a middle-tier service layer. This layer can expose any combination of business processing and database/information manipulation. Plus, it has the added bonus of having a wide-open client connector architecture.

Hide image

As you can see from the above graphic, DataSnap brings information together with processing and exposure to various client types including Delphi, C++Builder, .NET, PHP, and JavaScript.

Developers can create a simple DataSnap server in either Delphi or C++Builder by clicking the File|New|Other|DataSnap Server and picking the DataSnap REST Server, Follow the wizard through its steps and at the end of the process the user will have a running server. Save and run the server.

Hide image

Click the Start button and open the browser. A new browser will be started and the ability to test reverse string will be presented. Users can also click the ServerMethods link for further exploration.

  • Windows Azure is an Internet-scale cloud services platform hosted through Microsoft data centers. (taken from Microsoft) Delphi and C++Builder support the Windows Azure Storage services with both a library and a set of components to manage storage.

Hide image

These components allow for full interaction with the Azure Storage services that include Tables, Blobs, and Queues. You need to have a Windows Azure account before these can be used.

   

To develop with these components, developers drop a TAzureConnectionString and set the account credentials, then drop a management component on a form and link the components together and run. You should be able to right-mouse click in the management component and create, update, and delete items from the Blobs, Queues, or Tables.

    Deploying applications to Amazon’s EC2 cloud infrastructure

Once you have created an application, it may now need to be deployed on some hardware. Using Amazon’s virtualized hardware is a very economical way to get hardware. You need to setup an account with Amazon EC2 and create a machine instance (Windows machine type required), and then in the Project|Deploy to Cloud menu you will be able to click through to deploy.

Hide image

This will deploy any number of files out to any number of machines the developer has running on Amazon.

    .NET application types you build with Delphi Prism XE

If you can build it in .NET, you can build it with Delphi Prism XE. What is unique about Delphi Prism XE is that it is focused beyond simple .NET applications and really focuses on the cross-platform aspects of .NET. Of course, inside the Microsoft Visual Studio Shell or plug-in environments, you can build all the classic .NET applications from the solutions manager.

    Silverlight support

In order to use Delphi Prism XE Silverlight tooling libraries, the developer should download the latest Silverlight integration from Microsoft. The primary reason for this is because the plug-ins and libraries were not official at the time of our build.

Hide image
Click to see full-sized image

Seamlessly work in either the Silverlight GUI designer or work in the lower-level XAML language. Either way, it allows developers to work the way they are most comfortable.

    Creating WPF Applications

Users of Delphi Prism XE can take advantage of the latest WPF (Windows Presentation Foundation) approach to building applications. Delphi Prism XE fully supports both WPF Applications and the creation of WPF User Control Libraries.

    Create WinForms?

Just because Delphi Prism XE is focused on the latest and greatest offered from the .NET framework and platform, it does not mean we do not have backward compatibility support for older technologies like Windows Forms. Developers can use the New Project creator to build Console, WinForm applications, or WinForm User Controls from the IDE and share those with any other .NET application.

    Other .NET features supported

The new Delphi Prism XE environment allows for full support for things like the new .NET 4.0 and ASP.NET 4.0 editions, which includes design-time and runtime support for Windows Forms, ASP.NET, Windows Presentation Foundation (WPF), Parallel FX and LINQ.

Develop cross-platform applications with Mono and MonoDevelop

    How does Mono development differ from Microsoft’s .NET development?

This answer is two-fold. The main differences depend on how the developer approaches a solution. If the developer uses the Visual Studio 2010 integration, the experience is going to be very similar, or almost exact to how they develop regular .NET applications. If the developer decides to use the MonoDevelop IDE, then there will be slight differences in menu items, advanced tools, and such, but the underlying code should be the same or very close to identical. There can be platform nuances that can change the code slightly.

    Can MonoDevelop create Graphical User Interfaces (GUI)?

Mono and MonoDevelop sure can, however, in the areas of GUI development, different approaches will be used. Instead of WinForms or WPF as would be used with Microsoft .NET, in the Mono world, a developer would create a Gtk# Project, which is the main cross-platform approach to Graphical User Interface (GUI) development. Keep in mind that this is true for GUIs being built that target the Windows, Linux, and Apple Mac OS X operating systems.

Hide image
Click to see full-sized image

Hide image
Click to see full-sized image

The overall development experience inside MonoDevelop is still very rich and allows developers to get a lot of work done in a very short amount of time. Besides the slightly different approach to building GUI applications, MonoDevelop has many of the same features that Visual Studio has, but it is running on other platforms.

    Can MonoDevelop create ASP.NET applications?

Yes, MonoDevelop can create ASP.NET applications out of the box. All a developer needs to do is create an ASP.NET solution from the File|Solutions wizard.

    Can MonoDevelop create Silverlight applications?

Moonlight is the open-source equivalent to Silverlight. It is supposed to be compatible with the Silverlight code. The current implementation is basically a library and runtime. In the future, MonoDevelop will support Moonlight designers. And, as of this writing, most all Moonlight applications are code only based. Also, keep in mind that Moonlight is a separate download off the Mono website.

    Building iPhone apps with MonoTouch

Delphi Prism XE can be used with Novell MonoTouch to create applications for the Apple iPhone OS to run on the iPhone, iPod Touch and iPad.

Novell’s MonoTouch is a separate download from the MonoTouch website. A free evaluation version is available that you can use to build apps with Delphi Prism in the MonoDevelop IDE for Mac and run them in an iPhone emulator.

Hide image

   

    Building cross-platform web applications with RadPHP XE

RadPHP includes many of the same great features that are available in Delphi and C++Builder. This means the excellent editor with support for refactoring; Error Insight, IDE Insight, and even Help Insight are all there. The integrated debugger is there, it looks the same, it acts the same, but again the big difference is the underlying language.

Hide image

Hide image

This allows the developer to work in a rapid way with PHP. Not only can RadPHP support general PHP applications and it can also load existing PHP applications and run and debug them with very little setup. However, RadPHP can also create specialized applications that support Facebook™ and Google.

Hide image

Hide image

Moreover, it supports multiple database connectivity out of the box. Therefore, creating a web based cross-platform PHP based application that communicates to most databases and can interact with Facebook and Google is just a few clicks away.

Just remember, that RadPHP works very similar to Delphi and C++Builder, so you create forms or HTML pages and work from that perspective.

    Additional Advanced tools in Delphi and C++Builder

It would be a mistake to think that Delphi and C++Builder feature are covered completely in this write-up. There are a few that I think need special mention, just to remind you, the reviewer, of the power of these products and the capabilities they have as part of the development environment.

  • UML Modeling – in all levels of both products, developers have two-way modeling capabilities, which gives there the ability to reverse-engineer any code and see a model. If the model or code is changed, the model and code are kept in sync. Additional modeling capabilities are available in the Enterprise and Architect Editions including automatic sequence diagrams, pattern support, and model-level refactoring.
  • Static Code Audits – In all levels of the products, developers have code audits; this reviews the code and flags anomalies in the code. In the Enterprise and Architect edition, there are over 200 included audits.Static Code Metrics – in all levels of the products, developers have the code metrics, which reviews the complexity and measures the health of the object diagram. In the Enterprise and Architect editions, there are over 80 included metrics.
  • Integrated Unit Testing – In all levels of the products, we have integrated unit testing based on the xUnit testing framework. DUnit integration will stub out the implementation so all the developer has to do is write the basic test logic.

    Using the extended Toolbox with RAD Studio

Also included in the products is a set of advanced tools to help you, as a developer be more successful. These additional features include:

Product

Company

Area of use

Rave Reports

Nevrona

Reporting

InterBase Express (IBX)

Database app development with the InterBase database

TeeChart

Steema

Charting

VCL for the Web (IntraWeb XI) 

AtoZed

Native Internet

Subversion Client and Server

CollabNet

Source code management – use with the new Subversion integration in the Delphi, C++Builder and Delphi Prism IDEs

Beyond Compare

Scooter Software

Difference engine

AQtime

SmartBear (formerly AutomatedQA)

Profilers

FinalBuilder

FinalBuilder

build manager

CodeSite

Raize Software

Advanced Logging

glyFX

Perthweb

Graphics

IP*Works

/n software

Internet components

     

    Working with Databases and DataSources

    InterBase Developer Edition

RAD Studio XE ships with a Developer Edition of InterBase, Embarcadero’s native, cross platform Relational Database Management System (RDBMS). InterBase Developer Edition allows developers five connections to the server hosted on their local machine for the purpose of developing applications that use InterBase. Once the application is developed, developers can purchase deployment licenses from Embarcadero.

    Other Databases and Data Sources

Since RAD Studio XE includes Delphi / C++Builder and has built-in support for BDE, dbGo, dbExpress database architectures, and Delphi Prism has the .NET framework, it has the ability to connect to any .NET datasource, and RadPHP XE supports the most popular databases on the market including MySQL, Oracle, InterBase, and others. This means that if you need connection to any of the standard enterprise databases besides InterBase, you can do so.

    Basic Introduction

Keep in mind that this reviewer’s guide is a starting point on the road to reviewing RAD Studio XE. There are tons of features in each of the products. This guide barely scratches the surface. There is a wealth of additional information, videos, walkthroughs, and guides to help you get the most out of the product. Please review the what’s new in RAD Studio XE page, full feature matrix, the RAD Studio product page and the Embarcadero Developer Network for the latest on the product.

Hide image

Embarcadero Technologies, Inc. is the leading provider of software tools that empower application developers and data management professionals to design, build, and run applications and databases more efficiently in heterogeneous IT environments. Over 90 of the Fortune 100 and an active community of more than three million users worldwide rely on Embarcadero’s award-winning products to optimize costs, streamline compliance, and accelerate development and innovation. Founded in 1993, Embarcadero is headquartered in San Francisco with offices located around the world. Embarcadero is online at www.embarcadero.com.

Server Response from: ETNASC04