SlideShare una empresa de Scribd logo
1 de 11
Descargar para leer sin conexión
A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 1 of 11




TechRepublic : A ZDNet Tech Community


A developer's hands-on review of Delphi
2010
Date: November 17th, 2009
Author: Justin James
Category: .net, Programming, Web Development
Tags: Developer, IDE, Borland Delphi, Pascal, DataSnap, Touch System, .NET Development,
Programming Languages, Development Tools, Software Development




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                   11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 2 of 11



According to Justin James, .NET and Visual C++ developers should check out Embarcadero’s
Delphi 2010 — as long as they don’t mind learning a new system, a new language, and a new
way of doing things.

———————————————————————————–

Embarcadero Technologies recently released Delphi 2010. Embarcadero provided me with a
review copy of Delphi 2010 and, after a bit of experimentation on my own, I spent some time
with Embarcadero’s Mike Rozlog, who took me on a whirlwind tour of the feature set. Overall, I
like what I saw.

Feature set
I loved Delphi version 1 when I first used it nearly 15 years ago — perhaps it was because Pascal
was the first language I used that I really liked. Sitting down with Delphi 2010, the old memory
banks fired up, and after about 15 minutes, I remembered enough Pascal to hobble along. What
really struck me about the Delphi system is that as an IDE it is extraordinarily productive. Its
feature set felt very much like Visual Studio 2008 with ReSharper added on top, which is a
great experience.

IDE Insight
Even better, the good folks at Embarcadero came up with a brilliant idea called IDE Insight. It
is like IntelliSense (or the Windows Start Menu search system) is applied to the entire IDE.
Just press [F6] and start typing what you want to do, and a list of choices comes up and gets
narrower as you type. For example, if you’re editing a form, press [F6] and start typing
TButton, and you will see the TButton class appear in the list. If you hit [Enter], then bang! a
new button gets dropped onto your form. Want to add a new form to your project? Press [F6]
again and type TForm as the text (Figure A). In a code editor, you can do all sorts of cool
things with IDE Insight. For example, [F6] + for will drop a for loop right in (Figure B). I
know this sounds like such a minor item, but it really does speed things up. Developers who
prefer to not take their hands off of the keyboard will really appreciate the keyboard-driven
productivity of IDE Insight.

Figure A




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                   11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 3 of 11




Using IDE Insight to create a form

Figure B




Using IDE Insight to start a for loop




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                   11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 4 of 11



DataSnap
Another item that I really like is DataSnap, which is similar to WCF in concept, but in
execution, it feels much smoother. WCF (as of this time) still requires an awful lot of manual
plumbing; DataSnap is a more mature technology with the tools in place to rapidly create a
service or a consumer. DataSnap feels much more polished than WCF and produces JSON
output, which means that non-Delphi sources can consume it as well. (Figure C)

Figure C




Creating a new DataSnap Server


Support
Delphi 2010 supports all sorts of new goodies, including multi-touch and gestures. By beating
Visual Studio 2010 to market by nearly six months (assuming Microsoft hits its March 22, 2010
RTM for Visual Studio 2010), Delphi developers get the chance to be first to market with apps
that use the “latest and greatest.” This is great news for developers targeting kiosks, tablet PCs,
and other scenarios that use touch interfaces. The touch system is designed to degrade
gracefully on operating systems that do not support it, too.

Debugging
Delphi 2010 has good tools for debugging multithreaded applications, which is an increasingly
important item; it shows each running thread and provides the ability to freeze and thaw each
thread, as well as view the source for a thread and switch to a thread in debug mode. (Figure
D)

Figure D




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                   11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 5 of 11




Importing a WSDL with Delphi 2010


Web development

I found Web development in Delphi 2010 to be a touch frustrating on my Windows 7 machine.
Windows 7 applies a strict permissions model to IIS, and the IIS 7.X management tool makes
you work a bit too hard to do what needs to be done to make a Delphi Web app run
(Embarcadero uses the CGI model). Once I jumped through the hurdles, it made sense. I feel
confident that these difficulties will be resolved soon; Mike took copious notes while I walked
him through how I solved the problem.

