views:

1087

answers:

5

I have been working with PHP for a while now and would like to learn some Windows desktop-based GUI applications. Something similar to C# or Visual Basic would be nice, however I would like to learn a language that is open, similar to PHP.

Please do not suggest anything that requires an expensive compiler or one that does not allow you to create stand-alone applications.

+1  A: 

Since you have PHP background, I recommend you to try PHP-GTK.

PHP-GTK is an extension for PHP that implements language bindings for GTK+.

CMS
+3  A: 

If you are looking for another language besides php:

.NET WinForms

  1. You can download Visual Studio Express 2008 for free on microsofts website.
  2. You could also use MONO ( http://www.mono-project.com/ ) to write your .net WinForms code.

Other languages with GUI bindings

  • Ruby/Python/Perl with wxWidgets/GTK/QT bindings
grepsedawk
+2  A: 

Don't use PHP for GUI apps. That's not what it's intended for. Your idea of looking for another language is a good one.

  • Python is very similar to PH, but is a lot more mature as a language. It has some decent GUI bindings. You can even get into stuff like pygame if you wan't more game-like UI.
  • Java is now open source. Java GUIs tend to be pretty ordinary though. I think things have picked up more recently. Charles, Eclipse are some Java apps with nice interfaces.
  • I'd skip VB, but C# is a good idea. You might find that it is useful when looking for work in the future. And of course, it's going to be the easiest when it comes to GUIs.
  • You could look at Flex. I'm not a big fan of Adobe's development environments though.
Josh
*PHP, *want. For Python, I would recommend PyQt.
strager
Python is about as far away from PHP as you can get
Draemon
+1  A: 

I think you'll struggle to find anything very like PHP that is perfectly suited for desktop GUI apps. Languages like PHP show their "script-behind-a-webpage" heritage just in the way that awk & perl are very much suited to general purpose/admin scripts on unix boxes.

There are GUI bindings (tk, gtk,...) for many languages - included "interpreted" ones that are closest (but still not that close) to php. Obvious examples would be python, ruby, or perl (though I'd greatly recommend one of the first two).

However, none of these are really geared towards desktop GUI apps, and it shows. Languages such as Java are far more suited to this sort of thing, but are quite a big step language wise.

If you're on a windows system I'd recommend c# with mono. I think it's more important to use the right tool than going for something close to PHP.

Don't even consider VB

Draemon
A: 

PHP-GTK is a real stretch of PHP's intended use. I'd personally stay away. Python along with wxWidgets is an easy way to start creating GUI's. There are form builders (e.g. PythonCard and wxGlade) that can expediate the process if you prefer not to handwrite your forms.