On 6 Jul., 11:28, Martin Wildam <[email protected]> wrote:
> In several podcasts the future of the Java language is discussed.
> People look at new(er) languages like Scala, Ruby, Groovy etc. And
> people argue that the Java language is not moving forward.

A new general purpose language is like a person who just stepped into
a swamp. You can wriggle and make changes, but at some point you
either stop or kill yourself. Right now Java is probably chest-deep in
the quagmire -- changes have to be made very slowly and carefully, but
it will still be many years before Java is eventually swallowed by the
marsh - slow years.

> 2. Introducing too many different idioms to the language itself makes
> it more difficult to learn and creates boilerplate thinking when
> writing and reviewing code. So I can understand if people think many
> times before adding some new stuff to the Java core language. Having
> said that I don't understand why I can't do a switch on strings - this
> is something really missing (was one of the first things I noticed
> really, really missing).

I can see how Closures for instance (as opposed to properties and many
other wouldn't-it-be-nice-features) would take some time to understand
and get used to. But sooner or later you are going to read them
without having to think about the internal workings. You can think of
closures as walking and of reviewing code as having a conversation.
Once you've internalized walking you can walk and talk in parallel.

Having said that: Having to review boilerplate code is not something
you get used to. If you create a bean property and decide to rename
it, but make a typo renaming the setter, do you expect that to be
caught during code review?

On string switch: As I understand it, it will make it into Java 7. (I
never really needed it, but what the hell..)

> 3. The .NET introduced the option to write in any language - although
> basically just VB.NET and C# is around. Whenever I attended .NET
> events at Microsoft everybody told me that I should use C# over VB.NET
> because that is also where Microsoft is focusing. And I could
> understand this very well because having different components written
> in different languages makes it harder to read through the whole
> project - it is good to have one standard. Software development is not
> fashion industry. Different styles are more annoying than nice here.
> In the extremer cases a developer needs to be familiar with at least 3
> languages when joining a project. With the rising of so many different
> languages for the Java platform I worry about a jungle of different
> languages that will be around in a few years.

I agree, being able to debug a library without crossing language
boundries is convenient. However, if there's a really really good C
library with Java bindings I won't forego using it just because it
ain't Java. (I don't want to imply you said to do the opposite, I'm
just playing "the other guy" -- whoever that is.)

> 4. My experience showed that you can be much more efficient and
> productive if you use a language you are already familiar with and
> already have written your own helpful tool classes/methods/libraries
> than using "the optimal language for the particular requirements".
> Switching main daily-use-language is a big effort. This is not
> something you want to do often. Therefore: I have chosen Java because
> it seems that I can implement every software project (that I would
> probably work on - I am not going to develop a hardware driver) using
> Java. And the good point is also that when I need JavaScript I at
> least remember to put the semicolon and can use other familiar syntax.
> I wrote a lot of MS Office macros in the past and knowing that I can
> use Java also for writing Open Office addons makes me feel good.

Well, not having to learn another language and its idioms definately
enters into the equation of choosing the project language.

(I still have VBA-nightmares.)

> 6. The importance of good GUI design tools for me seem to be somehow
> forgotten sometimes. For me it is a mission critical thing because
> without a good GUI design tool a very lot of effort goes in the GUI
> design/development. This is something why I love Swing and Matisse -
> that seems to work good (at least until now) and it even produces
> clean code (even configurable). My experience with Eclipse, SWT and
> Visual Editor was awful on the other hand. Talking about all the web
> development frameworks the availablility of GUI design tools is
> sometimes forgotten.

Well, once Tor is done, we can all switch to JavaFX for GUI work..
hopefully. ;)

My point is this: Java is a great language and I still enjoy writing
Java code, but if a better language comes along I won't hesitate to
jump ship.

With kind regards
Ben
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to