Cross platform programming - C++ or java or Python ???

bcairnsbcairns Member Posts: 280
I have been wanting to get into cross platform programming, mainly due to the fact that I am a windows programmer (Delphi / C# / VB) and wanting to get more into Linux.

Have experience with both C++ and Java, a little with Python, but I am far from mastering those languges.

Can not decide which language to use. I like to do a bit of everything from desktop applications to web sites...been looking hard at TrollTechs QT framework and Sun Java J2EE/J2SE. have read about Mono and not sure if it would be good for serious projects....I wish Microsoft would get off their butts and make the .net framework cross platform.

Always found these forums to be a good source of information and help - just wondering if any of you out there have experience in this area?

Comments

  • PashPash Member Posts: 1,600 ■■■■■□□□□□
    bcairns wrote:
    I have been wanting to get into cross platform programming, mainly due to the fact that I am a windows programmer (Delphi / C# / VB) and wanting to get more into Linux.

    Have experience with both C++ and Java, a little with Python, but I am far from mastering those languges.

    Can not decide which language to use. I like to do a bit of everything from desktop applications to web sites...been looking hard at TrollTechs QT framework and Sun Java J2EE/J2SE. have read about Mono and not sure if it would be good for serious projects....I wish Microsoft would get off their butts and make the .net framework cross platform.

    Always found these forums to be a good source of information and help - just wondering if any of you out there have experience in this area?

    XML is huge right now, it's the best cross platform language to learn for transport of data seemingly. I know some developers swear by it for use on the .net platform.

    Just to add to that, python is great because you can use it on nix or windows. Id stay away from C++ unless you plan on doing some hardcore application work, afterall, it is the industry standard language, but hard to master. For websites, PHP and AJAX seem to be hot. Im learning AJAX currently and it's great for creating smart background thinking websites.
    DevOps Engineer and Security Champion. https://blog.pash.by - I am trying to find my writing style, so please bear with me.
  • JDMurrayJDMurray Admin Posts: 13,089 Admin
    Pash wrote:
    XML is huge right now, it's the best cross platform language to learn for transport of data seemingly. I know some developers swear by it for use on the .net platform.
    XML is not a programming language; it's only for defining device-independent data storage and transport structures.
    bcairns wrote:
    Have experience with both C++ and Java, a little with Python, but I am far from mastering those languges.
    If you really want a single language that can be used to write programs that run on multiple OSes, you're best to stick with Java or Python (although Python isn't nearly as mature or comprehensive as Java). C++ is also cross-platform, but (IMHO) it's much more difficult to learn well than Java. If you do pick Java, I've been told that the Eclipse Java IDE is the best one to use.

    Also, you don't need to "master" a programming language to use it effectively. Are any of us a master of the English language?
  • undomielundomiel Member Posts: 2,818
    JDMurray wrote:
    Also, you don't need to "master" a programming language to use it effectively. Are any of us a master of the English language?

    Not I but I'm married to one so does that count? :)
    Jumping on the IT blogging band wagon -- http://www.jefferyland.com/
  • hypnotoadhypnotoad Banned Posts: 915
    Java, which was supposed to be platform-neutral, has been crippled by version inconsistancies for a long time.
  • astorrsastorrs Member Posts: 3,139 ■■■■■■□□□□
    undomiel wrote:
    Not I but I'm married to one so does that count? :)
    Ditto, a fact of which she reminds me almost every day. icon_rolleyes.gif
  • bcairnsbcairns Member Posts: 280
    thanks for the responses guys, will take each one to heart.
  • JDMurrayJDMurray Admin Posts: 13,089 Admin
    nl wrote:
    Java, which was supposed to be platform-neutral, has been crippled by version inconsistancies for a long time.
    The Java language is very platform neutral, but there's more to platform dependencies than the language a program is written in. Every portability issue can't be fairly blamed on the language, compiler, or interpretive environment used by a program. Portability issues also reside in library implementations, APIs, interfaces, OS services used by the program, and differences in hardware.
  • PashPash Member Posts: 1,600 ■■■■■□□□□□
    Yeh sorry, I should of said XML isnt a programming language, but according to some developers I support, it is a good idea to know how to successfuly build a XML document from scratch in any programming skillset. I also want to learn to do some basic windows scripting to automate tasks where possible, I guess VBScript is fine for this or powershell right?
    DevOps Engineer and Security Champion. https://blog.pash.by - I am trying to find my writing style, so please bear with me.
  • hypnotoadhypnotoad Banned Posts: 915
    JDMurray wrote:
    nl wrote:
    Java, which was supposed to be platform-neutral, has been crippled by version inconsistancies for a long time.
    The Java language is very platform neutral, but there's more to platform dependencies than the language a program is written in. Every portability issue can't be fairly blamed on the language, compiler, or interpretive environment used by a program. Portability issues also reside in library implementations, APIs, interfaces, OS services used by the program, and differences in hardware.

    Things are working fine on 1.3 and then all of a sudden we try running on Java 1.4.2 (because of big security holes in the JVM) and nothing works.

    The language itself is fine, the implementation has always been botched. They made big promises, and got lots of people behind it, and kept horking the implementation. Sun blew it with Java.
  • livenliven Member Posts: 918
    JDMurray wrote:
    Pash wrote:
    XML is huge right now, it's the best cross platform language to learn for transport of data seemingly. I know some developers swear by it for use on the .net platform.
    XML is not a programming language; it's only for defining device-independent data storage and transport structures.
    bcairns wrote:
    Have experience with both C++ and Java, a little with Python, but I am far from mastering those languges.
    If you really want a single language that can be used to write programs that run on multiple OSes, you're best to stick with Java or Python (although Python isn't nearly as mature or comprehensive as Java). C++ is also cross-platform, but (IMHO) it's much more difficult to learn well than Java. If you do pick Java, I've been told that the Eclipse Java IDE is the best one to use.

    Also, you don't need to "master" a programming language to use it effectively. Are any of us a master of the English language?


    Eclipse is awesome but a little daunting to learn in the begging. Its almost as if it has to many features!
    encrypt the encryption, never mind my brain hurts.
  • livenliven Member Posts: 918
    Just on a side note, java is one of the most in demand languages right now. And it will probably stay that way for some time.


    I am pretty sure the demand for java developers is greater that the demand for C++ developers, and is definately greater than the demand for python developers.

    That being said you can't go wrong with any of these languages. You can apply Object oriented theory to all three of these languages. And they can all be used for a wide variety of tasks.
    encrypt the encryption, never mind my brain hurts.
  • JDMurrayJDMurray Admin Posts: 13,089 Admin
    Pash wrote:
    I also want to learn to do some basic windows scripting to automate tasks where possible, I guess VBScript is fine for this or powershell right?
    VBScript is certainly available on all modern Windows computers, but PowerShell is definitely the future. If you want to use scripting in writing Windows software, I'd say go the VBA/VBScript route, but for only sysadmin stuff I think that I'd give PowerShell a try because you can do more with less script writing.

    Scripting School: Windows PowerShell and VBScript compared
    Converting VBScript Commands to Windows PowerShell Commands
  • shednikshednik Member Posts: 2,005
    Sorry to bring up an old thread but...has anyone ever read this book Its a secondary resource for my next grad class...I was wondering what peoples thoughts were on the quality of the book. I'd like to really learn C well in this course since my security courses hit C & Java pretty hard at times.
  • JDMurrayJDMurray Admin Posts: 13,089 Admin
    Oh geez, I picked up the 1st edition of that book back in 1983, and it's only in the second edition 25 years later? icon_lol.gif That was my first C programming book, and I couldn't do much with it because it assumed the reader already had a couple of years of college-level programming courses under his belt. I don't know what the 2nd edition of K&R is like, but there are at least 1000 C/C++ books published since then. Practically anything from O'Reilly I would ask you to look at first. If you are new to programming, maybe the Dummies books would be a better start.
  • shednikshednik Member Posts: 2,005
    I know the basics of programming, I know a little C, Java, C#, & a good bit of VB. I was told that book is the best to go with since the creators of C wrote it. I was thinking of picking it up to compliment the course book I may pick it up just to see what it says.
  • dynamikdynamik Banned Posts: 12,312 ■■■■■■■■■□
    I love how you make me buy the book so we can work through it together, and then you decide to get everyone's opinions on it a month later icon_lol.gif

    I like it a lot. I've done enough programming, and I really like that they just dive in. I'll probably slow down once I get to the more advanced topics.

    Oh, and that other book you made get still scares the hell out of me. That's going to be collecting dust for awhile, methinks.
  • shednikshednik Member Posts: 2,005
    dynamik wrote:
    I love how you make me buy the book so we can work through it together, and then you decide to get everyone's opinions on it a month later icon_lol.gif

    I like it a lot. I've done enough programming, and I really like that they just dive in. I'll probably slow down once I get to the more advanced topics.

    Oh, and that other book you made get still scares the hell out of me. That's going to be collecting dust for awhile, methinks.

    Oh of course I really twisted your arm on it...I said he you should get these books...20 second later...meh they were cheap i got them. yeaaaa :D
  • JDMurrayJDMurray Admin Posts: 13,089 Admin
    dynamik wrote:
    Oh, and that other book you made get still scares the hell out of me. That's going to be collecting dust for awhile, methinks.
    This like the 3rd programming book I ever bought. It's a timeless classic, but there are probably better for learning UNIX-based sockets programming.
    shednik wrote:
    I was told that book is the best to go with since the creators of C wrote it.
    They wrote it a looooong time ago and for a very academic audience. Just because the inventors of something wrote a book about their invention doesn't mean it's the best possible book to learn from. I'll see if I can find a 2nd ed copy of K&R in a local bookstore and let you now what I think.
Sign In or Register to comment.