Register | Login | |||||
Main
| Memberlist
| Active users
| Calendar
| Chat
| Online users Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album |
| |
0 users currently in Programming. |
User | Post |
Simon Belmont Posts: 1772/1773 |
Originally posted by Kasumi-Astra fanboyism reaches everywhere, so I'd hardly consider that a reason to hate something; because of fanboys, if there is a brand name, there is someone who swears by it. This thread was definitely an interesting read, though. I would've partaken more in the discussion but I don't think I really deserve too with my limited knowledge. |
HyperHacker Posts: 5068/5072 |
Originally posted by never-obsoleteWhat stupid compiler are you using? Originally posted by Simon Belmont A fun idea, but he'd probably lose points for not making readable/maintainable code or blah blah. |
Kasumi-Astra Posts: 254/258 |
Oh, he's elitest all right- but I tend to notice people who like Java are like people who like using Perl, C or even Linux- they absolutely swear by it and little else. Maybe that's just programmers in general, but I find certain languages tend to experience fanboyism more than others, and Java and C++ are the worst |
Simon Belmont Posts: 1767/1773 |
Originally posted by Kasumi-Astra That sounds more like elitism than teaching: most people learn best from their mistakes, syntax and spelling errors would be caught by the compiler anyways, you should've made every variable and class giberrish names just to piss him off :p |
Jagori Posts: 155/155 |
Originally posted by never-obsolete You've got your example backwards. The problem comes when the second number being compared is out of range of the first. If the second number falls in the range of the first, you're fine, even if the ranges aren't the same - something #1 will be executed in your example. This, on the other hand, will cause problems:
|
Kasumi-Astra Posts: 249/258 |
What makes people hate Java (and I swear this is true) is the people that love Java. My Java lecturer two years ago used to watch over our shoulders, pointing flaws in logic, syntax and I shit you not, spelling. I've never met a more anal teacher in my life
Some of my friends who like Java are turning out just like him as well. We've just finished with C#, Visual Studio and .NET in our Applications, Architectures and Frameworks module. We're switching to Java Enterprise Edition, Tomcat and Netbeans for the rest of the semester. It feels so good to just be able to boot up and download the whole thing from Sun for free, run it on our own machines, and know that there's a ton of support out there as well. Personally, I feel safer in that respect with Java. Then again, I prefer to do web applications the simple, old fasioned way with PHP more than anything else |
never-obsolete Posts: 79/79 |
Originally posted by Ailure the f it complicates things and is error prone so they chose to leave it out. in C:
var1 gets converted to an unsigned int when compared with 10 (another unsigned int) and thus #2 would get executed. not #1 as expected. edit: I confused myself with all this sign nonsense |
Ailure Posts: 2582/2602 |
Originally posted by Guy PerfectJava can use C code, so anything you can do with C... but of course, portability can't be guaranteed. I hadn't really looked into native classes much to be honest. Also, This might be a informant read. There seems to be allot of misunderstandings here about Java in general, even if some people do make good points. Most people complain about Java being slow because of the boot time of the Java VM. It's like saying Word is slow when you include the booting time, and as soon the Java VM is started it goes pretty smooth. :/ Oh yeah, Java does have pointers. It's just not easily controlled by the user just. My biggest complaints about Java isn't performance related, but rather things like... why isn't there any unsigned types? :/ And then we have the lack of some basic things, such as lack of proper enums... and the enums class doesn't count as it's done in a awkward way, though there's a way to simulate enums by typing something like... public static final int ONE = 1; And so on... And Java is generally bad at stuff that is generally better done at low-level, such as emulation. Also neotransotaku have a point. Java is very popular amongst businesses, mostly because of it's portability and level of abstraction. Hyperhacker: Time to get a new computer. Even on my laptop or old computer, it still only takes a few seconds for a typical hello world application to start (which would be a good way to measure the time it takes for a VM to satrt). And thoose are equilant to computers for five years ago... |
Guy Perfect Posts: 451/451 |
Originally posted by FreeDOS +Very funny. You could make the argument that any programming language could call an arbitrary shell command, but that certainly does not count as a capability of the language itself. |
Drag Posts: 81/85 |
I don't like how everything *NEEDS* to be a class. I also don't like how it tends to be slow. I also dislike the lack of pointers. The garbage collection is useful, but still, it's something you don't have complete control over. That, and my first high-level language was C++, so I guess I have a bias towards it. |
FreeDOS + Posts: 1289/1312 |
Read /dev/bios or /dev/cdrom. btw, you never said that you were restricted to a certain operating system, so this counts. |
Guy Perfect Posts: 450/451 |
You forgot about the "etc." FreeDOS. Show me a JAVA program that can access the BIOS firmware or read raw CD data. |
HyperHacker Posts: 5039/5072 |
Originally posted by MathOnNapkins With great power comes great responsibility. A language with pointers versus one without them is like a motorcycle versus a bike - you can do things much faster with pointers, and some things you can't do without them (comparing to a bike: chasing a car, towing a big load), but it's more difficult to use properly, and screwing up causes much bigger problems. Now, an interpreted language like Java is like riding a bike, except it's really a stationary bike being dragged along by some guy. |
FreeDOS + Posts: 1285/1312 |
Originally posted by Guy Perfect Yes it can |
Guy Perfect Posts: 449/451 |
To me, OS's are made with their own executable specifications and it's somewhat of an insult to download a virtual machine to run software. The pinnacle of hypocrisy here is Microsoft, who makes an OS and makes you download a virtual machine to run software on it. Either way, Java and .NET get my thumbs down for that reason.
Also mentioned is the processing overhead. When I write software, I want the most control over it as I can, without tearing out my hair. This is a personal preference, but a strong reason that I have chosen C as my language of choice. Not C++, as that is not C but is in fact a different language. (Pet peeve. Sorry. To me, "C/C++" is means for a chemical shower) I could use assembly, but that's restricted to a specific architecture any way you look at it. I could use Java or .NET, but they require oodles of overhead. I could use any variant of BASIC, but unless Full BASIC gets mainstream attention, all BASIC will ever amount to is proprietarianism. (Is that a word?) C, on the other hand, is standardized, time-tested, reliable, and generally the first language to be implemented on new architectures. Compilers are written for nearly every OS, it goes to the native executable format, etc. The same cannot be said for Java. |
MathOnNapkins Posts: 1101/1106 |
I'll give you that - memory errors in C/C++ are such a common and hard to debug problem that you almost have to create wrapper classes or structs to deal with it. I mean... so much can go wrong it's not funny. |
neotransotaku Posts: 1858/1860 |
HH, Azureus uses non-Sun GUI elements--this is why you have to update a bazillion things when you update Azureus
I feel Java is better suited for the business environment than the home environment. In industry, the object oriented nature of Java helps mitigate problems that arise in a multi-programmer environment of a company. This helps reduce the number of bugs that could potentially crop up, which is tremendous savings for companies as paying software developers is not cheap. A lot of what you have programmed MathOnNapkins seems you've done so yourself. As a result, you feel very restricted in what you can do and well, I do agree with you. C/C++ is a much more powerful language because you can do so much; but at the same time it does has it drawbacks which I believe are equally as bad as Java's. Closing up memory leaks in C/C++ is a pain and I have the backing of 200+ students who just experienced that this past weekend. Also, don't forget that Sun designed Java to make it more productive for the business environment, not the individual user. Many application-level programming is developed using OOD--find me a large company that develops application-level programs without OOD. Enforcing types allows better security (what was the last Java virus that made headlines?). Computers nowadays are so fast that the "performance hit" caused by using Java is made up for the security and productivity it brings. I do agree with MathOnNapkins that Java applets are horrible invention. |
FreeDOS + Posts: 1284/1312 |
Maybe, the Java VM only uses up like half a meg on my machine. The only downside is that it took like six hours to compile (stupid legal restrictions making it impossible for a binary package to exist for my OS) |
HyperHacker Posts: 5034/5072 |
Any Java app I run will use up at least 100MB of RAM and take at least 20 seconds to load. The Java runtime is 46.4MB without non-European fonts. It worms its way into every nook and cranny, running in the background at all times within other processes such as Windows Explorer and Firefox, so it can't be killed. No Java program I've yet used has a decent GUI; Azureus' is nice, but every time I use it it has to update 4 different things and each one requires restarting the program. Tile Molester's menus are a joke, and its file browser is a poor imitation of Windows' standard browser. Every other GUI I've seen in Java is just ugly and lacking basic functionality.
Maybe it's just the Windows port that sucks, but still, it sucks. With Windows being on 90% of computers, that's really not excuseable. |
MathOnNapkins Posts: 1099/1106 |
okay... so is it written in straight bytecode or wtf? I quite simply don't believe that.
Oh... another issue with java is memory management. While unused memory is automatically cleaned up for you, getting more memory is a bitch and a half. Last I checked I couldn't go over 10 megabytes of allocated memory without throwing an exception. The only solution I could find on the net was to run it with an extra command line option when you run the virtual machine. Seriously, what the hell is that shit. It should adapt to the machine it is running on and ask the operating system for more memory instead. GUI controls also tend to be unresponsive as hell, especially if you have a lot of them on the screen at once. They might have fixed this in the more recent versions, but last I checked it was still shitty. |
This is a long thread. Click here to view it. |