Re: "Hello world!" without a public class?
On 06.01.2013 09:44, Lew wrote:
There's pedagogical merit in teaching the good habits first and the
exceptional cases later. So you could begin with only 'public' classes
overall, let alone for the main one, mentioning briefly at first that
there is a way to drop the 'public' that you'll explain later.
+1
As for 'final', that's harder. Hardly anyone in the field uses it,
myself included, because most classes basically aren't inherited so it's
not really risky to leave it out, and also there's a benefit to making
classes heritable for test purposes.
I use it rather frequently on the basis of whether I intend a class for
inheritance or not. It's easier to loosen a restriction later than the
other way round. Plus, it /might/ help the JVM optimize. But that's
really the smallest benefit and the most unimportant reason.
I think as a teacher I would use 'final' nearly always for classes, and
explain to the class (of students) that I'm being picky, but for good
reason. Also I'd mention that heritable classes support a certain style of
test code, and teach it once inheritance had been covered.
That's a bit contradictory, isn't it? I mean you say that almost nobody
uses it (including you, and also for good reasons) yet you would
recommend making it a habit to a beginner. :-)
Kind regards
robert
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/