Delphi For PHP Released
Gramie2 writes "Codegear (now a subsidiary of Borland) has just released version 1.0 of Delphi for PHP, a RAD development environment (running on Windows) that produces standard PHP code. It features a large set of built-in components, including ones that use AJAX for database access; and Codegear is encouraging users to develop their own components. The framework, VCL for PHP, is open source, and documentation follows the PHP model. Initial database connectivity is for MySQL and Interbase (Codegear's commercial database that spawned the open-source Firebird), but more are promised."
If you're as confused as I was, it's because the name Delphi can apply to the language Object Pascal, as well as for the IDE used primarily for Object Pascal.
This article is about the IDE being used for PHP, so fans of Pascal syntax have nothing to get excited about.
"A week in the lab saves an hour in the library"
When Borland (then Inprise, then Borland again, then Codegear(?) ) stopped making sober RADs and decided to take a chance on expensive toys for code management, they lost in both fronts. The Turbo Series (Pascal, C and Assembler) and Delphi (the odd versions, 1, 3, 5 and 7) seriously competed against Microsoft products (Microsoft C, Assembler, Visual Series), even outselling them in a lot of places in the world (Brazil, for instance).
.Net would not exist (and consequently, stole Borland's thunder) or the Borland tools would be better even than the Microsoft ones on that fronts (Delphi 8 almost got there, initially). Borland died a sad death, and what we see now is nothing but Post Morten flatulence.
Two things made Borland wreck their scene: 1) losing their creative minds to Microsoft, specially Anders Hejlsberg, creator of nothing less than Turbo Pascal, Delphi and main architect of C#. 2) losing their focus (from useful RADs to expensive but totally good for nothing "Application Lifecycle Management" (whatever it is).
Had kept the focus and the creative minds, either
Another desperate attempt by Borland/Codegear to appease their dwindling developer community.
Delphi is dead. Nothing to see here. Move along.
Y
The embedding code in HTML part of PHP is fairly legacy really for anyone doing anything more complex than basic scripts. Any decent larger PHP app will only use that method as part of a templating/view layer (as long as there's no business logic involved it's a useful templating tool), if at all.
Our CMS is MVC (command and controller j2ee pattern specifically), using PHP's embedding in the views only, is fully OO and has an O/RM layer for datastore access. This kind of set-up is increasingly common in PHP now. Just look at the number of application and database frameworks available for it.
Of course there are always going to be kids knocking out horrible scripts, but that doesn't mean there aren't people doing things properly too.
"Web apps need to be written in proper code, with MVC, and templates, not as code embedded in individual pages."
No kidding? Have you ever seen a quality application written in PHP- it can do all these things and more. I've written many quality PHP applications that use a modified MVC architecture and has all the PHP code separate from the output templates. On top of that it uses OO where it makes sense to do so, it's fast and secure.
It helps to know what you're talking about before you spout off. Just because lots of people build rickety shacks out of stone, doesn't mean you can't build a solid castle out of it too.
It's this kind of generalization that pisses me off. It's not the language, it's your crappy skills.
No kidding? Have you ever seen a quality application written in PHP- it can do all these things and more. I've written many quality PHP applications that use a modified MVC architecture and has all the PHP code separate from the output templates.On top of that it uses OO where it makes sense to do so, it's fast and secure.
.net, java).
As a PHP developer, I agree with everything you said, except "fast", unless:
1. we ignore the speed of all the other platforms out there (python, perl,
2. your requirements of "fast" are modest.
Truth is with more complex architectures and lots of OOP, PHP is really slow, even bytecode caching helps only so much.
PHP shines speed-wise exactly with the kind of "html-and-php-code" soup most pro developers despise. When Yahoo claim they use PHP, they in fact use it as a templating language in exactly this kind of "soup", their actual backend is C and Java.
This is why I'm really surprised at what CodeGear is trying to pull off here. As a developer of an in-house component based template engine myself, I know how painfully slow PHP becomes when you try to abstract some of your logic away in classes and so on. Various "PHP OOP" efforts like Zend's own framework or EZ Components prove my point as well.
Delphi's visual approach with VLC is just a huge bunch of abstraction. I can only imagine the kind of speed these PHP apps will have.. In fact you can pretty much say this effort is doomed from the very moment "PHP" got involved.
Please mod me down as an old fashioned technology-phobic luddite .....
:!! out to a shellscript that generates a template given a table name. Its not rocket science.
.. its just a few javascript functions and a bit of PHP on the receiving end. You should be able to code that in your lunch break.
But I read TFA, and viewed the demo vid, and I cringed.
Maybe Im getting old, but Im perfectly content writing my PHP code in vim, and trusting that my template/rendering classes that I rely on will automatically look after the 'drawing of the screens' part of the application, in an efficient manner.
Im happy just writing code that twiddles attributes, performs calculations, and calls SQL. The only 'visualisation' that happens during coding time happens in my head. If you need to pull in the description of an SQL table at coding time - just
The mental state of mind that you need to be immersed in whilst coding is very different to the state you need to be in when testing, or viewing the result from an aesthetic POV. Coding belongs in a text editor, and anything else is a distraction.
Even Ajax - Im perfectly content coding that longhand. Its only a few pitiful javascript functions after all, and I dont see the need to wrap them in a framework. Lets not go around pretending that because we are using AJAX, that we are super-coders on the cutting edge of technology
OK, so my vim/PHP environment might put me back in the dark prehistoric stone ages, but at least I can sleep well at night knowing that none of my webby code is dependent on the fate of a 3rd party commercial product. After all - thats the main reason I use FOSS in the first place. The whole world wide economy can collapse in a radioactive heap tomorrow, and it wont affect my development at all.
And surely to goodness, isnt vanilla PHP with the standard libraries already way high level enough ? What sort of sheer sloth and laziness leads one to think that they need to front-end PHP with something even higher level ? Are we evolving into a race of Jabba-the-hut's, or what ?
Anyone that commits the blasphemy of 'developing an application' using mostly mouse-clicks honestly needs to be placed into a jar of isopropyl alcohol, and donated to medical science - it is just plain wrong, and always has been.
I tend to take the machine's side of the argument anyway - the less code the machine has to munch through in order to come up with any given result, the happier I am. The end result is just pixels on a screen when you think about it, and a lot of frameworks just add more and more layers of code munching for the machine to produce those same pixels and same behaviour. Silly - just keep it light, simple, scalable and avoid dependencies on proprietary products.
Whats so hard about that ?