Slashdot Mirror


Java To Overtake C/C++ in 2002

jarek writes "ZDNET has an article that talks about latest research data. It talks about how Java is overtaking C/C++ next year. The article also talks about developers adopting linux and putting linux to use in mission critical tasks." It's evidently taking developers from the C/C++, but also the Visual Basic camps, with strong growth overseas.

9 of 605 comments (clear)

  1. Re:Java as a teaching language by roguerez · · Score: 5, Insightful

    In my university (vrije universiteit in Amsterdam) you get an introductory course in programming in Java, then a datastructures course in Java and a course in x86 assembly.

    Then, an introductory course in C/C++ is given and a software engineering course in Java w/ Swing follows. Then you get a large course in plain C, and depending on the direction of your studies, you'll get one or more large courses using C, C++, Prolog, Miranda, Java, or whatever is best suited for the job.

    I think the choice for Java for the introductory and software engineering stuff is great, because in these applications you don't want or need the low level stuff in which C is good.

    Furthermore Java looks relatively 'clean' and is suited well to learn imperative as well as OO concepts.

  2. The library base and more by Midnight+Thunder · · Score: 5, Insightful
    One thing that I appreciate with Java is the huge library base that it has. There are classes that allow you to do most things without having to hunt for a 3rd party solution or rewriting the wheel inhouse. Also, some of the most commonly used data structures are standard, eg Strings, and you don't need a separate proto-language to put together classes - yes I'm talking about having no need for STL.

    Java does have it draw-backs, such as speed, but this is quickly becoming a non issue on modern computers. Of course computationally intensive work will alway be done in C or C++ that can be compiled to take full advantage of the processor. Another draw-back is that it is very difficult to take full advantage of the underlying OS without writing code using JNI, and thus loosing some protability.

    Yes I am very much pro Java, though I also realise that it can't do everything. It will always be a question of the best tool for the job.

    --
    Jumpstart the tartan drive.
  3. Killer application effect by Pac · · Score: 4, Insightful

    A normal user will install Java for the same reason they will install Real, QuickTime, etc. To see some content, to use an application.

    Notice that those are all huge downloads.

    Also, some comercial software will simply ship the JRE and install it from CD.

  4. C vs C++/Java by Skapare · · Score: 4, Insightful

    There are two kinds of developments: those that need object oriented, and those that don't. If course the real distinction is always fuzzy. OO is not a universal method for everything, but it certainly proves its worth for a lot.

    That said, I think the difficulty people will have in understanding the shift to Java is because of the continuing confusion of referring to C/C++ together as if it were one language. C and C++ are not the same language for any practical consideration. Sure, you can write C and call it C++ and it will compile. But C++ is supposed to be something different than C, while giving you stuff C also has. But the distinction between the two kinds of developments mentioned above fall between C and C++. If you don't need OO for your project, then you write in C. Even if you compile it with a C++ compiler, it's still written as C.

    I believe that Java is taking more from C++ than it is taking from C simply because more and more of those kinds of projects (applications) that need OO, do not need the facilities of C. While C++ has good abstractions, it's always been too easy to do it wrong and code like C. Java doesn't let you do that (as easily).

    During the next economic boom cycle, more application projects will begin. Java will be more favored (if you believe all this, and I do). But that won't mean there will be a lot fewer things that need non-OO C ... there will just be a lot more new needs for which Java is an excellent choice. The thing is, those are projects that would not have been done in C anyway; they might have been done in C++ or one of those proprietary languages.

    For me, the biggest reason I stay with C programming, as opposed to going with C++ (for some, not all, since not all projects I do would benefit from OO at the coding level) is because C++ is C with the pluses. While some certainly see that as an advantage, I don't. I see C++ as some kind of hack and fear that what I might have coded in C++ would still be tainted with too much C-ism. It's not the OO part I'm worried about; it's the C part.

    I look forward to taking the plunge into Java. I'll skip C++. Some things will still be done in C. The big reason I have not done so before, or used some other strongly-OO language (like Smalltalk) is because the environments those languages work in have been too "academic". Look at the early hacks just to run Java programs to see what I am referring to. With advances like gcc support for the Java language (and Sun effectively losing pedantic control over it), I'll be able to fit a project developed in Java into a production environment more easily. These advances are shifting the line which determines whether a project benefits from using Java, and improves the margin in favor of OO where C++ wasn't enough to do it.

    In summary, Java will take some from C, more from C++, and it will do this mostly in all new large scale projects for which it is far better suited. The gains will be seen more in percentages, rather than in absolute numbers.

    --
    now we need to go OSS in diesel cars
  5. Re:Less Visual Basic Programmers by ackthpt · · Score: 5, Insightful
    We've had to adopt VB at work, and it's easy where problems will crop up and how weak documentation for a One Vendor product can be. When I visited Computer Literacy, in San Jose, I expected to see many texts on VB and related subjects. What blew me away was the plethora of Java texts. If the books didn't sell, they wouldn't have them.

    On a second thought, Java _was_ wildly popular among many of the dotbombs. Possibly the study is based too heavily on that time period. Does it still hold it's proportion of growth, or are IT shops, like us, drifting toward VB and other M$ development languages/suites?

    --

    A feeling of having made the same mistake before: Deja Foobar
  6. Re:True, to an certain extent by Khalid · · Score: 4, Insightful

    It's highly probable that the situation will remain the same for a long time if not for ever. You need to choose the right tool for the right task; and java will never be a system programming language, it has not been done for that. Java is a good application programming language, if you need to do optimised stuff, you will probably stay with C or sometimes C++

  7. Depends on your definition of "overtake".. by Bowie+J.+Poag · · Score: 5, Insightful



    The study cited in this article refers to the number of people with Java skills, not the number of programs released. To quote:

    "Java usage is even stronger outside North America, with almost 60 percent of developers expecting to spend some part of their programming time using Java."

    This is one of those misleading statistics, like "Half of all marriages end in divorce".. What most people fail to realize is that the statement is not factually concise.. There are idiot-men and idiot-women who get married and divorced several times, which accounts for a disproportionately high "overall" divorce rate. The percentage of successful marriages is actually much higher, just the same as the number of coders actively writing in C all the time is much higher than the number of coders actively writing in Java all the time.

    Lame article.

    --
    Bowie J. Poag

  8. Re:Really? by SheldonYoung · · Score: 4, Insightful

    You are correct. Fortunately, the vast majority of software development isn't about ultra-high performance applications or systems programming. It's about making applications that solve a problem, and the problems are almost never about speed or being low-level.

  9. Gotta love that "research" by scott1853 · · Score: 4, Insightful

    Even when it doesn't actually show any true statistics, like how many people were surveyed, or any other minor factors like, did 60% of the people surveyed work at the same company!

    I'm sorry but I tend to like my "research" with some sort of graph, and something a little "meatier" that a single percentage bar.

    Going by Evans Data's "research" they might as well have used the results from a Slashdot poll.