When should I use C++, Java, or Python ?

When should I use C, Java, or Python ?

When should I use C, Java, or Python ? Python, Java and C++ area unit all generic programming languages, thus there’s plenty of overlap wherever over one among them could be a sensible choiceas an example will each Java and C++ be an honest alternative for embedded systems (depending on the details) and therefore the same will be aforementioned for C++ and Python once it involves desktop applications (once once morelooking on details).

But there are some clear-cut cases where one of them clearly should be chosen instead of the other two:

Python – tiny and mid-sized applications wherever short development time and simple modification is a lot of valuable than raw performance.
Custom created desktop applications for internal use in an exceedingly organization, wherever you have got a restricted range of users and management the preparation of the package.
Scientific applications because of massive support from the scientific community, with several accessible modules.

Java – Heavy server applications. Mission critical server-side applications.

C++ – operative Systems, Databases and different necessary building blocks in a very package stack.
Anything wherever raw performance or shut integration with hardware or software system is vital.

Heavy desktop applications (office suites, web browsers, 3D-modelling and 2D-graphics software etc).

These are of course my personal conclusions, but they are based on more than 20 years of software development on small and large code bases (500k+ lines of code) for server and desktop.

Generally, the choices above comes down to the following strengths and weaknesses of the three languages in question:

Python – Quick to get something started. Low learning threshold. Good enough for production code in most cases. Not so good performance.

Java – Structured and clean. Scales well to massive comessmart performance once given enough spatial relationsimply deployable on completely different architectures. smart fault tolerance (bounds checking, exception handling, garbage collection).

C++ – Best performance. solely language wherever you’ll work each with high-level constructs and low-level calibration. Scales well to giant comesterribly flexible to specific conditions. easy accessibility to any or all system calls and libraries. tougher to be told and to stay code and structure clean. Longer and additional punishing development cycles. Lousy fault tolerance, in depth testing required.

27 replies
  1. Tracee Gorter
    Tracee Gorter says:

    Hi there. I found your web site via Google while looking for a comparable topic, your web site came up. It looks good. I have bookmarked it in my google bookmarks to visit then.

  2. Paisley
    Paisley says:

    If some one wishes to be updated with most up-to-date technologies then he
    must be pay a quick visit this website and
    be up to date all the time.

  3. Marina
    Marina says:

    Hey very nice web site!! Man .. Beautiful .. Wonderful ..
    I’ll bookmark your blog and take the feeds additionally?
    I am satisfied to search out a lot of useful info here within the publish, we need develop extra strategies
    in this regard, thanks for sharing. . . . . .

  4. Keturah Sorrells
    Keturah Sorrells says:

    Thanks for your marvelous posting! I seriously enjoyed reading it, you might be a great author.I will be sure to bookmark your blog and will often come back sometime soon. I want to encourage you to continue your great work, have a nice day!

  5. Lailah
    Lailah says:

    This design is incredible! You obviously know how to keep a reader entertained.
    Between your wit and your videos, I was almost moved to start my own blog (well, almost…HaHa!) Wonderful job.
    I really enjoyed what you had to say, and more than that, how you presented it.
    Too cool!

  6. Brilliance sf
    Brilliance sf says:

    My spouse and I stumbled over here different web page and thought I might check things
    out. I like what I see so now i’m following you.
    Look forward to checking out your web page again.


Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *