Java or C++ - read on

Discussion in 'OT Technology' started by lately, Dec 7, 2007.

  1. lately

    lately bastard OT Supporter

    Joined:
    Jun 22, 2005
    Messages:
    764
    Likes Received:
    0
    Location:
    DENVER
    I'm currently learning c++. ultimately, I want to be able to design programs that will assist me with my work. Am I doing the right thing by learning c++ or should I go the Java route?

    Thank you
     
  2. babygodzilla

    babygodzilla I love rice

    Joined:
    Nov 5, 2001
    Messages:
    3,108
    Likes Received:
    0
    your goal is so broad. what do you mean design programs that will assist you with your work? aside from games, most programs will assist somebody in some way, otherwise it's useless.

    what kind of work are you doing? how do you expect a program to help you? have you Googled for what you want? chances are someone else has already made what you need.

    and learn C++ first, and then Java. although, that is not to say C++ is better than Java. that depends a lot on your needs, and taste.
     
  3. whup

    whup I wish you had children and.. so that I could step

    Joined:
    Feb 12, 2007
    Messages:
    1,603
    Likes Received:
    0
    Go with Java or C#. Both languages are great and are always being improved, have great tools and community support, and you can do nigh on anything with both (web, desktop, graphics/games) and run them on a multitude of platforms.

    Learning C++ will give you a good strong technical grounding in programming, especially if you also dabble a bit in assembly, but I think you'll find you won't be using it unless you're in a specialized role such as low-level programming.
     
  4. br0wer

    br0wer New Member

    Joined:
    Nov 29, 2007
    Messages:
    66
    Likes Received:
    0
    I learned C++ first, then easily taught myself Java. Learning C++ will force you to learn some of the more tedious aspects of programming (memory management, garbage collection), things that Java either handles for you or makes a lot easier. For example, C++ allows you to use pointers and Java does not. C++ will let you overflow a buffer (Buffer Overflow + NOOP Sled FTW), and Java will just error out.

    C++ = compiled, platform dependent, object-oriented, more difficult to learn, good for game development with OpenGL


    Java = interpreted, platform independent (on JRE), object-oriented (no multiple inheritance, just interfaces), nice for desktop apps


    Good luck
     
  5. antiyou

    antiyou OT Supporter

    Joined:
    Jul 13, 2005
    Messages:
    25,295
    Likes Received:
    0
    Location:
    in ur base
    :ugh:

    wow
     
  6. lately

    lately bastard OT Supporter

    Joined:
    Jun 22, 2005
    Messages:
    764
    Likes Received:
    0
    Location:
    DENVER
    OK, to be more specific, one example is running simulations on time series data.

    Seems like I'm not heading down wrong path by learning c++. thanks guys
     
  7. antiyou

    antiyou OT Supporter

    Joined:
    Jul 13, 2005
    Messages:
    25,295
    Likes Received:
    0
    Location:
    in ur base
    no c++ is a good idea you're getting insight from the wrong people here.
     
  8. Dnepr

    Dnepr Guest

    It doesnt matter which language you choose, you can implement anything in C++ that you can in JAVA and vice versa.


    The difference comes from how hard it is to implement something in one versus the other and how fast will it run...

    Simulations on time series data hmn...
     
  9. Peyomp

    Peyomp New Member

    Joined:
    Jan 11, 2002
    Messages:
    14,017
    Likes Received:
    0
    If you don't find the many minutiae of C++ daunting, then by all means continue. Learning to manage memory and use pointers is a good thing if it doesn't slow you up too much.

    I work with time series data a lot, but most of my crunching is done in SQL so the language doesn't really matter.
     
  10. BuddieBrown

    BuddieBrown New Member

    Joined:
    Nov 30, 2007
    Messages:
    3
    Likes Received:
    0
    C++ is a good language to learn programming in But after you begin to learn You want to learn another language to enhance your knowledge
     
  11. wizziebaldwin

    wizziebaldwin New Member

    Joined:
    Nov 30, 2007
    Messages:
    60
    Likes Received:
    0
    Designing Programs

    Designing programs is NOT dependent upon any specific language. In the end, no matter what higher level language (above Assembler) you use it still gets converted to machine language.

    Higher Level Languages provide various tools and paradigms. The decision to be completely Object Oriented vs. Procedural is something that the designer decides and then picks the suitable language / dev environment to complete the task.

    Back when I first started programming in '77 you had to be EXTREEEEEEEEEMLY conscious of memory management. Early machines just did not have the memory that exists today. Even in 1981 the ATT's:
    3B2/400
    Processor: WE32100, 10MHz (supports optional MAU) 1.1 MIPS
    Memory: Supports a maximum of 4 MB of RAM
    running UNIX System V Release 3 was a 32 bit machine with, by today's standards very little going for it. Yet it was a screamer back in its day.

    Programming mostly I C in those days with very large apps for their time. 200,000 plus lines of code you had to be aware of what you were doing.

    In the Microsoft environment it was even more difficult because those BOZO's were using the 20 bit Intel Chip and with Microsoft's poor OS (DOS at the time) with its horrible memory management you had to deal with compiled models (Tiny, Small, Medium, Large, and Huge) and you had to have procedures that were near and far.

    How Microsoft managed to get where they are today defies all logical thought.

    Crafting programs is an art that is all about creating a solution. You must first get a grip on how to break apart a complex problem into smaller discrete sections. "Eating an Elephant one bite at a time" so to speak.

    In today's world you can have a "program" that has local software running such as a Microsoft Access Database that communicates with a server written in PHP that populates an online MySQL database with a user interface that is on line.

    The design is what is most important. Try not to focus on Gee-wiz, "I can do this really cool stuff" kind of coding. An elegant design that is easy to upgrade, easy to maintain, easy to use and simple in its approach will always be something that is worth creating.

    When I taught Computer Science in college many years ago I wrote on the white board "Are we having fun yet?" five times. I then asked the students who were in the fourth week the semesters C class how many unique and different ways can you think of to write this program?

    One way? (all hands) Two ways? (about 70%) Three ways? (about 25%) Four ways (10%) Five??? … I cobbled a little over 130 different ways. The most outlandish and designated as the best for JOB SECURITY) had over 200 lines of code and used inter-process communication. The printout on a continuous sheet of perforated stretched the entire length of the hallway.

    The lesson was simple. There is no ONE way to write a good program. Many solutions are viable, but the ones that have merit are the ones that work and can be reworked if necessary.
     
  12. +(ll.ll)+

    +(ll.ll)+ New Member

    Joined:
    Jan 14, 2007
    Messages:
    14,072
    Likes Received:
    0

Share This Page