Click here to Skip to main content
15,896,118 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
GeneralRe: Eclipse why you no work! Pin
loctrice16-Jul-15 4:28
professionalloctrice16-Jul-15 4:28 
GeneralRe: Eclipse why you no work! Pin
Nagy Vilmos16-Jul-15 5:03
professionalNagy Vilmos16-Jul-15 5:03 
GeneralRe: Eclipse why you no work! Pin
loctrice16-Jul-15 5:24
professionalloctrice16-Jul-15 5:24 
GeneralRe: Eclipse why you no work! Pin
clientSurfer16-Jul-15 6:15
professionalclientSurfer16-Jul-15 6:15 
GeneralRe: Eclipse why you no work! Pin
loctrice16-Jul-15 6:21
professionalloctrice16-Jul-15 6:21 
JokeI Was Going to Post a Joke about Browsers.... Pin
clientSurfer16-Jul-15 3:50
professionalclientSurfer16-Jul-15 3:50 
GeneralI Made a Joke about Math Books Pin
clientSurfer16-Jul-15 3:46
professionalclientSurfer16-Jul-15 3:46 
RantJava vs. C# PinPopular
Ian Shlasko16-Jul-15 3:34
Ian Shlasko16-Jul-15 3:34 
I apologize in advance for not telling a joke about telling jokes about things, but I need to vent, and I just happen to have the Lounge open in my browser (As always)...

Ok, so I'm mainly a .NET programmer, but I've spent the last couple months writing a three-tier Java/GWT/GXT application... Hadn't used Java in over a decade, so had to teach myself a few frameworks, but that's no big deal... Part of the job...

So now I think I have enough experience to complain about both...

Things C# Has and Java Needs:
* Property syntax... Seriously, I'm so sick of writing getThingy and setThingy methods. They're ugly and they don't add anything. I miss being able to just type "public double Thingy { get; set; }"
* Namespace/package aliases. "using STUFF = com.blah.meh.ugh.stuff" would be great. Wildcards are ok, but there's so much junk in the JRE with similar names that it gets confusing
* IEnumerable. Seriously, why does it matter if a function returns an array or a list, if all I'm going to do is iterate it? Arrays and Lists need to implement some common interface(s) so I'm not always converting back and forth depending on which third-party library uses which.
* Function pointers that actually work... I hate having to build an inner/anonymous class that implements an interface, just so I can pass a callback. This might be a GWT weakness instead of a Java weakness...
* Optional method arguments.
* Partial classes. Splitting code between files makes it much easier to organize
* Multiple classes per file. Honestly, if I have a handful of classes that are about five lines each, why do they each have to be a separate file? Why can't I just put them in a "Things.java" file (Or something more specific than 'Things')?
* Events... Sure, there are event frameworks, but the ones I've messed with feel clumsy and hacked-in... Need native language support for it.
* Project/module-based root packages. In C#, I can say my project's root namespace is "Company.This.That.TheOther" in ONE place, and never have to mess with it... In Java, my whole source tree is supposed to be under "com/company/this/that/theOther/" and every single file has to have "package com.company.this.that.theOther" at the top. If my IDE didn't automate refactoring, that would have driven me right out the window.
* WPF/XAML. GWT/UiBinder is about 20% of the way there. Maybe there's another framework that gets 30% of the way... But man, I really miss DataTemplates, Styles, and dynamic binding...

Things Java has and C# Needs:
* Anonymous classes. Not to replace LINQ, just to complement it. And honestly, I could live without this.
* Wildcard arguments for generics. If I have Foobar<int> and Foobar<String>, it's nice to be able to put them in a collection/array typed as Foobar<?>. The '? extends X' and '? super X' syntax might be a bit much, though.
* Maven (Or at least something like POM files)... NuGet is about 50% of the way there... Gotta say, Maven drove me crazy at first, but now it's really nice.

And that's about it...

Ok, rant over... Back to working on my GWT client... Wait, one more thing... GWT code generation is only about 25% more annoying than T4 templates. Ok, done.
Proud to have finally moved to the A-Ark. Which one are you in?
Author of the Guardians Saga (Sci-Fi/Fantasy novels)

GeneralRe: Java vs. C# Pin
gardnerp16-Jul-15 3:50
gardnerp16-Jul-15 3:50 
GeneralRe: Java vs. C# Pin
Ian Shlasko16-Jul-15 4:01
Ian Shlasko16-Jul-15 4:01 
GeneralRe: Java vs. C# Pin
loctrice16-Jul-15 3:53
professionalloctrice16-Jul-15 3:53 
GeneralRe: Java vs. C# Pin
Ian Shlasko16-Jul-15 4:04
Ian Shlasko16-Jul-15 4:04 
GeneralRe: Java vs. C# Pin
Eric Whitmore17-Jul-15 3:13
Eric Whitmore17-Jul-15 3:13 
GeneralRe: Java vs. C# Pin
Ian Shlasko17-Jul-15 3:38
Ian Shlasko17-Jul-15 3:38 
GeneralRe: Java vs. C# Pin
harold aptroot16-Jul-15 4:09
harold aptroot16-Jul-15 4:09 
GeneralRe: Java vs. C# Pin
Ian Shlasko16-Jul-15 4:17
Ian Shlasko16-Jul-15 4:17 
GeneralRe: Java vs. C# Pin
irneb17-Jul-15 21:51
irneb17-Jul-15 21:51 
GeneralRe: Java vs. C# Pin
Ravi Bhavnani16-Jul-15 4:34
professionalRavi Bhavnani16-Jul-15 4:34 
GeneralRe: Java vs. C# Pin
Ian Shlasko16-Jul-15 4:52
Ian Shlasko16-Jul-15 4:52 
GeneralRe: Java vs. C# Pin
Nagy Vilmos16-Jul-15 20:31
professionalNagy Vilmos16-Jul-15 20:31 
GeneralRe: Java vs. C# Pin
Ian Shlasko17-Jul-15 2:55
Ian Shlasko17-Jul-15 2:55 
GeneralRe: Java vs. C# Pin
jibalt17-Jul-15 9:30
jibalt17-Jul-15 9:30 
GeneralRe: Java vs. C# Pin
Kevin McFarlane16-Jul-15 4:56
Kevin McFarlane16-Jul-15 4:56 
GeneralRe: Java vs. C# Pin
Ian Shlasko16-Jul-15 5:03
Ian Shlasko16-Jul-15 5:03 
GeneralRe: Java vs. C# Pin
NickPace16-Jul-15 5:06
NickPace16-Jul-15 5:06 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.