So originally I learned Java but then, after downloading Visual Studio 2005 and seeing how it (truly) is the best IDE ever, I said fuck this, why use Java; C# is 90% the same and has a better IDE.
C# code is easier to work with than Java. One glaring example is ArrayLists. Last I checked you could not create an array in Java without specifying the size, so you have to use Vectors or ArrayLists (or hashes, I heard, but I've actually never worked with them yet).
So where in C# I can do:
ArrayList nonsense = new ArrayList();
nonsense.Add("Cheesecake");
nonsense.Add(2);
String food = nonsense[0].ToString();
int number = nonsense[1];
This is perfectly valid. Java on the other hand returns just plain Objects, no matter what type you added. I can do nonsense.toString(); in Java to return a string, but I actually can't get an int back without a lot of tacky code (I have to turn the Object into a string, parse the string as an integer). So when I create an ArrayList, I have to specify what values I'm adding to it:
ArrayList<Integer> nonsense = new Arraylist<Integer>();
nonsense.add(4);
nonsense.add(8);
int numberA = nonsense.get(0);
int numberB = nonsense.get(1);
So long, versatility. Is it tacky enough yet? Not nearly enough! In C# I could:
foreach (nonsensery in nonsense) {
//do something
}
I cannot do this in Java (well, not as easily) because it is gay. I have to use regular old for() loops.
Also, creating Windows forms is 1000x easier than Java's Swing. I have a massive book on Swing; I haven't even read it because Swing is too intricate to try to just memorize. You'd think intricacy would be a good thing, but in Java it just seems to be useless. It's almost like it started as something simple and people kept slapping things onto it, making it bulky and hard to work with.
The one reason I probably won't ever use C# again is because it claims to be platform independent but is only so in theory, and because you have to have the .NET framework installed to run shit. This makes it difficult to let other people use your programs, especially since .NET is just an optional download on Windows Update. A lot of people don't have the .NET framework installed, and NO ONE wants to have to work to install something. This is as bad when VB programs wouldn't run out of the box and you had to download a dozen gay little files and put them in your Windows/System directory to even run shit people coded in VB.
Java programs require a virtual machine, yeah, but most people have one installed just becuase they need it at some point while browsing the internet.
The truth is I actually like the way C# works and the way it reads, and Visual Studio made it really fun to code with it. If it would just compile to a standalone .exe, I'd be hapy.
I've thought, at this point, of just going the C++ route. I have every intention to learn C++ eventually, I actually started with C++ when I was about 13 but couldn't quite get my head around it at that age.
Name:
Anonymous2006-02-20 16:28
Great, you've learned your second language. u r leet haxxor.
You obviously have no fucking clue about Java; I agree it's a shit language but most of the reasons you gave are invalid and incorrect.
Name:
Anonymous2006-02-20 17:12
Last I checked you could not create an array in Java without specifying the size,
String[] hello = new String[5];
Java on the other hand returns just plain Objects, no matter what type you added
I cannot do this in Java (well, not as easily)
Fixed in 1.5
Name:
Anonymous2006-02-20 17:42 (sage)
Yep entirely pointless thread. Java has ArrayLists that work in an almost identical manner.
Name:
Anonymous2006-02-20 21:27
>>2
Such as...? You say that like there's a set number of reasons why I can or can't dislike a certain language, I was just spouting off the difficulties I ran into while rewriting something I wrote in C# in Java.
ArrayList<String> s = new ArraList<String>(); So say my books at least.
I don't really like it, but es geht.
>>6
What is this "leet haxxor" branding? I claim to have practiced a language like Java and C#, and I get parodied as a leet haxxor. That shit doesn't even make sense. If anyone here is playing the role of "leet haxxor" (fuck, I haven't even heard anyone SAY that in like FIVE YEARS, you lose cool points just for thinking it), it would have to be you.
Name:
Anonymous2006-02-24 6:01
Awwwww. >>8 took an internet forum post personally. Isn't that cute? What a sweetie.
Name:
Anonymous2006-02-24 7:15
>>1
I'd say .NET is very much platform independant, and it will be moreso when that new stupid Windows hits the streets.
Name:
Anonymous2006-02-24 7:34
>>10
A car can be any colour you want, so long as it's black.
Name:
Anonymous2006-02-24 8:14
>>11
Don't know about you, but every program I write runs on Windows and Linux without modifications.
>>13
NO U... oh wait you are right. But still, unless you use pinvoke calls, there is very little chance of the program not working on both platforms.
Name:
Anonymous2006-02-25 1:23 (sage)
Wow, a debate between 2 of the crappiest languages in widespread use. They're both ripped off languages anyway. That's what you get when you try to create a language based upon the advantages of other languages without reason. Languages should be designed with specific goals in mind and as a response to issues that require unique solutions. C# & Java don't provide lean solutions like this. So as far as I am concerned(and anyone else who's worth their weight in code), neither language is going to produce anything that's ever remotely of decent use or interest.
>>17
Java was designed with a specific goal in mind - embedded systems. Unfortunately it missed the mark by a lot (what embedded system has 200MB of memory for the fucking JRE?)
C# was designed with the specific goal of making a version of Java that isn't as slow as fuck. At least I hope that's what the goal is, since that's what it became.
Name:
Anonymous2006-02-26 0:28
>>19
Yeah, I heard the lead designer of C# talk about the design goals. They were basically Java without the suck.
Name:
Anonymous2006-02-26 3:09
Wow, the shit just pours down like some kind of shitty shitstorm.
Name:
Anonymous2006-02-27 4:13
>>20
Java without the suck? Then you end up with a null language.
Name:
Anonymous2006-02-28 17:01
Hay guyz, I can't program worth shit like the most of you people, but I want to belong with the "in crowd", can you please tell me what programming languages I have to like and which ones I should hate?
Kthanxbye!
Name:
Anonymous2006-02-28 18:07
>>23
I sympathise with this post but Java sucks from an objective point of view. You don't have to hate it to be part of the crowd; you hate it naturally, whether you're in or out.
Name:
Anonymous2006-02-28 18:18
>>23
It depends on your personality. Useless academic? LISP is for you. Mac user or jap fag? Ruby is it. Etc..
Name:
Anonymous2006-02-28 18:32
how do i learned java in 3 days
someone recommend a book, all i know is some perl
Name:
Anonymous2006-02-28 23:28
>>19
it's called j2me~ and people that have to cross compile and mod their shit on solaris/x86, windows/linux will really appreciate the use of java.
programming is a trade skill. robust and fault tolerant app. development is an engineering feat.
Name:
Anonymous2006-03-01 1:36
robust and fault tolerant app
Then why are you using Java?
Name:
Anonymous2006-03-01 1:57
>>24
>but Java sucks from an objective point of view
why not? irregardless of the type of hardware failures may occur. so why not java? stability is independent of programming language.
Name:
Anonymous2006-03-01 3:24
>>30
I see from your use of the word "irregardless" that you are not worth talking to.
Name:
Anonymous2006-03-01 3:48
>>30
It is, as long as you've been developing and testing your application with the destination hardware and virtual machine, because Java is so portable it won't work well otherwise.
hmm.
I have programmed in most of the languages that have been around in the last 15 years, including some in-house garbage ones, and the reasons you hate Java make absolutely no sense.
Firstly you should hate Java because it ALLOWS primitive types, thus breaking the object oriented rationale.
This flaw leads to the kind of sloppy thinking, and programming, where you believe that diversely typed objects should reside in the same array!
What you are advocating is dangerous and stupid, and something that should be taught in OOP 101.
The way that C# ArrayLists work are identical, under-the-hood, to Java ArrayLists. It is just that the extra code you as a programmer have to write in Java is automatically generated by the C# compiler. You do not store an actual primative in the C# array, but its corresponding wrapper class.
All that aside, what you seem to want is an object oriented way of handling sequential programming like data constructs.
In OOP instead of using arrays and collections of diverse types you create composite classes that contain all the data you want to store. [And any methods you want to perform on said data].
A good, and simple, design pattern for this kind of construct is the ValueObject from Design Patterns by the GoF. [A book you desperately need to read if you intend to keep programming in an OOP language, even though the language used by this book is rather arcane.]
Also the performance issues and, ahem, gayness of Java have been all but solved in 1.5. [Most of the performance issues were solved back in 1.4.2, but what the hey]
I make my living developing Enterprise Solutions in Java [which sucks big time until J2EE 1.5 finally rolls-out! Bloody EJB inteface soup!] but I am a Python and PHP hacker in my spare time.
I would recommend you have a good look at Python as a language for you.
You obviously don't 'get' OOP methodology and the flexibility and rapid development environment of Python might just suit your personality.
I've had to put up with teammates naming their classes in Indian and not using the capitalization rules properly for anything either. Another guy used to put every single thing in one method...
i'm a tutor for both c/java course. yes you should. not only we are all self-absorbed individuals, we can hardly work in a group. and we wear glasses and r nerds. quit now!
Don't worry these people are idiots on 4chan who don't actually program for a living and know very little about the subject. They only want to sound impressive. The programmers I've worked with are some of the nicest people I know, (since jerks who argue on forums about things like "java is slow it sux0rs, scheme is 1337," would never do well at an interview.)
Name:
Anonymous2006-03-05 22:12 (sage)
>>51
You're on 4chan too. I suppose that means you're also an idiot who doesn't program for a living?
PS. Learn grammar before calling others idiots. Talk about lowered expectations.
Name:
Anonymous2006-03-06 6:15
"java is slow it sux0rs, scheme is 1337,"
That's what your boss will be saying. Except he will be rooting for VB or some useless crap.
If not... well, you are lucky. I'll kill you.
Name:
Anonymous2006-03-06 11:48
>>51
Good interview technique is a highly desirable attribute for a programmer amirite.
Absolutely. It's extremely useful when dealing with customers to determine the scope of a problem, solution, and subsequent feedback meetings.
Interview technique is the most basic embodiment of two things that are necessary for all high quality customer interaction-- Professionalism and Personability.
Name:
Anonymous2006-03-09 3:24
>>55
Hahaha customer interaction. Tell you what, you can go and interact, I'll stay here and hack some code.
Any non-trivial program involves working with others: acquiring and clarifying requirements, coordinating development, receiving feedback, yadda, yadda.
The only time that won't apply is if you're stuck in a basement coding toys.
Name:
Anonymous2006-03-09 4:22
>>57
May I ask if you code for a living, or if you're just repeating what your software engineering professor told you? Because I do it for a living, so I think I know what the job entails.
Name:
Anonymous2006-03-09 6:57
>>58
Penis waving are we? Well, yes, I earn my daily bread this way too. Happy?
What kind of development are you doing that you have no contact with others? You can't be working in a team, but you can't be a contractor either. Developers need to be able to communicate, period.
Are you working in a some kid of vacuum? A prima-donna in a research position? Or what? I can't fathom how you'd function otherwise.
Name:
Anonymous2006-03-09 9:05
>>59
Not penis waving, but there are an awful lot of people around here who aren't actually programmers, but enjoy having in-depth discussions about what programming is.
Of course I work as part of a team. Sometimes I even talk to my colleagues. I don't talk to customers however.
Name:
Anonymous2006-03-09 15:10
>>56
Sure, go ahead and build the stool instead of the ladder that was required.
Name:
Anonymous2006-03-09 15:15 (sage)
>>55
Except, this only works if you don't have complete idiots for managers...
Name:
Anonymous2006-03-12 11:30
>>60
Yeah, talking to customers is the pits. We actually have one guy just for that, but he needs to be disciplined every now and then so he doesn't promise the moon from the sky.
Name:
Anonymous2006-03-21 20:18
this thread shoudl jsut die. the original poster should quit computer science or whatever he's doing that's associated with /prog/.
the work force dont need you.
Name:
Anonymous2006-03-22 7:19
This shit still going on? Let's fix this thread once for all: