PDA

View Full Version : Languages you know


Pages : 1 2 3 4 [5] 6

bugmeplz
09-08-07, 12:14 AM
The bottom line is JAVA sucks...but don't get me wrong...it's good to know it. It's just my opinion.


please, do enlighten me on why java sucks? i realize its just your opinion, but what are your reasons?

six_storm
09-08-07, 06:41 PM
Java is great I think, I don't see any problems/flaws/issues with it. Same thing for C++.

wnd
09-08-07, 08:38 PM
Yeah Java sucks. Java is only good for security-aware applications such as e-commerce, if you want your application to be runnable on virtually any modern platform without having to recompile or port it - with near-native performance, of if you just don't want to worry about memory management or low-level exception handling. :-)

IMO C++, on the other hand, is a bit different player. It brings the horror of object constructors and destructors, written in messy C-like syntax which happily lets you to seriously hurt yourself. Basically, I think, C++ combines the worst of OO and C, creating something really unique.

Personally I have good relationship with Java. I won't touch it, and Java keeps out of my eyes. See, I'm not fully OO-compatible yet, but I'm working my way there. I prefer languages such as C, but having to work with GTK+ and GLib have made me realise that objects are actually quite useful -- in certain places. (And I know, GLib doesn't provide real objects.)

gmontem
09-12-07, 01:05 PM
I do programming for living, and i would recommend Visual Studio 2005. Sometimes I have to jump from mainframe (COBOL) to VS 2005 and back, it makes you think...:)
Have you used VS 2003 in your professional projects and had to migrate them to VS 2005? If so, have you encountered any problems along the way?

AndyS
09-12-07, 06:38 PM
Have you used VS 2003 in your professional projects and had to migrate them to VS 2005? If so, have you encountered any problems along the way?
In my work, we were migrating our whole application (about 200 separate projects) from 2003 to 2005 recently and it went quite well. The only "problem" is that the VS 2005 is using a newer compiler which performs some better run-time checks and therefore the application was initially more unstable than when it was compiled in 2003 :) . We discovered a lot of bugs thanks to this :).

But seriously... problems with this migration are nothing in comparison with the VS 6.0 -> VS 2003 migration..

Clay
09-12-07, 07:14 PM
But seriously... problems with this migration are nothing in comparison with the VS 6.0 -> VS 2003 migration..I'll second that. I don't do any WinForms dev, mostly ASP.NET and some Windows Services or Console. It really paid to wait for VS2005 while Microsoft listened to developers and went back to the Web Project model by baking that into SP1. We just recently went to VS2005 from VS2003 where I work.

I'm really liking what I see with VS 2008 though,...sounds like it is still on track to be released this coming February.

bugmeplz
09-14-07, 11:34 AM
... or low-level exception handling. :-)

IMO C++, on the other hand, is a bit different player. It brings the horror of object constructors [b]and[/b) destructors, written in messy C-like syntax which happily lets you to seriously hurt yourself. Basically, I think, C++ combines the worst of OO and C, creating something really unique.



true, java does not force *low-level* exception handling since it is quite a high level language, but some people get annoyed with java's checked exception scheme.

there is nothing horrific about constructors (java has 'em as well you know), or destructors (i wish java had 'em instead of the awful Finalize() which does not work most of the time)

Monolyth
09-14-07, 11:45 AM
But seriously... problems with this migration are nothing in comparison with the VS 6.0 -> VS 2003 migration..

I hear ya there, I've done several VB 6.0 to 2002/3/5 and it sucked. Had to completely rewrite the apps. 2008 is looking very nice though, if MS continues taking all these great ideas and placing it into the framework, the job of developing apps will be that much faster, and you focus more on advanced features then grunt code jockeying.

mcolbourn
09-14-07, 12:00 PM
I am going to embarrass myself now the only two I know are:

Qbasic
Foxpro

:o :o :o

superklye
09-15-07, 07:54 PM
please, do enlighten me on why java sucks? i realize its just your opinion, but what are your reasons?
Ridiculous bloat.

bugmeplz
09-16-07, 12:09 AM
Ridiculous bloat.

define "bloat"?

buffbiff21
09-17-07, 11:46 PM
define "bloat"?

Every conceivable resource hog.

Greeno
09-18-07, 04:39 AM
Where's the french from?

My parents live in France :/

nekrosoft13
09-18-07, 12:31 PM
I know English and Polish

bugmeplz
09-20-07, 01:17 AM
Every conceivable resource hog.

