Content deleted Content added
Tom.Reding (talk | contribs) m -redundant class param; cleanup |
|||
(14 intermediate revisions by 10 users not shown) | |||
Line 1:
{{WikiProject banner shell|
{{WikiProject Computer science}}
{{WikiProject Java
{{To do}}
==Untitled==
Line 142 ⟶ 144:
In short... it's BOR...ing. I quit after the first two paragraphs. It needs not only a complete rewrite, but a complete re-conceptualization. [[User:WilliamSommerwerck|WilliamSommerwerck]] ([[User talk:WilliamSommerwerck|talk]]) 19:40, 2 September 2011 (UTC)
== Cut down examples ==
Restored the examples, but then removed all but two. The ones I've chosen are C++ and Java, purely because this will cover a wide range of users, JavaScript is not OO and therefore is not a suitable example for this article, and Java/C/C# users should all be able to interpret the Java example quite easily. [[User:Carl Sixsmith|Carl Sixsmith]] ([[User talk:Carl Sixsmith|talk]]) 07:58, 26 October 2011 (UTC)
:I actually chose javascript because it ''wasn't'' OO, that way we had one example of polymorphism in an object context, and one in a function context. Why do we need two OO examples? The other benefit of the javascript example is that it's very simple. This is also true of the PHP and Python examples, which show the concept succinctly without getting bogged down in language-specific features and keywords that may not be accessible to a global audience. For instance, the java example (which is one of the best of the bunch), necessarily uses generics, annotations, and package imports inline between classes, without making it clear that they each need to be broken into separate files (why is that distinction important here anyway). I understand those concepts because I program in Java, but others may not. The C++ example has even more jargon. While that problem isn't "the end of the world", so to speak, it isn't a problem shared by other language examples we have readily available. What we need is a clear example in psuedocode (or as close to it as we can get), which is accessible to everyone from every background, with as few features as possible, which only serves to clearly highlight polymorphism, and nothing else. I don't believe the Java and C++ examples do that as well as others we could have chosen. — [[User:Mann_jess|<b>Jess</b>]]<span style="margin:0 7px;font-variant:small-caps;font-size:0.9em">· [[Special:Contributions/Mann_jess|Δ]][[User_talk:Mann_jess|♥]]</span> 16:43, 26 October 2011 (UTC)
:: The article is titled ''Polymorphism in object-oriented programming'' not polymorphism in general, that was my thinking behind leaving two OO examples. I'm not precious on the choice of languages though and agree the examples should be as simple as possible. According to http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html Java is still the number 1 popular programming language, that was the reasoning behind leaving that one in. Personally I'm a .net developer so would prefer a simple example in C#, but I went for the populist approach. I'm not too concerned with which gets chosen though. [[User:Carl Sixsmith|Carl Sixsmith]] ([[User talk:Carl Sixsmith|talk]]) 18:42, 26 October 2011 (UTC)
:::You're correct about the scope of the article being OO. Throughout the article, we refer to "polymorphism" generally, so the additional specificity in the article title sort of slipped my mind. That would, indeed, make the javascript example not relevant. After simplifying the java example a little bit, and changing C++ to Python, I'm actually ''okay'' with it. I still think the java example is really long, but PHP is too close to Python to make a second example of it useful, and the others I'm not so sure about. I think the current state of things is okay, assuming you're also fine with it. I'll assume you are based on your above response, but let me know if you have any other concerns. — [[User:Mann_jess|<b>Jess</b>]]<span style="margin:0 7px;font-variant:small-caps;font-size:0.9em">· [[Special:Contributions/Mann_jess|Δ]][[User_talk:Mann_jess|♥]]</span> 20:45, 26 October 2011 (UTC)
:::: Looks OK to me, I think within programming readers Java is better as it has a higher following, none programmers would probably be better served with a simpler C# example, but how many non-programmers are going to be interested in this article? I'm going to see if I can't add some references/clean up the rest of the article now. [[User:Carl Sixsmith|Carl Sixsmith]] ([[User talk:Carl Sixsmith|talk]]) 06:38, 27 October 2011 (UTC)
== Didn't Understand ==
This article doesn't tell what Polymorphism is. I read the article for four times. It fails to define Polymorphism. It fails to explain Polymorphism. It fails to distinguish it from function overloading.
Please -someone knowledgable- write a definition at the beginning and an explanation in the second paragraph. Then indicate the difference from overloading.--[[Special:Contributions/129.7.147.112|129.7.147.112]] ([[User talk:129.7.147.112|talk]]) 16:03, 15 December 2011 (UTC)
== Needs Merging ==
Since this article is so small and deals with a subdivion of the original concept, i feel it should be merged with the main article for polymorphism. In doing so it would shed light on the inaccuracies people have been complaining about and thus increase the chance of someone fixing the mistakes, there is no need for a separate article to discuss something that only needs a brief explanation to distinguish its use in OO vs other paradigms. <small><span class="autosigned">— Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[User:Konnerjr|Konnerjr]] ([[User talk:Konnerjr|talk]] • [[Special:Contributions/Konnerjr|contribs]]) 16:58, 21 December 2012 (UTC)</span></small><!-- Template:Unsigned --> <!--Autosigned by SineBot-->
== Python example doesn't show distinction between polymorphism and method overriding ==
The article clearly states that polymorphism is not method overriding. Yet isn't the latter exactly what the example is doing?
--[[User:Henre|Henre]] ([[User talk:Henre|talk]]) 23:33, 31 March 2013 (UTC)
:This article clearly states very little! We have:
::... ''Polymorphism (which is strictly referring to subtype polymorphism in the context of this article)'' ...
:Followed by a section headed:
::''Parametric Polymorphism''
:If you come to the areticle with no prior knowledge, you would leave confused. --[[User:Paddy3118|Paddy]] ([[User talk:Paddy3118|talk]]) 05:49, 21 April 2013 (UTC)
|