Talk:Java programming language: Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Pat Palmer
(thanks for Eric for wiki help)
imported>Tom Morris
 
(35 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{checklist
#REDIRECT [[Talk:Java (programming language)]]
|                abc = Java
|                cat1 = Computers
|                cat2 =
|                cat3 =
|          cat_check = y
|              status = 3
|        underlinked = y
|            cleanup = y
|                  by = --[[User:Eric M Gearhart|Eric M Gearhart]] 16:19, 7 April 2007 (CDT)
}}
 
__TOC__
 
==Concerns about Sun's core goals==
I have some concerns about how Sun's design goals are worded.  I think this is partially because the goals (as listed on Citizendium) don't completely match up with the goals (as listed in the referenced white paper), and partially because the white paper is a marketing document--barely technical at all.
 
<blockquote>
Have performance in mind. The language would be simple and compact, so that it could be mastered relatively easily
</blockquote>
I would have expected "performance" to mean runtime performance.  Here is seems to mean easy to learn.  The referenced white paper makes an argument for performance, and bases it on the garbage collector.
 
<blockquote>
Be reliable (garbage collection would be built-in, rather than left up to the programmer as in C++)
</blockquote>
Garbage collection would tend to make programs written in Java more reliable, but not necessarily the language itself.  However, this might serve to contribute to a popular opinion of Java programs being reliable.  BTW, garbage collection isn't "left up to the programmer as in C++", but rather a C++ programmer is responsible for memory management.  Garbage collection is simply a memory management strategy used by Java, and other languages.
 
<blockquote>
Have security built in (pointers were not to be a part of the language, due to buffer overflow security concerns)
</blockquote>
Having security built in is a tough argument.  There have been many java programs with severe security problems.  In terms of [[buffer overflow]] concerns, dynamic [[data structure]]s may do more than eliminating pointers would.  Also, the language relies heavily on implicit pointers: every variable other than an integer, float, byte, and a few more atomic types is actually a pointer to a heap allocated object.
 
I don't have time right now, but I may come back and correct this tomorrow if no one else has.  --[[User:Nick Johnson|Nick Johnson]] 12:51, 16 April 2007 (CDT)
 
:Nick, I'm more of an "operating system / open source / computer company startup" historian-type guy. I read books about computer startups for the fun of it. I'll start hitting the Apple Inc. and Macintosh articles hard when I get to the Apple book I have, as soon as I finish the book/articles on Commodore (see [[MOS Technology]] for the result of me getting through the first part of the Commodore book). You're much more experienced in the compilers and programming language design area... please feel free to fix the article. I started the Java article simply because there was a "really big hole" there. Hack away at the "round peg I put in the square hole" so to speak til it fits :P [[User:Eric M Gearhart|Eric M Gearhart]]
 
:Nick, I completely agree that Java is not necessary safe from a determined hacker.  I might argue, though, that it is considerably safer from programmer stupidity of the sort beginning programmers tend to exhibit.  You won't normally, from ignorance, be likely to cause a segment fault or crash the runtime.[[User:Pat Palmer|Pat Palmer]] 08:54, 20 April 2007 (CDT)
 
==May I try an overhaul here?==
Do any of you object if I try to overhaul and revise this article?  I would like to archive what's here so we can recover any of the text if we need, then begin again from the top.  I'd keep the "editions" section and expand it.  Let me know if anyone would rather do this themselves.  Java is an area I feel fairly comfortable in at the moment.[[User:Pat Palmer|Pat Palmer]] 08:57, 20 April 2007 (CDT)
 
:This article is so small I do not see how there could be objections. Everything will remain in the history. An alternative is to userfy a draft then post a link to it.  [[User:Stephen Ewen|Stephen Ewen]] 19:51, 20 April 2007 (CDT)
 
::Yes Pat please do... hack away. I'm not comfortable enough with the little bit of knowledge I have on Java to make any significant edits to it, however we <i>need</i> a good Java article on CZ [[User:Eric M Gearhart|Eric M Gearhart]]
 
==Why no table of contents showing up on this page?==
I don't really understand why we're not getting a table of contents on this page.  I've seen this before.  Anyone know why the headers aren't being turned into a TOC?  Is this a technical problem to report, or a coding error of mine/ours?[[User:Pat Palmer|Pat Palmer]] 08:59, 20 April 2007 (CDT)
 
:Pat, when there are too few sections the TOC doesn't show up. You can force it on, at a specific place in the article, with <nowiki>__TOC__</nowiki>. Conversely, you can force the TOC off with <nowiki>__NOTOC__</nowiki> [[User:Eric M Gearhart|Eric M Gearhart]]
 
::Eric, thank you!  I think I need to read a wiki manual![[User:Pat Palmer|Pat Palmer]] 07:43, 22 April 2007 (CDT)

Latest revision as of 06:59, 8 August 2009