So, you do not have the JRE installed? Is that correct? (In other words, what you are talking about is Sun's Java VM - which is only one component of the language platform and nearly everyone has it installed and running - "bloat" and all.)

DaveW
09-24-07, 04:29 PM
Java has been a painful experience for me, but thats mostly due to the earlier versions of Tomcat and Axis I had to work with and not the language itself.

BTW I think the Java redistributable is smaller than the .NET one.

jcrox
09-25-07, 04:45 PM
My teachers say that COBOL is still being used like crazy . . . :(

My school dropped the programmer/analysis degree siting no one has much interest in COBOL anymore.

This semester I have:
Advanced Java: Servlets and JavaServer Pages
Advanced VB.NET
Advanced Web Development: XML w/css & xsl, JavaScript, AJAX

I like Java so far but it really does seem that (what we've learned so far anyway) everything we've done in Java we can do in VB.NET and do it faster and easier. Doesn't help that the person running the Java program is a tard and keeps giving us project and exercise instructions that are written wrong and example code that doesn't compile.

rhink
09-25-07, 08:17 PM
Every conceivable resource hog.

A lot of the perceived bloat comes from craptacular GUI API's like swing. And memory usage isn't a huge deal anyways, unless you're in an embedded environment, how much does another gig of ram cost anyways?

It's certainly possible to write Java applications that aren't massive memory hogs... some of it comes from lazy programming style, people that are unfamiliar with pointers (and everything in java is a damn pointer, except primitives) and memory management (they like to tell you java takes care of this itself, but that sort of thinking breeds memory leaks because you figure the GC has it and you don't null pointers when you're done with them so the GC can clean them up, or never free up a listener, crap like that).

rhink
09-25-07, 08:20 PM
I like Java so far but it really does seem that (what we've learned so far anyway) everything we've done in Java we can do in VB.NET and do it faster and easier. Doesn't help that the person running the Java program is a tard and keeps giving us project and exercise instructions that are written wrong and example code that doesn't compile.

Yeah, but .NET means you're forever tied to a Microsoft platform. Yeah, Java ties you to sun, too, heh... but at least that gives you a lot more options on platform and hardware... I guess if you really want to be platform agnostic, you should probably just use a compiled language and build abstraction layers around any system API references and be prepared to recompile. There are some things about .NET that are pretty slick, the concept of compiling every language down to the same intermediate language is nifty.

uOpt
09-26-07, 05:41 PM
A lot of the perceived bloat comes from craptacular GUI API's like swing. And memory usage isn't a huge deal anyways, unless you're in an embedded environment, how much does another gig of ram cost anyways?



And I put in the 5th gig of RAM into my socket 939 box or the 9th GB of RAM into my socket 775 box - how?



It's certainly possible to write Java applications that aren't massive memory hogs... some of it comes from lazy programming style, people that are unfamiliar with pointers (and everything in java is a damn pointer, except primitives) and memory management (they like to tell you java takes care of this itself, but that sort of thinking breeds memory leaks because you figure the GC has it and you don't null pointers when you're done with them so the GC can clean them up, or never free up a listener, crap like that).

Sure, but the problem is that many Java libraries, and not only Swing and not only GUI libraries feel free to breathe a whole lot and waste memory on a grand scale. Then there's the JVM coming in on top and doing JIT which isn't exactly stealthy either.

Also, down to the metal - Java does not have arrays of instances of your user-defined structs. So if you want that you can either take the hit (and the hit can be big on a 64 bit system because the pointer in the array is 64 bits when the fields in your data structure might only be 32 combined).

Or you take the abstraction hit and open-code, use arrays of base data types instead of compound own data structures. That's what most of these useless language benchmarks do that end up showing Java is on par with C++. But in practice this is a nightmare. Worst of all, since Java have neither a macro system nor real generic programming you have no syntactic method at all to hide some of these optimizations.

So in practice people just take the memory hit, along with the pointer indirection hit. And Java programs are slow, only language benchmarks are fast for Java.

rhink
09-26-07, 11:38 PM
I'm not going to dispute that there are a lot of applications for which Java is nto appropriate. However, I will dispute that Java applications have to be slow. I've spent quite a bit of time at my current job proving otherwise.

A lot of people are concerned with what they've heard about Java and think the performance of the VM and garbage collection is a risk... but what I've found is that actual execution performance of Java is rarely the bottleneck. One reason for Java's perceived slowness is again, Swing... and it's lack of desktop hardware acceleration support. It's more likely to be I/O, poor memory management (again, a lot of Java developers think you can ignore this, which often results in bloated, leaky, nasty code), or poor selection of algorithms... though I suppose any of these can vary based on your app's profile. Garbage collection is much less of an issue than it used to be, too, though there's still room for improvement.

All things considered, I'd prefer C++ for most projects (mostly b/c it gives the programmer more control, and I hate Java's attempts to hide pointers from you), but that doesn't mean Java doesn't have uses.

bugmeplz
09-27-07, 12:58 AM
@ rhink: .net does not tie you to just the Windows platform - check out the Mono project.

Also, I agree with you about Java *programmers* being the problem, and not the language. For some reason, Java progrogrammers do not seem to be nearly as concerned about performance as C progeammers (I think it is generally because of the types of applications made in Java versus C).

Finally, I personally do not see a problem with Java lacking pointers (at the programmer view), but if you need them, check out C#.

nemecb
09-27-07, 10:13 PM
@ rhink: .net does not tie you to just the Windows platform - check out the Mono project.
There is no way I would trust anything cross-platform to a language Microsoft controls. They have way too much incentive to tie you to their platform, and even if they're tolerating Mono now that doesn't mean they won't sue them into oblivion at some point (or even more likely find some technical method of making things difficult for other platforms).

rhink
09-28-07, 12:57 AM
Didn't know about mono, looks pretty cool, but I'd have some serious reservations about trusting it for anything very important. It seems like more of a way to give pre-existing .NET apps more platform flexibility than a reason to use .NET to develop for non-MS platforms.

Banko
10-17-07, 06:10 PM
Didn't know about mono, looks pretty cool, but I'd have some serious reservations about trusting it for anything very important. It seems like more of a way to give pre-existing .NET apps more platform flexibility than a reason to use .NET to develop for non-MS platforms.
Well all the new Gnome stuff will be done in c# using mono and gtk#.