[p2p-hackers] Cross-platform development
lemonobrien at yahoo.com
Wed Oct 25 15:44:27 EDT 2006
i wrote a c++ library emulating java, then the p2p architecture, framework above that...
this is the middle...on top, for the user interface...i used wtl/html...so its portable mac and linux becuase both have good html rendering libraries.
so, the secret to making a cross platofrm app with c/c++; is to abstract the IO/Threads/Time, and clearly seperate the ui layer...
they're are many c/c++ libraries used in cross-platform development; boost, qt, etc...
i wrote my own because i also wanted to port my stuf to java for phones...and translating the code is easy; in fact, some of my backend code is java written from the c++ code using my "j--" library...they look and act the same.
i don't want to get into the good/bad points of different ways to do it; but if you do use java, or php, or something else...well...you're making it just that much harder for users to adopt your app. Barrier to Entry is a very big deal...and this is why java is realy just a corporate tool; though, LimeWire did a good job; but they had to write some c-code as dll and wrap them with java...so you'll really need to know java if you do that...or any other emualted language for that matter.
Ian Clarke <ian at locut.us> wrote:
Freenet is written in Java, which of course has the advantages of being cross-platform, and high-level enough to facilitate reasonably rapid development (at least relative to C or C++). Of course, we have had issues, and making Freenet easy to deploy has been an ongoing battle. Its possible, LimeWire does a good job, but that kind of polish can be difficult to achieve in a free software project and requires significant effort.
My recommendation is that if this is for a mainstream app where barrier to entry must be minimized at all costs (eg. if you were trying to build the next Skype), then go with C++ and figure out a reasonable way to ease porting to other platforms (perhaps wxwidgets, I'm not that familiar with it), but otherwise Java is a reasonably good choice.
On 12 Oct 2006, at 01:25, Thomas Repantis wrote:
I apologize if this sounds OT, but I'm sure quite a few people here
have developed P2P applications that were actually shipped, so I had a
What would you recommend as the language and GUI library of choice for:
- Platform independence, i.e. win, osx, linux, and *bsd.
- Minimal installation requirements, i.e. minimal library dependencies.
Distributing different binaries for different platforms is not an issue,
but having to distribute more than one installation file per platform is.
I have been considering Java/Swing or C++/wxwidgets so any tips for or
against those in particular would also be appreciated.
Ian Clarke: Co-Founder & Chief Scientist Revver, Inc.
phone: 323.871.2828 | personal blog - http://locut.us/blog
p2p-hackers mailing list
p2p-hackers at lists.zooko.com
You don't get no juice unless you squeeze
Lemon Obrien, the Third.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the p2p-hackers