Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
Programming Windows Technology

Platform Independent C++ OS Library? 310

quench writes "Hello! I have been away from Windows and Linux application software for 5 years or so, doing mainly C-like embedded C++ programming. Now, I am about to start a project emulating embedded hardware on Windows. Been there, doing #ifdef WIN32 and #ifdef LINUX stuff, don't really want to go there any more. What I actually need is a platform independent lib covering Windows and Linux variants to handle sockets, IPC and threads abstractions. And a rock solid but simple embedded database to emulate flash memory. My reflex said, go for ACE and Berkeley-DB. Tell me, am I out of time? Am I missing something new and trendy, easier to use and better? Did time stand still?"
This discussion has been archived. No new comments can be posted.

Platform Independent C++ OS Library?

Comments Filter:
  • by Anonymous Coward on Sunday October 11, 2009 @03:57PM (#29712765)

    it is all well and good, but he cannot even read options 3,4 and 5 because of your recursion!

  • by CptNerd ( 455084 ) <> on Sunday October 11, 2009 @04:13PM (#29712849) Homepage
    Unfortunately all the trendy cool kids are using Java these days, and only web-based applications are worth working on if you want to keep up with the times. The days of small, simple client-server apps are over, old hat, out of date, archaic. Nowadays you need to implement a web application using AJAX, web services, Struts and Spring and Hibernate, and you have to do it using Agile methodology. If you aren't linking in at least 100 Java class libraries, you don't have a "real" application.

    C++? Too simple.
  • by Anonymous Coward on Sunday October 11, 2009 @04:39PM (#29712993)

    Got yer polarity wrong. He's the oldster, you are the whippersnapper. You should be saying, "I'll get off YOUR lawn". Otherwise, your advice is sound.

  • Re:Boost? (Score:2, Funny)

    by Profane MuthaFucka ( 574406 ) <> on Sunday October 11, 2009 @04:52PM (#29713087) Homepage Journal

    No, USE Boost for exactly those reasons. It's an extremely advanced library, and working with it will quickly make you a much better C++ programmer.

  • by JustNiz ( 692889 ) on Sunday October 11, 2009 @06:10PM (#29713671)

    >> It's got so much stuff munged into it that the spec contains literally hundreds of pages special-casing bad interactions between features, and it takes a gigantic effort just to determine the type of an expression.

    Yeah I'm so glad Java came along... oh wait...

  • by RonBurk ( 543988 ) on Sunday October 11, 2009 @06:18PM (#29713725) Homepage Journal
    The Java repliers are right on the mark. Trying to use app-independent portability layers ensures apps of any complexity will suck. By "suck", I mean "compromised at every turn by lowest-common denominator design decisions". Your app will end up using threads on an O/S designed to make multi-processing beautiful (Linux), or end up using multiple processes on an O/S designed to make multi-threading beautiful (Windows). It'll be clueless about the nifty GUI features that exist on a Mac but not Windows, and vice versa. Knowing up front that your app is going to suck allows you to, in all good conscience, choose a language that highly adapted for creating apps that suck in this manner. When I fire up a Java app on Windows (and I ALWAYS know it's a Java app the minute it finally manages to lumber onto the screen), I know I'm going to get the same sucky behavior if I fire that app up on a totally different platform (well, assuming I can manage to figure out whatever obscure infinite-megabyte downloads are needed to get the right "runtime engine" for the given app). Really, the only way you can make your app suck even more and be even more portable is to just go ahead and make it a web "service". That has the added advantage that nobody really expects anything but poor performance and clunky UI design from the get-go. But if for some reason you can't have your app suck as bad as a web service, then Java is definitely the next-suckiest way to achieve that portability that your end users don't give a crap about, but you hope will make your life easier.
  • Re:Qt (Score:4, Funny)

    by digitalunity ( 19107 ) <digitalunity&yahoo,com> on Sunday October 11, 2009 @06:39PM (#29713847) Homepage

    Mono on windows isn't there yet.

  • Re:JAVA (Score:2, Funny)

    by Anonymous Coward on Sunday October 11, 2009 @08:18PM (#29714395)

    I don't think you know what that word actually means. Let me look it up for you:

    Main Entry: moron
    Pronunciation: \mor-än\
    Function: noun
    Etymology: irregular from Greek mros foolish, stupid
    Date: 1910

    1 usually offensive : a person affected with mild mental retardation
    2 : a very stupid person
    3 : someone who uses a cross-platform language to solve a cross-platform problem

    Oh snap. They've gone changed the definition of moron - so I guess you were right!

  • by strangeattraction ( 1058568 ) on Sunday October 11, 2009 @11:59PM (#29715501)
    Obviously there are not a lot experienced embed heads reading slash. Java:( If you don't like ifdef this or that try Java. Instead of ifdef, Java programmers us xml in what I call program by configuration file. It adds an entirely new dimension to programming that most skilled programmers would never have thought of. It is even more delightful when they use multiple overrides on their configurations files and you have to hunt through multiple files to to see how things are configured. Not only that, they can actually change the way code executes with configuration files. So not only do you have to look at code to see execution paths, you have to dig through multiple configuration files. It is truly the strangest methodology I have ever encountered. Stick with a C or C++ library. QT works well. For key value searchers Berkeley has no peer but SQLite works ell if you are into SQL.
  • by dgriff ( 1263092 ) on Monday October 12, 2009 @04:28AM (#29716527)

    C++? Too simple.

    That's not a statement you see very often.

  • by Hal_Porter ( 817932 ) on Monday October 12, 2009 @06:58AM (#29717021)

    I think modding people Troll is the /. equivalent of smacking dogs on the nose with a rolled up newspaper when they defecate in the apartment. I.e. it's just a way to stop them doing it again. Clearly no one wants to read "Why not use Java?!" in these sorts of discussions. Now you can't explain to a dog why indoor defecation is bad, just like you can't explain to Java programmers why Java is just a bad idea. Still shit in the apartment and posts advocating Java is not something which you need to tolerate.

Veni, Vidi, VISA: I came, I saw, I did a little shopping.