View Full Version : cross-platform RAD
george
05-14-2006, 02:53 PM
i am researching cross-platform rad software development (for general software not games)... besides c++ toolkits such at QT and wxWidgets, is there anything else, particularly more RAD? i know about REALbasic, but i've heard various complaints about it... are there any others?
p.s. and no java princec! something more like delphi, but cross-platform, like realbasic... what are the other alternatives, if any...
Sybixsus
05-14-2006, 03:22 PM
BlitzMax?
( This message was too short but isn't any more )
george
05-14-2006, 03:36 PM
yea thanks, but i need something more for software rather than games..
i really need your help guys (especially you guys doing cross-platform and/or rad (rapid application development) stuff)
as i'm doing more research, i'm finding that really there are not many other alternatives... which makes me think about sticking with c++, but i need something as RAD and cross-platform as possible. mixing wxWidgets with c++ and a gui editor could be sufficient. but wondering if there are any other choices? things that come to mind are python, etc. but i haven't really messed much with python and have no idea. seeing as many of you have done cross-platform stuff you guys should have some very good insight.
p.s. i'm planning to develop some new shareware utilities, so i want the process to go as smoothly and quickly as possible, thats why i desire rad and cross-platform... but i also don't want to be stuck with a proprietary somewhat-limited technology such as realbasic. i'm trying to find a balance between rad, cross-platform, and expandability. so it does seem the a rad c++ solution will be best?!
what do you guys think? what alternatives are there that you know of?
princec
05-14-2006, 03:48 PM
Java'd do the job for you.
Cas :)
ggambett
05-14-2006, 04:07 PM
How about wxPython, the wxWidgets bindings for Python? "more RAD", cross-platform, and Python of course :)
george
05-14-2006, 04:13 PM
How about wxPython, the wxWidgets bindings for Python? "more RAD", cross-platform, and Python of course :)
yea that's what i was thinking. do you think that is sufficient/appropriate for commercial/shareware software development? basically, i don't want to regret it 1 year from now. are there any downsides? what (if any) are the major reasons that c++ would be chosen over python for my scenario (SOFTWARE not GAMES)?
thanks guys your help is really appreciated.
Sybixsus
05-14-2006, 04:19 PM
yea thanks, but i need something more for software rather than games..
I'm using it for applications myself, but ok.
george
05-14-2006, 04:38 PM
I'm using it for applications myself, but ok.
yes, but surely it isn't the best solution for developing applications... but i've never worked with it so i can't say definitely. thanks for the suggestion tho!
electronicStar
05-14-2006, 06:14 PM
Using "RADs" isn't really going to make the software easier to create for you, except if it' just for fast prototyping. But in the long term, a "real" language is preferable, that's why Java would do the work better for you.
If you use anything else you'll encounter various roadblocks later on during devellopment, when you go deeper in the functionnalities.
BTW blitz can be used for serious software, I remember the earlier versions of Giles (a very powerful lightmapper) were develloped in Blitz basic.
HairyTroll
05-14-2006, 10:01 PM
i am researching cross-platform rad software development (for general software not games)... besides c++ toolkits such at QT and wxWidgets, is there anything else, particularly more RAD? i know about REALbasic, but i've heard various complaints about it... are there any others?
p.s. and no java princec! something more like delphi, but cross-platform, like realbasic... what are the other alternatives, if any...
Common Lisp (http://www.cliki.net/index).
Jason Chong
05-15-2006, 12:06 AM
Lazarus. :D
http://www.lazarus.freepascal.org/
jankoM
05-15-2006, 12:19 AM
How about wxPython, the wxWidgets bindings for Python? "more RAD", cross-platform, and Python of course
BOA (http://boa-constructor.sourceforge.net/) is to python+wxPython what Delphi is to pascall. I have made some serious biz apps in it and I havent regreted it. The produced wxWidgets app is also a lot faster compared to if you use something like pythoncard to construct windows (because it uses straitforward wxpython - no layer on top). The code formdrawer produces is very straigtforward and if you look at wxwidgets docs you can do anything with it.
The really bad side of it is that you have to have installed python, wxpython, other modules you need (like db, pyserial..) on clients computer. I havent used py2exe but maybe that or something similar could solve all these problems.
----
another alternative is .NET + mono (you have sharpdevelop and monodevelop..) which I have used experimentally in latest such thing (but its not candy either) In python I went to client and if there was a bug (all exceptions were simply logged in human readable form with exackt line, file and cause) or new feature needed I just opened the source edited it and ciao. Now I have to look at it , go home edit compile bring back and I havent yet found a way to find to make me tell nicely what caused the error like python did. I get app crashes again which newer happens in python.
princec
05-15-2006, 02:51 AM
p.s. and no java princec! something more like delphi, but cross-platform, like realbasic... what are the other alternatives, if any...
Er yeah, but - why not?? There's a reason why it's the most popular development tool in the world at the moment...
Cas :)
jetro
05-15-2006, 05:38 AM
Your requirements/wishes sound a lot like Java would be a very good choice.
Fabio
05-15-2006, 06:56 AM
It's really unrespectful when one ignores a request expressed so explicitly. Sometimes it would be better to not reply than to try to put into one's throat what he clearly states he doesn't want. Why he doesn't is entirely his "problem", not yours.
princec
05-15-2006, 07:01 AM
It's not really respectful of forum members you're asking to exclude certain answers without explaining why though is it, as the criteria for "why not" will have quite a strong bearing on the other possible answers won't it.
Cas :)
aaron
05-15-2006, 07:09 AM
Purebasic (http://www.purebasic.com) works really well for cross platform application development...
Gnatinator
05-15-2006, 08:01 AM
Maybe Ultimate++ (http://upp.sourceforge.net) is what you are looking for?
Personally, I'd just use either Python or java.
princec
05-15-2006, 08:57 AM
It's all a bit shot in the dark though isn't it without a better description of the problem domain...
Cas :)
Fabio
05-15-2006, 09:18 AM
It's not really respectful of forum members you're asking to exclude certain answers without explaining why though is it, as the criteria for "why not" will have quite a strong bearing on the other possible answers won't it.
Cas :)Why bother, Cas. The guy has the right to formulate the question as he likes, as you have the right to not waste your precious time helping someone that you think doesn't deserve your help. But it's not up to you to brainwash him with your Java Mission From God (tm).
It's like when you stop with your car to kindly ask some pedestrian "please, could you tell me where can I find the nearest Italian restaurant?". And he then replies "why the hell do you have to go there? McDonalds is here around the corner and it's the number one food in the world!".
And then a third person, me, instead of doing his business, feels quite indignant by your (the pedestrian) attitude and suggests you to not give help at all rather than to try to educate who didn't ask for education but for a specific question. Then the pedistrian replies that the original asker wasn't respectful enough in the way he asked. Ehm..
Who's the most respectful person really?
That you got a mission from god to promote java is clear to all of us, Cas, but please don't try to put it also inside our pants at any and every occasion, it's boring. ;)
princec
05-15-2006, 09:27 AM
Was just a legit question really.. why not Java?
Cas :)
Fabio
05-15-2006, 09:50 AM
Indeed, it's legitimate, but the original poster bothered to EXPLICITLY write "not java", so maybe it would be better to PM if one has the time to dedicate to ask about what one person in the world (and there are millions pro and con) thinks about Java. ;)
The real problem is that a certain number of topics (to java or to not java; to clone or not to clone; to be or not to be..) take up most of the board's discussions IMHO uselessly. I find myself less and less interested into this otherwise great board because of this, and I think that others do as well. For the biggest part, who is pro won't change idea and who is con probably neither. This may be due to many reasons but, in my own opinion, it's mostly because neither of the two groups is ignorant. To each one what fits bests his/her own tastes and needs. Simple as that. One should accept that others may need or like or feel naturally comfortable with something different than we do, yet not being confused or ignorant or stupid or blind or simply plainly wrong. :)
I mean, sometimes it's right to be wrong, Cas. ;)
mahlzeit
05-15-2006, 09:59 AM
but please don't try to put it also inside our pants at any and every occasion, it's boring
So is the anti-Java police.
Java with SWT is fine for a cross-platform desktop app, but if this is something to sell to Joe Average, I'd use C++ with wxWidgets. There is only a handful of things you need to make cross-platform in C++ and you can already find all of that code on the web. The big issue is the GUI and wx is great for that. But it's not really RAD.
george
05-15-2006, 10:22 AM
lol i love you guys, you are so funny. somehow this argument always comes up now and then. let me clarify my position....
java is great, no doubt about it. but i need something as compatible as possible. not to mention possible java runtime issues on client machines, but i've read that using platform specific features can be difficult to utilize properly in java. and java isn't much more rad than a proper c++ setup from my experience...
after studying the alternatives, it seems the best solution for me would be to use c++ (gcc for most compiler compatibility) with wxWidgets, and a nice IDE such as codeblocks and a nice gui design tool such as DialogBlocks or wxDesigner. these tools together will "hold-my-hand" in the gui design and programming process much like delphi and other tools do.
initially, my main attraction to an alternative such as python et al was the simple high-level logic code and builtin management for things like lists, etc. i didn't want to use stl or something like that for linked lists etc. due to the complexity, possible compiler incompatibility, etc. but since wxWidget has builtin classes for strings and lists, i don't have to worry about that.
i believe i made the right choice. i wanted to find a balance betweeen cross-platform, performance, and ease-of-use. but if you guys have any further comments or suggestions please let me know!
p.s. i hope this thread helped someone with similar problems i am having. definitely check out http://www.wxwidgets.org
thanks!
Diragor
05-15-2006, 11:59 AM
You've apparently decide already but I'm going to throw in my $0.02 anyway. :)
Ruby (http://www.ruby-lang.org/en/) + ruby/gtk (http://ruby-gnome.sourceforge.net/tutorial/) or wxruby (http://wxruby.rubyforge.org/wiki/wiki.pl) + RubyScript2Exe (http://www.erikveen.dds.nl/rubyscript2exe/index.html)
I've been a big fan of Delphi for many years and have recently become an even bigger fan of Ruby. I haven't used it for stand-alone GUI app development yet, but since you can use the same designers for GTK or WxWidgets that you'd use with any other language I don't think it'll be very difficult.
MrPhil
05-15-2006, 12:19 PM
http://www.mono-project.com/Main_Page
george
05-15-2006, 03:04 PM
lol i love you guys, you are so funny. somehow this argument always comes up now and then. let me clarify my position....
java is great, no doubt about it. but i need something as compatible as possible. not to mention possible java runtime issues on client machines, but i've read that using platform specific features can be difficult to utilize properly in java. and java isn't much more rad than a proper c++ setup from my experience...
after studying the alternatives, it seems the best solution for me would be to use c++ (gcc for most compiler compatibility) with wxWidgets, and a nice IDE such as codeblocks and a nice gui design tool such as DialogBlocks or wxDesigner. these tools together will "hold-my-hand" in the gui design and programming process much like delphi and other tools do.
initially, my main attraction to an alternative such as python et al was the simple high-level logic code and builtin management for things like lists, etc. i didn't want to use stl or something like that for linked lists etc. due to the complexity, possible compiler incompatibility, etc. but since wxWidget has builtin classes for strings and lists, i don't have to worry about that.
i believe i made the right choice. i wanted to find a balance betweeen cross-platform, performance, and ease-of-use. but if you guys have any further comments or suggestions please let me know!
p.s. i hope this thread helped someone with similar problems i am having. definitely check out http://www.wxwidgets.org
thanks!
i take that back... i decided to use wxDevC++ which is a custom version of the popular DevC++ IDE specific for wxWidgets which includes a fully-featured wxWidgets gui designer, and best of all it comes with gcc compiler and a pre-compiled wxWidgets library so you can get started with multi-platform c++ programming RIGHT AWAY. it's amazing! it's almost exactly like delphi/c++ builder, but for wxWidgets & multi-platform.
highly recommended, check it out at http://wxdsgn.sourceforge.net/
:)
HairyTroll
05-15-2006, 08:46 PM
i decided to use wxDevC++ ... and best of all it comes with gcc compiler ... so you can get started with multi-platform c++ programming RIGHT AWAY. it's amazing!
C++, eh? Rapid-- definitely.
Fabio
05-15-2006, 11:00 PM
So is the anti-Java police.
You are definitely right, but how come that every other thread in this boards ends up in a "Java vs non-Java" debate?
I'm having enough of this, really, and I don't mean to polemize, at all. I think it's damn boring totally regardless of the known merits of Java or non-Java solutions. It's like being with a girlfriend that always compares you with her ex boyfriends, even if she says you're better than them in all regards, it annoys in the end.
princec
05-16-2006, 02:11 AM
No-one's talked about it for months.
Cas :)
Jason Chong
05-16-2006, 02:28 AM
Oi ! Anyone even bothered to look at lazarus yet ? :D
That's DELPHI using oss FreePascal compiler. And it works with mysql, postgresql, firebird etc.
dmikesell
05-16-2006, 05:17 AM
How about wxPython, the wxWidgets bindings for Python? "more RAD", cross-platform, and Python of course :)
+1 Use Eclipse's PyDev plugin and you have a first class IDE.
dmikesell
05-16-2006, 05:22 AM
Er yeah, but - why not?? There's a reason why it's the most popular development tool in the world at the moment...
Cas :)
Right, it was the first language to be hyper-marketed. As a language, it's bloated and cumbersome to use. All the marketing did was convince a bunch of pinhead managers that they could off-shore their development to lousy developers (or hire entry level to replace senior level) because Java was so "easy to use".
dmikesell
05-16-2006, 05:25 AM
So is the anti-Java police.
Java with SWT is fine for a cross-platform desktop app, but if this is something to sell to Joe Average, I'd use C++ with wxWidgets. There is only a handful of things you need to make cross-platform in C++ and you can already find all of that code on the web. The big issue is the GUI and wx is great for that. But it's not really RAD.
Just make sure you test on the nearly limitless combinations of JVMs, 3rd party jars, db drivers, and platforms. Java's "write once run anywhere" claim ten years later is still unadulterated, marketing hype, bullshit.
princec
05-16-2006, 06:21 AM
Just make sure you test on the nearly limitless combinations of JVMs, 3rd party jars, db drivers, and platforms. Java's "write once run anywhere" claim ten years later is still unadulterated, marketing hype, bullshit.
Er.. right. Seems to be working for the rest of us.
Cas :)
dmikesell
05-16-2006, 07:26 AM
Er.. right. Seems to be working for the rest of us.
Cas :)
My Java experience is business software. Smaller scale, standalone desktop applications may have better success. So you just drop your jar files on different platforms and they work?
princec
05-16-2006, 07:42 AM
My Java experience is both business and games, realtime TV, and a bunch of serverside stuff. Java deployment is not about expecting jar files to just run! Mostly we use Webstart to distribute in business these days, which is easy and reliable enough; any chance of conflicts with VM versions and we simply embed the VM in the distributable. It's no different to any other runtime system in this respect. There are otherwise almost no differences between the platforms apart from the occasional bug but then, most software's like that.
Cas :)
vBulletin v3.6.0, Copyright ©2000-2008, Jelsoft Enterprises Ltd.