Comparisons
I’m sure that a lot of readers are probably looking for a comparison to other IDEs.
Comparisons are tempting, but there is also a huge danger when comparing, say, Visual Studio
2008 to Delphi 2010, which is confusing the languages, the libraries, and the IDEs. So, I’ll be
as precise and specific as I can.

When I was evaluating Delphi 2010, there was never a point when I wondered why such-and-
such feature was omitted. And as already mentioned, the IDE Insight system blew my mind.
Even other Delphi developers are going to take some time getting used to it; watching Mike do
his demo, he kept forgetting about it. But as I followed along, I found myself constantly waiting
for him to catch up because I was using it and he was not. For someone in a heads-down mode,
IDE Insight rocks.




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                   11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 6 of 11



When I was comparing Delphi 2010 to Visual Studio 2008, I found a massive difference of
opinion regarding development. Delphi is a tool for writing native applications, and as a result,
you are expected to work with native APIs. .NET development encapsulates most of the
functionality of the Windows API (and other native APIs like GDI+) into the massive .NET
Framework, providing easy access and consistency.

If you really like low-level access to the system and a “nothing but what I specify” approach to
what ends up being compiled into your code, you will love Delphi’s attitude; but if you do not
feel comfortable with the native APIs, you will probably be frustrated by Delphi.

I admit that I have become very, very spoiled by the .NET Framework, and it was a tough
transition for me to work on even a simple application in Delphi because so much of what I
expect to be in the standard library wasn’t there. But if I were a C++ or a VB6 developer, I
would feel right at home. This is not a criticism of Delphi in the slightest; some people love
working like this, and it is merely a matter of personal opinion.

Pascal
The other thing that struck me is that the Pascal language that I loved years ago felt very
strange to me. When I first learned Pascal, I was coming from COBOL and BASIC, and Pascal
felt very fluid and smooth. But now, Pascal feels a bit odd to me, like having to declare function
prototypes before actually implementing the function. Again, this is 100% a matter of opinion,
and there is nothing to criticize or applaud here. But be aware, you probably are not going to be
able to just pick up a demo copy of Delphi 2010 coming from a VB.NET, C#, or Java
background, play around with it for a few hours, and feel comfortable or be terribly effective.
That said, you can’t exactly go from Java and Eclipse to C# and Visual Studio and be effective
either, despite the surface similarities between language syntaxes and frameworks.

Summary
If you want to do Windows development, and you want to work with native code in a native
style, I think that Delphi 2010 is a very productive tool. It combines a lot that really saves time
(such as DataSnap and IDE Insight) with the power and flexibility of native code. If you need
support for certain functionality (especially touch-related items), it is the only shipping
product on the market that does these things.

Every time I work with the Embarcadero team, I feel like they are writing the tools that they
would love to use; they really are “developers’ developers,” and they understand the
development process very well and implement it as tools quite nicely.

If you don’t mind learning a new system, a new language, and a new way of doing things,
Delphi 2010 is worth a long look for .NET and Visual C++ developers.

J.Ja

Disclosure of Justin’s industry affiliations: Justin James has a contract with Spiceworks
to write product buying guides. He is also under contract to OpenAmplify, which is owned by
Hapax, to write a series of blogs, tutorials, and other articles.

—————————————————————————————




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                    11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 7 of 11



Get weekly development tips in your inbox
Keep your developer skills sharp by signing up for TechRepublic’s free Web Developer
newsletter, delivered each Tuesday. Automatically subscribe today!

            Justin James is an employee of Levit & James, Inc. in a multidisciplinary role
            that combines programming, network management, and systems administration.
            He has been blogging at TechRepublic since 2005. Read his full bio and profile.

People who read this, also read...
Poll: Have you written a parser or a compiler?
Poll: What is your primary concern when trying a new development technology?
10 signs that you aren't cut out to be a developer
Programming news: Google's Go language, Facebook's API 3.0
How to understand the tenth dimension




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                   11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 8 of 11




Print/View all Posts
Comments on this blog




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                   11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 9 of 11



  Would you give Delphi 2010 a try? Justin James | 11/17/09

     Nostalgia, nostalgia ... sirl@... | 11/17/09

        RE: Do I Miss Pascal? salinaspaul@... | 11/17/09

     Loved Delphi! tkofford | 11/17/09

     No it's Dee ee ay dee dead Tony Hopkinson | 11/17/09

        No it's not Dee ee ay dee dead NEW aideeaidee | 11/18/09

           Well very few are asking for it as a skill in the UK NEW Tony Hopkinson | 11/18/09

              Delphi for .Net is alive and well NEW BruceMcGee | 11/18/09

              Well very few are asking for it as a skill in the UK NEW aideeaidee | 11/18/09

              Which was the last version of Delphi which you saw? NEW
              WoWSupport | 11/18/09
        Hmmmm... NEW WoWSupport | 11/18/09

     API wrapping NEW aikimark@... | 11/17/09

     So JJ...guess what I have on my desk? NEW jck | 11/18/09

        Nice! NEW Justin James | 11/18/09

           Will do my best. NEW jck | 11/18/09

              You won't be disappointed NEW masonwheeler | 11/18/09

  Using Delphi 2005 surfbored | 11/17/09

     From Delphi 2005 ? Tony Hopkinson | 11/17/09

        Delphi 2010 reviews NEW WoWSupport | 11/18/09

  RE: A developer's hands-on review of Delphi 2010 Chas4 | 11/17/09




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                   11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | Tech... Page 10 of 11



   RE: A developer's hands-on review of Delphi 2010 jolyon.smith@... | 11/17/09

      How much of the API gets wrapped by VCL? NEW Justin James | 11/17/09

         One mans "Not Much" is another's "More than enough" NEW
         jolyon.smith@... | 11/18/09
         One mans "Not Much" is another's "More than enough" NEW
         jolyon.smith@... | 11/18/09
      Embarcadero uses CGI NEW aideeaidee | 11/18/09

   RE: A developer's hands-on review of Delphi 2010 NEW programmeroo | 11/17/09

      RE: A developer's hands-on review of Delphi 2010 NEW aideeaidee | 11/18/09

      Because it makes writing good code easier NEW masonwheeler | 11/18/09

      This is not your father's Pascal NEW BruceMcGee | 11/18/09

      Pascal has a number of advantages NEW Justin James | 11/18/09

         hm NEW jck | 11/18/09


My Updates
My Contacts

Would you like your own dynamic Workspace on TechRepublic?


Take two minutes and set up a TechRepublic member profile.




Would you like your own dynamic Workspace on TechRepublic?


Take two minutes and set up a TechRepublic member profile.



Popular on CBS sites: SEC Football | NFL | Video Game Cheats | iPhone | Video Game Reviews
| Notebooks | Antivirus Software




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                  11/18/2009
A developer's hands-on review of Delphi 2010 | Programming and Development | Tech... Page 11 of 11



About CBS Interactive | Jobs | Advertise | Mobile | Site Map

© 2009 CBS Interactive Inc. All rights reserved. | Privacy Policy | Terms of Use




http://blogs.techrepublic.com.com/programming-and-development/?p=1924                  11/18/2009

Más contenido relacionado

Más de Embarcadero Technologies

Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Embarcadero Technologies
 
Linux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for LinuxLinux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for LinuxEmbarcadero Technologies
 
Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework Embarcadero Technologies
 
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
Introduction to Python GUI development with Delphi for Python - Part 1:   Del...Introduction to Python GUI development with Delphi for Python - Part 1:   Del...
Introduction to Python GUI development with Delphi for Python - Part 1: Del...Embarcadero Technologies
 
FMXLinux Introduction - Delphi's FireMonkey for Linux
FMXLinux Introduction - Delphi's FireMonkey for LinuxFMXLinux Introduction - Delphi's FireMonkey for Linux
FMXLinux Introduction - Delphi's FireMonkey for LinuxEmbarcadero Technologies
 
Python for Delphi Developers - Part 1 Introduction
Python for Delphi Developers - Part 1 IntroductionPython for Delphi Developers - Part 1 Introduction
Python for Delphi Developers - Part 1 IntroductionEmbarcadero Technologies
 
RAD Industrial Automation, Labs, and Instrumentation
RAD Industrial Automation, Labs, and InstrumentationRAD Industrial Automation, Labs, and Instrumentation
RAD Industrial Automation, Labs, and InstrumentationEmbarcadero Technologies
 
Embeddable Databases for Mobile Apps: Stress-Free Solutions with InterBase
Embeddable Databases for Mobile Apps: Stress-Free Solutions with InterBaseEmbeddable Databases for Mobile Apps: Stress-Free Solutions with InterBase
Embeddable Databases for Mobile Apps: Stress-Free Solutions with InterBaseEmbarcadero Technologies
 
Rad Server Industry Template - Connected Nurses Station - Setup Document
Rad Server Industry Template - Connected Nurses Station - Setup DocumentRad Server Industry Template - Connected Nurses Station - Setup Document
Rad Server Industry Template - Connected Nurses Station - Setup DocumentEmbarcadero Technologies
 
Move Desktop Apps to the Cloud - RollApp & Embarcadero webinar
Move Desktop Apps to the Cloud - RollApp & Embarcadero webinarMove Desktop Apps to the Cloud - RollApp & Embarcadero webinar
Move Desktop Apps to the Cloud - RollApp & Embarcadero webinarEmbarcadero Technologies
 
Driving Business Value Through Agile Data Assets
Driving Business Value Through Agile Data AssetsDriving Business Value Through Agile Data Assets
Driving Business Value Through Agile Data AssetsEmbarcadero Technologies
 
Troubleshooting Plan Changes with Query Store in SQL Server 2016
Troubleshooting Plan Changes with Query Store in SQL Server 2016Troubleshooting Plan Changes with Query Store in SQL Server 2016
Troubleshooting Plan Changes with Query Store in SQL Server 2016Embarcadero Technologies
 
Agile, Automated, Aware: How to Model for Success
Agile, Automated, Aware: How to Model for SuccessAgile, Automated, Aware: How to Model for Success
Agile, Automated, Aware: How to Model for SuccessEmbarcadero Technologies
 
What's New in DBArtisan and Rapid SQL 2016
What's New in DBArtisan and Rapid SQL 2016What's New in DBArtisan and Rapid SQL 2016
What's New in DBArtisan and Rapid SQL 2016Embarcadero Technologies
 
Is This Really a SAN Problem? Understanding the Performance of Your IO Subsy...
Is This Really a SAN Problem? Understanding the Performance of  Your IO Subsy...Is This Really a SAN Problem? Understanding the Performance of  Your IO Subsy...
Is This Really a SAN Problem? Understanding the Performance of Your IO Subsy...Embarcadero Technologies
 
RAD Studio, Delphi and C++Builder 10 Feature Matrix
RAD Studio, Delphi and C++Builder 10 Feature MatrixRAD Studio, Delphi and C++Builder 10 Feature Matrix
RAD Studio, Delphi and C++Builder 10 Feature MatrixEmbarcadero Technologies
 
7 Dangerous Myths DBAs Believe about Data Modeling
7 Dangerous Myths DBAs Believe about Data Modeling7 Dangerous Myths DBAs Believe about Data Modeling
7 Dangerous Myths DBAs Believe about Data ModelingEmbarcadero Technologies
 

Más de Embarcadero Technologies (20)

Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
Android on Windows 11 - A Developer's Perspective (Windows Subsystem For Andr...
 
Linux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for LinuxLinux GUI Applications on Windows Subsystem for Linux
Linux GUI Applications on Windows Subsystem for Linux
 
Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework Python on Android with Delphi FMX - The Cross Platform GUI Framework
Python on Android with Delphi FMX - The Cross Platform GUI Framework
 
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
Introduction to Python GUI development with Delphi for Python - Part 1:   Del...Introduction to Python GUI development with Delphi for Python - Part 1:   Del...
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
 
FMXLinux Introduction - Delphi's FireMonkey for Linux
FMXLinux Introduction - Delphi's FireMonkey for LinuxFMXLinux Introduction - Delphi's FireMonkey for Linux
FMXLinux Introduction - Delphi's FireMonkey for Linux
 
Python for Delphi Developers - Part 2
Python for Delphi Developers - Part 2Python for Delphi Developers - Part 2
Python for Delphi Developers - Part 2
 
Python for Delphi Developers - Part 1 Introduction
Python for Delphi Developers - Part 1 IntroductionPython for Delphi Developers - Part 1 Introduction
Python for Delphi Developers - Part 1 Introduction
 
RAD Industrial Automation, Labs, and Instrumentation
RAD Industrial Automation, Labs, and InstrumentationRAD Industrial Automation, Labs, and Instrumentation
RAD Industrial Automation, Labs, and Instrumentation
 
Embeddable Databases for Mobile Apps: Stress-Free Solutions with InterBase
Embeddable Databases for Mobile Apps: Stress-Free Solutions with InterBaseEmbeddable Databases for Mobile Apps: Stress-Free Solutions with InterBase
Embeddable Databases for Mobile Apps: Stress-Free Solutions with InterBase
 
Rad Server Industry Template - Connected Nurses Station - Setup Document
Rad Server Industry Template - Connected Nurses Station - Setup DocumentRad Server Industry Template - Connected Nurses Station - Setup Document
Rad Server Industry Template - Connected Nurses Station - Setup Document
 
TMS Google Mapping Components
TMS Google Mapping ComponentsTMS Google Mapping Components
TMS Google Mapping Components
 
Move Desktop Apps to the Cloud - RollApp & Embarcadero webinar
Move Desktop Apps to the Cloud - RollApp & Embarcadero webinarMove Desktop Apps to the Cloud - RollApp & Embarcadero webinar
Move Desktop Apps to the Cloud - RollApp & Embarcadero webinar
 
Driving Business Value Through Agile Data Assets
Driving Business Value Through Agile Data AssetsDriving Business Value Through Agile Data Assets
Driving Business Value Through Agile Data Assets
 
Troubleshooting Plan Changes with Query Store in SQL Server 2016
Troubleshooting Plan Changes with Query Store in SQL Server 2016Troubleshooting Plan Changes with Query Store in SQL Server 2016
Troubleshooting Plan Changes with Query Store in SQL Server 2016
 
Great Scott! Dealing with New Datatypes
Great Scott! Dealing with New DatatypesGreat Scott! Dealing with New Datatypes
Great Scott! Dealing with New Datatypes
 
Agile, Automated, Aware: How to Model for Success
Agile, Automated, Aware: How to Model for SuccessAgile, Automated, Aware: How to Model for Success
Agile, Automated, Aware: How to Model for Success
 
What's New in DBArtisan and Rapid SQL 2016
What's New in DBArtisan and Rapid SQL 2016What's New in DBArtisan and Rapid SQL 2016
What's New in DBArtisan and Rapid SQL 2016
 
Is This Really a SAN Problem? Understanding the Performance of Your IO Subsy...
Is This Really a SAN Problem? Understanding the Performance of  Your IO Subsy...Is This Really a SAN Problem? Understanding the Performance of  Your IO Subsy...
Is This Really a SAN Problem? Understanding the Performance of Your IO Subsy...
 
RAD Studio, Delphi and C++Builder 10 Feature Matrix
RAD Studio, Delphi and C++Builder 10 Feature MatrixRAD Studio, Delphi and C++Builder 10 Feature Matrix
RAD Studio, Delphi and C++Builder 10 Feature Matrix
 
7 Dangerous Myths DBAs Believe about Data Modeling
7 Dangerous Myths DBAs Believe about Data Modeling7 Dangerous Myths DBAs Believe about Data Modeling
7 Dangerous Myths DBAs Believe about Data Modeling
 

Último

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 

Último (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 

A developer's hands-on review of Delphi 2010

  • 1. A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 1 of 11 TechRepublic : A ZDNet Tech Community A developer's hands-on review of Delphi 2010 Date: November 17th, 2009 Author: Justin James Category: .net, Programming, Web Development Tags: Developer, IDE, Borland Delphi, Pascal, DataSnap, Touch System, .NET Development, Programming Languages, Development Tools, Software Development http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 2. A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 2 of 11 According to Justin James, .NET and Visual C++ developers should check out Embarcadero’s Delphi 2010 — as long as they don’t mind learning a new system, a new language, and a new way of doing things. ———————————————————————————– Embarcadero Technologies recently released Delphi 2010. Embarcadero provided me with a review copy of Delphi 2010 and, after a bit of experimentation on my own, I spent some time with Embarcadero’s Mike Rozlog, who took me on a whirlwind tour of the feature set. Overall, I like what I saw. Feature set I loved Delphi version 1 when I first used it nearly 15 years ago — perhaps it was because Pascal was the first language I used that I really liked. Sitting down with Delphi 2010, the old memory banks fired up, and after about 15 minutes, I remembered enough Pascal to hobble along. What really struck me about the Delphi system is that as an IDE it is extraordinarily productive. Its feature set felt very much like Visual Studio 2008 with ReSharper added on top, which is a great experience. IDE Insight Even better, the good folks at Embarcadero came up with a brilliant idea called IDE Insight. It is like IntelliSense (or the Windows Start Menu search system) is applied to the entire IDE. Just press [F6] and start typing what you want to do, and a list of choices comes up and gets narrower as you type. For example, if you’re editing a form, press [F6] and start typing TButton, and you will see the TButton class appear in the list. If you hit [Enter], then bang! a new button gets dropped onto your form. Want to add a new form to your project? Press [F6] again and type TForm as the text (Figure A). In a code editor, you can do all sorts of cool things with IDE Insight. For example, [F6] + for will drop a for loop right in (Figure B). I know this sounds like such a minor item, but it really does speed things up. Developers who prefer to not take their hands off of the keyboard will really appreciate the keyboard-driven productivity of IDE Insight. Figure A http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 3. A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 3 of 11 Using IDE Insight to create a form Figure B Using IDE Insight to start a for loop http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 4. A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 4 of 11 DataSnap Another item that I really like is DataSnap, which is similar to WCF in concept, but in execution, it feels much smoother. WCF (as of this time) still requires an awful lot of manual plumbing; DataSnap is a more mature technology with the tools in place to rapidly create a service or a consumer. DataSnap feels much more polished than WCF and produces JSON output, which means that non-Delphi sources can consume it as well. (Figure C) Figure C Creating a new DataSnap Server Support Delphi 2010 supports all sorts of new goodies, including multi-touch and gestures. By beating Visual Studio 2010 to market by nearly six months (assuming Microsoft hits its March 22, 2010 RTM for Visual Studio 2010), Delphi developers get the chance to be first to market with apps that use the “latest and greatest.” This is great news for developers targeting kiosks, tablet PCs, and other scenarios that use touch interfaces. The touch system is designed to degrade gracefully on operating systems that do not support it, too. Debugging Delphi 2010 has good tools for debugging multithreaded applications, which is an increasingly important item; it shows each running thread and provides the ability to freeze and thaw each thread, as well as view the source for a thread and switch to a thread in debug mode. (Figure D) Figure D http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 5. A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 5 of 11 Importing a WSDL with Delphi 2010 Web development I found Web development in Delphi 2010 to be a touch frustrating on my Windows 7 machine. Windows 7 applies a strict permissions model to IIS, and the IIS 7.X management tool makes you work a bit too hard to do what needs to be done to make a Delphi Web app run (Embarcadero uses the CGI model). Once I jumped through the hurdles, it made sense. I feel confident that these difficulties will be resolved soon; Mike took copious notes while I walked him through how I solved the problem. Comparisons I’m sure that a lot of readers are probably looking for a comparison to other IDEs. Comparisons are tempting, but there is also a huge danger when comparing, say, Visual Studio 2008 to Delphi 2010, which is confusing the languages, the libraries, and the IDEs. So, I’ll be as precise and specific as I can. When I was evaluating Delphi 2010, there was never a point when I wondered why such-and- such feature was omitted. And as already mentioned, the IDE Insight system blew my mind. Even other Delphi developers are going to take some time getting used to it; watching Mike do his demo, he kept forgetting about it. But as I followed along, I found myself constantly waiting for him to catch up because I was using it and he was not. For someone in a heads-down mode, IDE Insight rocks. http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 6. A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 6 of 11 When I was comparing Delphi 2010 to Visual Studio 2008, I found a massive difference of opinion regarding development. Delphi is a tool for writing native applications, and as a result, you are expected to work with native APIs. .NET development encapsulates most of the functionality of the Windows API (and other native APIs like GDI+) into the massive .NET Framework, providing easy access and consistency. If you really like low-level access to the system and a “nothing but what I specify” approach to what ends up being compiled into your code, you will love Delphi’s attitude; but if you do not feel comfortable with the native APIs, you will probably be frustrated by Delphi. I admit that I have become very, very spoiled by the .NET Framework, and it was a tough transition for me to work on even a simple application in Delphi because so much of what I expect to be in the standard library wasn’t there. But if I were a C++ or a VB6 developer, I would feel right at home. This is not a criticism of Delphi in the slightest; some people love working like this, and it is merely a matter of personal opinion. Pascal The other thing that struck me is that the Pascal language that I loved years ago felt very strange to me. When I first learned Pascal, I was coming from COBOL and BASIC, and Pascal felt very fluid and smooth. But now, Pascal feels a bit odd to me, like having to declare function prototypes before actually implementing the function. Again, this is 100% a matter of opinion, and there is nothing to criticize or applaud here. But be aware, you probably are not going to be able to just pick up a demo copy of Delphi 2010 coming from a VB.NET, C#, or Java background, play around with it for a few hours, and feel comfortable or be terribly effective. That said, you can’t exactly go from Java and Eclipse to C# and Visual Studio and be effective either, despite the surface similarities between language syntaxes and frameworks. Summary If you want to do Windows development, and you want to work with native code in a native style, I think that Delphi 2010 is a very productive tool. It combines a lot that really saves time (such as DataSnap and IDE Insight) with the power and flexibility of native code. If you need support for certain functionality (especially touch-related items), it is the only shipping product on the market that does these things. Every time I work with the Embarcadero team, I feel like they are writing the tools that they would love to use; they really are “developers’ developers,” and they understand the development process very well and implement it as tools quite nicely. If you don’t mind learning a new system, a new language, and a new way of doing things, Delphi 2010 is worth a long look for .NET and Visual C++ developers. J.Ja Disclosure of Justin’s industry affiliations: Justin James has a contract with Spiceworks to write product buying guides. He is also under contract to OpenAmplify, which is owned by Hapax, to write a series of blogs, tutorials, and other articles. ————————————————————————————— http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 7. A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 7 of 11 Get weekly development tips in your inbox Keep your developer skills sharp by signing up for TechRepublic’s free Web Developer newsletter, delivered each Tuesday. Automatically subscribe today! Justin James is an employee of Levit & James, Inc. in a multidisciplinary role that combines programming, network management, and systems administration. He has been blogging at TechRepublic since 2005. Read his full bio and profile. People who read this, also read... Poll: Have you written a parser or a compiler? Poll: What is your primary concern when trying a new development technology? 10 signs that you aren't cut out to be a developer Programming news: Google's Go language, Facebook's API 3.0 How to understand the tenth dimension http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 8. A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 8 of 11 Print/View all Posts Comments on this blog http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 9. A developer's hands-on review of Delphi 2010 | Programming and Development | TechRe... Page 9 of 11 Would you give Delphi 2010 a try? Justin James | 11/17/09 Nostalgia, nostalgia ... sirl@... | 11/17/09 RE: Do I Miss Pascal? salinaspaul@... | 11/17/09 Loved Delphi! tkofford | 11/17/09 No it's Dee ee ay dee dead Tony Hopkinson | 11/17/09 No it's not Dee ee ay dee dead NEW aideeaidee | 11/18/09 Well very few are asking for it as a skill in the UK NEW Tony Hopkinson | 11/18/09 Delphi for .Net is alive and well NEW BruceMcGee | 11/18/09 Well very few are asking for it as a skill in the UK NEW aideeaidee | 11/18/09 Which was the last version of Delphi which you saw? NEW WoWSupport | 11/18/09 Hmmmm... NEW WoWSupport | 11/18/09 API wrapping NEW aikimark@... | 11/17/09 So JJ...guess what I have on my desk? NEW jck | 11/18/09 Nice! NEW Justin James | 11/18/09 Will do my best. NEW jck | 11/18/09 You won't be disappointed NEW masonwheeler | 11/18/09 Using Delphi 2005 surfbored | 11/17/09 From Delphi 2005 ? Tony Hopkinson | 11/17/09 Delphi 2010 reviews NEW WoWSupport | 11/18/09 RE: A developer's hands-on review of Delphi 2010 Chas4 | 11/17/09 http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 10. A developer's hands-on review of Delphi 2010 | Programming and Development | Tech... Page 10 of 11 RE: A developer's hands-on review of Delphi 2010 jolyon.smith@... | 11/17/09 How much of the API gets wrapped by VCL? NEW Justin James | 11/17/09 One mans "Not Much" is another's "More than enough" NEW jolyon.smith@... | 11/18/09 One mans "Not Much" is another's "More than enough" NEW jolyon.smith@... | 11/18/09 Embarcadero uses CGI NEW aideeaidee | 11/18/09 RE: A developer's hands-on review of Delphi 2010 NEW programmeroo | 11/17/09 RE: A developer's hands-on review of Delphi 2010 NEW aideeaidee | 11/18/09 Because it makes writing good code easier NEW masonwheeler | 11/18/09 This is not your father's Pascal NEW BruceMcGee | 11/18/09 Pascal has a number of advantages NEW Justin James | 11/18/09 hm NEW jck | 11/18/09 My Updates My Contacts Would you like your own dynamic Workspace on TechRepublic? Take two minutes and set up a TechRepublic member profile. Would you like your own dynamic Workspace on TechRepublic? Take two minutes and set up a TechRepublic member profile. Popular on CBS sites: SEC Football | NFL | Video Game Cheats | iPhone | Video Game Reviews | Notebooks | Antivirus Software http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009
  • 11. A developer's hands-on review of Delphi 2010 | Programming and Development | Tech... Page 11 of 11 About CBS Interactive | Jobs | Advertise | Mobile | Site Map © 2009 CBS Interactive Inc. All rights reserved. | Privacy Policy | Terms of Use http://blogs.techrepublic.com.com/programming-and-development/?p=1924 11/18/2009