Talk:Java (programming language): Difference between revisions

Content deleted Content added
No edit summary
 
No edit summary
Line 1:
There's a paragraph regarding networking facilities that bridges the "platorm independent" goal and "networking libraries" goal. It's not a correct paragraph, but I don't know the best way to split it. Help, please...
LDC, overall I am happy with the changes you made. However, it is kind of implied that Java was created with the internet in mind. This didn't happen until about 4 years into development of the language that was then named Oak, so I'm not sure if this is a semantic issue or not...
 
-[[Alan D]]
 
 
 
I don't see the problem, if any. The only places those are mentioned together is where they are specifically mentioned as being the goals of the language, where "goals of the language" is the topic. --LDC
 
 
 
If you don't see a problem with it, then I'm happy.
 
-[[Alan D]]
 
 
Oh yeah, another thing. I was trying to avoid insinuating that java is objectively better to use, while emphasizing that it is certainly objectively better designed. Some C++ programmers might get pissy about a few little things we put in here, but I haven't figured out a good way to soften it yet.
 
What do you think?
-AD.
----
 
Some notes about the Java version history would be nice. An especially which version is included in which browser.
The Internet was not an original design goal, but networking in general was. You are correct that they realized that it would be useful on the web only after they saw Mosaic, but by that time the language already had networking features that they imagined using in consumer electronics like set-top boxes and other connected devices. And the Internet certainly became a major guiding force in its future design. Of course "small" was also an original design goal, and they seem to have abandoned that one...
 
Kwaku
 
I didn't want to get involved in the language wars either; comparisons with other languages belong somewhere else. But I think it is important to correct common misconceptions like the nonsense that Java "doesn't have pointers" or that it's inherently slow. I think one should also point out that things like multiple inheritance of implementation and operator overloading were not "overlooked" but omitted deliberately because they generally cause more problems than they are worth (an argument that one might disagree with, but it was nonetheless the reason for excluding those features). Should probably say something about garbage collection and memory leaks too. --LDC
----
Yes, garbage collection was on my list, but I don't know how much technical detail is necessary. The less the better I'm thinking now. Probably just say it does it automatically, plus short-short-short explanation with an internal link to garbage collection. This should be at least moderately accessible to a layman. However, elaborate on Java having pointers for me. If it does, I haven't found them. I mean, obviously pointers are used to pass reference, but there is nothing that gives you any more control than C++ references in my experience.
 
Lee, have a look at [http://groups.google.com/groups?hl=en&threadm=20010920001016.15115.00000873%40mb-fm.aol.com&prev=/groups%3Fnum%3D25%26hl%3Den%26group%3Dcomp.lang.java.programmer%26start%3D25%26group%3Dcomp.lang.java.programmer]. Good reviews so far! :-) --LMS
As for speed, I'd agree that Java's not inherently slow, just _usually_ :-)
 
 
 
----
 
I think the point is that that Java doesn't have pointer ''arithmetic'', which is an important (and problematic) feature in C or C++.
This should be moved to a howto somewhere, as it doesn't describe the language at all.
----
 
to be perfectly blunt, this means to me that java has _references_ and not pointers. I realize there are minor distinctions between the passing by x between reference and pointer, but I'm gonna check Sun's website for clarification. - AD.
 
 
:One of the most confusing concept for those just starting to learn the Java language is the notion of a [[ClassPath]] that needs to be set before anything can be either compiled or executed.