- May 16, 2008
- 3,180
- 0
- 0
I've taken a various courses throughout school, they were always in Java (OOP) over the years. I have worked on several projects since then, primarily in C#.
Returning (or basically beginning) to Java my first impression is to turn back to c# (web, windows/wcf services etc.). The generics seem shoddy, LINQ, properties, the debugger (VS drag and drop, conditional breakpoints, all kinds of stuff), tuples, etc. which were so convenient for simple to advanced uses are all missing. To me it still feels like C# is more productive (less typing/plumbing), but that can easily be due to the lack of real experience in Java. It feels like going backwards in time. Everything in basic code seems more clunky. The stuff which I do is different and there seems to be plenty extra legwork (factories, mappers etc.) vs. the svelte .NET MVC which I am used to. I now understand the joke, life's too short for Java, as well as getter setter h*ll.
Lamda is copied there thankfully, at least in the newest SE. Looking forward it appears to be 2-3 years out to the next version so this is what it is for quite some time.
The main benefit appears to be the available frameworks, and of course license costs (visual studio, sql server).
I'll be glad to actually learn to use Java well since some of the others have quite a bit of experience so I'll see good ways to use it etc. I guess I'm at one of the dips where it's like a wth moment on the learning curve.
What I am really valuing from this all is learning to utilize languages, frameworks, etc. as what they really are, tools to an endpoint. I think the benefit of knowing alternative methodologies and languages will be a tremendous benefit in the long run, especially after several years of actual use in the industry after the very different academic world.
I'm just curious about your thoughts and experience. Perhaps the first "real" experience has made me biased, especially when it feels like transgressing backwards. I think my next goal is to try out an actual advancement like Scala or presumably F#, as well as python. Note that I do recognize that it's premature to form a strong opinion and am sure my opinion will likely change after a year or two.
Returning (or basically beginning) to Java my first impression is to turn back to c# (web, windows/wcf services etc.). The generics seem shoddy, LINQ, properties, the debugger (VS drag and drop, conditional breakpoints, all kinds of stuff), tuples, etc. which were so convenient for simple to advanced uses are all missing. To me it still feels like C# is more productive (less typing/plumbing), but that can easily be due to the lack of real experience in Java. It feels like going backwards in time. Everything in basic code seems more clunky. The stuff which I do is different and there seems to be plenty extra legwork (factories, mappers etc.) vs. the svelte .NET MVC which I am used to. I now understand the joke, life's too short for Java, as well as getter setter h*ll.
Lamda is copied there thankfully, at least in the newest SE. Looking forward it appears to be 2-3 years out to the next version so this is what it is for quite some time.
The main benefit appears to be the available frameworks, and of course license costs (visual studio, sql server).
I'll be glad to actually learn to use Java well since some of the others have quite a bit of experience so I'll see good ways to use it etc. I guess I'm at one of the dips where it's like a wth moment on the learning curve.
What I am really valuing from this all is learning to utilize languages, frameworks, etc. as what they really are, tools to an endpoint. I think the benefit of knowing alternative methodologies and languages will be a tremendous benefit in the long run, especially after several years of actual use in the industry after the very different academic world.
I'm just curious about your thoughts and experience. Perhaps the first "real" experience has made me biased, especially when it feels like transgressing backwards. I think my next goal is to try out an actual advancement like Scala or presumably F#, as well as python. Note that I do recognize that it's premature to form a strong opinion and am sure my opinion will likely change after a year or two.
Last edited: