is Delphi still the same (still run with no installed libraries)?
Back when I used Delphi (win32), programs made with it would run on windows, with no need to install any runtime libraries like .NET o开发者_运维技巧r Java(?). Is this still the case? If not, which language can do that?
Delphi executables don't have any external dependency. It's true since Delphi 1 up to Delphi XE.
I just wrote a post on my blog about this fact I like very much in Delphi. http://blog.synopse.info/post/2010/09/20/Dll-hell%2C-WinSXS-directory-and-Delphi-paradise No dll hell with Delphi applications!
Deploying a Delphi application is very easy. If you need some database access, you could need some additional components, like the BDE, or the ODBC drivers, or whatever...
But there are a lot of stand-alone frameworks, with no external dependency, available for Delphi. We provide one Client/Server Open Source solution, using SQLite3 as database storage. And one of great feature of SQLite3 is that it doesn't need to install any client software. Our framework provide the Client/Server features, in pure Delphi.
Both the language and the IDE had some serious improvements from Delphi 1.
To name a few extentions for the language:
- Support for interfaces
- Records with methods
- Record and class helper functions
- Annonymous functions
- Generics
- Hinting directives
There are also some IDE improvements.
- Unicode support
- More integrated tools
- Usage of identifiers (2011).
There are still some things missing:
- 64 bit support
- generics still have some bugs.
It is still the case for the "normal" Delphi, i.e. Delphi for Win32. There is also Delphi Prism which targets .NET for which it is obviously not the case.
Currently there's Delphi for Win32 available, which doesn't require any runtimes and Delphi Prism (for .NET application development). Delphi for 64-bit native Windows development is promised next year.
Well, Lazarus obviously :-)
Seriously, Delphi is fine, but before you buy a recent one, if you need win9x support, check thoroughly. (since the unicode versions might no longer support that)
精彩评论