RAD Studio (Common)
ContentsIndex
PreviousUpNext
Starting a Project

A project is a collection of files that is used to create a target application. This collection consists of the files you include and modify directly, such as source code files and resources, and other files that RAD Studio maintains to store project settings, such as the .dproj project file. Projects are created at design time, and they produce the project target files (.exe, .dll, .bpl, etc.) when you compile the project.To assist in the development process, the Object Repository offers many pre-designed templates, forms, files, and other items that you can use to create applications. 

To create a project, click New from the Welcome Page and select the type of application you want to create, or choose FileNewOther. To open an existing project, click Project from the Welcome Page or choose FileOpen Project

This section includes information about

  • Types of projects
  • Working with unmanaged code

Depending on the edition of RAD Studio that you are using, you can create traditional Windows applications, ASP.NET Web applications, ADO.NET database applications, Web Services applications, and many others. RAD Studio also supports assemblies, custom components, multi-threading, and COM. For a list of the features and tools included in your edition, refer to the feature matrix on either the CodeGear Delphi web page or the CodeGear C#Builder web page.

Windows Applications

You can create Windows applications using the VCL to provide processing and high-performance content display. In addition to traditional uses for Windows applications, a Windows application can be used with constructs from the .NET framework. For instance, a Windows application can function as a front end to an ADO.NET database.

ASP.NET Web Applications

You can create Web applications using ASP.NET Web Forms to provide Web access to databases and Web Services. Web Forms provide the user interface for Web applications and consist of HTML, server controls, and application logic in code-behind files. RAD Studio lets you drag and drop components and provides in-place HTML editing.  

In addition to drag and drop components and visual designers, CodeGear provides an easy way to create application menus and submenus. The .NET Menu Designers MainMenu and ContextMenu are components that work like editors to let you visually design menus and quickly code their functionality.

ASP.NET Web Services Applications

You can create Web Services applications that deliver content, such as HTML pages or XML documents, over the Web. Web Services is an Internet-based integration methodology that allows applications to connect through the Web and exchange information using standard messaging protocols.  

RAD Studio simplifies the creation of Web Services by providing methods for creating a SOAP Server application. The .asmx and .dll files are created automatically, and you can test the Web Service within the IDE, without writing a client application for it. 

When writing a client application that uses, or consumes, a published Web Service, you can use the UDDI Browser to locate and import WSDL that describes the Web Service into your client application.

VCL.NET Applications

You can use VCL Forms to create a .NET Windows application that uses components from the VCL.NET framework.  

RAD Studio simplifies the task of building .NET-enabled applications by supporting VCL components that have been augmented to run on the .NET Framework. This eliminates the need for you to create custom components to provide standard VCL component capabilities. This makes the process of porting Win32 applications to .NET much simpler and more reliable.

Database Applications

Whether your application uses Web Forms or VCL Forms, RAD Studio has several tools that make it easy to connect to a database, browse and edit a database, execute SQL queries, and display live data at design time. 

dbExpress allows you to connect to Interbase, Oracle, MS SQL, Informix, DB2, Sybase, and MySQL databases. You can also write database drivers by extending the classes in the dbExpress framework. You can use both native and managed code. 

The ADO.NET framework data providers let you access MS SQL, Oracle, and ODBC and OLE DB-accessible databases. The Borland Data Providers (BDP.NET) let you access MS SQL, Oracle, DB2, and InterBase databases. You can connect to any of these data sources, expose their data in datasets, and use SQL commands to manipulate the data. Using BDP.NET provides the following advantages:

  • Portable code that's written once and connects to any supported database.
  • Open architecture that allows you to provide support for additional database systems.
  • Logical data types that map easily to .NET native types.
  • Consistent data types that map across databases, where applicable.
  • Unlike OLE DB, there is no need for a COM/Interop layer.
When using VCL Forms and the VCL.NET framework components, you can extend database support even further by using the BDE.NET, dbExpress.NET, and Midas Client for .NET connection technologies.

Model-Driven Applications

Modeling is a term used to describe the process of software design. Developing a model of a software system is roughly equivalent to an architect creating a set of blueprints for a large development project. Like a set of blueprints, a model not only depicts the system as a whole, but also allows you to focus in on specifics such as structural and behavioral details. Abstracted away from any particular programming language (and at some levels, even from specific technology), the model allows all participants in the development cycle to communicate in the same language.  

CodeGear's Model Driven Architecture (MDA) describes an approach to software engineering where the modeling tools are completely integrated within the development environment itself. The MDA is designed around CodeGear’s Enterprise Core Objects (ECO) framework. The ECO framework is a set of interface, classes, and custom attributes that provide the communication conduit between your application and the modeling-related features of the IDE. 

The ECO features include:

  • Automatic mapping of the model classes, with their attributes and relationships, to a relational schema.
  • Automatic evolution of schema when the model changes.
  • Specification of the persistence backend. You can choose to store objects in a relational database or in an XML file.
  • Design-time structural validation of the model and its Object Constraint Language (OCL) expressions.
  • Runtime validation of the OCL expressions.
  • An event mechanism that allows you to receive notifications whenever objects are added, changed, or removed.
RAD Studio IDE leverages the ECO framework to provide an integrated surface on which to develop your application model. The IDE and its modeling surface features include:
  • Creating model-driven applications as a new kind of project.
  • Creating class diagrams, and manipulating model elements (packages, and classes) directly on the surface.
  • Adding, removing, and changing class attributes and methods on the class diagram.
  • Two-way updating between source code and the modeling surface. Changes in source code are reflected in the graphical depiction, and vice versa.
  • Two-way navigating between model elements and source code. You can navigate from the graphical depiction of a model element directly to its corresponding source code. Similarly, you can navigate from a modeled class in source code directly to its graphical diagram on the modeling surface.
  • Exporting and importing models using XMI 1.1.
Note: Not all modeling features are available in all editions of RAD Studio. To determine the modeling features supported in your product edition, refer to the feature matrix on either the CodeGear Delphi web page or the CodeGear C#Builder web page.

Assemblies

An assembly is a logical package, much like a DLL file, that consists of manifests, modules, portable executable (PE) files, and resources (.html, .jpeg, .gif) and is used for deployment and versioning. An application can have one or more assemblies that are referenced by one or more applications, depending on whether the assemblies reside in an application directory or in a global assembly cache (GAC).

In addition to the project types described above, RAD Studio provides templates to create class libraries, control libraries, console applications, Visual Basic applications, reports, text files, and more. These templates are stored in the Object Repository and you can access them by choosing FileNewOther.

Unmanaged code refers to applications that do not target the .NET Framework Common Language Runtime (CLR). COM/Interop is a .NET service that allows seamless interoperation between managed and unmanaged code. The COM/Interop service allows you to leverage existing COM servers and ActiveX controls in your .NET applications, and expose .NET components in legacy unmanaged applications. The RAD Studio IDE includes tools to help you integrate your legacy COM servers and ActiveX controls into managed applications. Additionally, you can add references to unmanaged DLLs to your project, and then browse the types contained, just as you would with managed assemblies.

Copyright(C) 2008 CodeGear(TM). All Rights Reserved.
What do you think about this topic? Send feedback!