Click to See Complete Forum and Search --> : Java and .NET [Very Serious]
chocoloco
Jan 18th, 2008, 04:15 PM
I am looking for serious responses so if you're looking for pun please find other threads.
I work for a large consulting company and I consider myself pretty senior in .NET. I am well familiar with OOP languages.
Lately, All we seem to be getting are Java projects. What I do not understand what is it you can do in Java that you can't in .NET? How come Java is in such hot demand.
If I were to start learning Java (I am not total dumb in its syntax, its similar to C++ somewhat) I do not even know where to start as there is so much to it.
Any suggestions?
CodedFire
Jan 18th, 2008, 04:25 PM
I wouldnt say java is in as "hot" a demand as you would think. What language are you comparing java to? I mean you could write the majority of your c++ as managed "C++" utilising the .net framework. Or even C#, which i would prefer over java.
chocoloco
Jan 18th, 2008, 04:28 PM
Trust me, its not me who thinks that way. But lately that is all we seem to be getting. Hardly any .NET projects.
CodedFire
Jan 18th, 2008, 04:34 PM
Trust me, its not me who thinks that way. But lately that is all we seem to be getting. Hardly any .NET projects.
That as more to do with the people who talk to your clients for you. I mean how does your company get projects, very few clients would specify the language of choice unless there was specific compatibilty issues with existing systems.
chocoloco
Jan 18th, 2008, 04:50 PM
Can we at least get to my questions?
What is it you can do (or do it better) in Java that you can't in .NET?
If I were to start developing systems and enterprise applications, and I need to learn Java, where do I start?
I can get thru the syntax fairly quickly. After that I haven't a clue what to learn.
chocoloco
Jan 18th, 2008, 04:51 PM
There is Java Beans, Servlets, Struts, AWT, Applets, and what not. What do these do?
Arrow_Raider
Jan 18th, 2008, 04:56 PM
Your question is flawed. You are asking what java can do that .net can't do. But the real question is, what can .net do that java can't do. .Net can do a whole heck of a lot more than what java can do. Although I suppose that Java does offer cross-platform. Are your clients looking for cross-platform software? If not, then I'd bet that the only reason you are getting so many java application requests is because of some nubs in management that heard java was the hottest thing ever.
timeshifter
Jan 18th, 2008, 05:04 PM
Java makes my spleen quiver in fright. Along with Adam. Adam always makes my spleen quiver.
In all seriousness, though, I detest Java. The best I can come up with is its' cross-platform nature, but then why not C or C++? Both are FAR superior to Java. Thus, we can deduce that Java is little more than the C++ for people who can't grasp C++.
I could be way off there, but that's just my understanding.. or lack thereof.
chocoloco
Jan 18th, 2008, 05:20 PM
I don't know, I do believe though there must be more to using Java than "some corporate suits hearing that its superior and thus deciding to use it instead". Lot of financial institutions use Java for their critical financial systems. To be honest, I haven't seen many Financial Institutions using .NET for their critical systems.
timeshifter
Jan 18th, 2008, 05:33 PM
Because .NET is ever-evolving. Java just kinda stays put. Inferior, but it stays that way. .NET is always growing, and because of such, either new people familiar with the technology need to be hired, or existing employees need to be trained on it. Both are expensive.
System_Error
Jan 18th, 2008, 07:51 PM
I wonder how many Java bashers truly know JSP and Servlets or do they all think java is simply the worthless applet and gui programming they learned in high school?
Java is great for web programming, but not much else IMO. And I will warn you, learning to use JSP & Servlets efficiently with the right architecture really sucks.
nemaroller
Jan 18th, 2008, 09:42 PM
First, you all have to ask yourselves... why do I write in .NET (VB or C#, or managed C++) and not native C++?
Once you have those answers, now ask yourself, if I was writing platform portable code that can be managed with a garbage collector, and has built-in code security, what choice is out there?
Your only answer is JAVA. Sure, the MONO project has basically most of .NET 1.1 runtime implemented on U/Linux, but that's a small implementation of the runtime.
Various versions of the JAVA runtime runs not only on Linux, Unix, Macs, Sun.. but also (and ask yourself this - how many cellphones have you seen that can't run Java?) Just about every cellphone I have ever owned , had a JAVA runtime installed. It might not have used any JAVA applications other than a few games, but it was there.
Now, if you own any new dishwashers, clothes washer or dryers, or a fancy electronic thermostat with programmable display - I would bet many of those 'appliances' have compiled JAVA byte code controlling them.
As you see, the argument for platform portable is a very strong advantage for JAVA.
The .NET runtime was just recently being targeted toward mobile phones and microcontrollers, which is good, because JAVA has targeted those areas for a long time.
As far as writing information systems for business, Java is a very experienced and mature enterprise platform, .NET is just getting there. This is simply due to the fact JAVA has been around far longer - and as TS pointed out - .NET brings a whole slew of new options that JAVA may not easily do, but that doesn't mean IT people used to JAVA feel compelled to jump ship to .NET.
nemaroller
Jan 18th, 2008, 10:13 PM
Lots of financial institutions use Java for their critical financial systems. To be honest, I haven't seen many Financial Institutions using .NET for their critical systems.
Financial institutions use IBM mainframes (code from 1960's can run on the most recent IBM mainframe with little modification.)
edit:See link for the very interesting architecture of these mainframes (54 core processors).
http://en.wikipedia.org/wiki/ZSeries
And IBM embraced JAVA back in the late 90's (before .NET even materialized).
While the .NET runtime has been ported to Linux, mostly thanks to Novell, IBM doesn't care THAT much for Microsoft anyway - they are a competitor to IBM in the server market, and they certainly don't want to be held captive by a competitor's technology.
Further, IBM developed a specialized processing chip just for executing JAVA instructions. So IBM has a LOT invested in JAVA technology, and since financial institutions have long trusted IBM, nothing is going to change on that front for a very LONG time.
mendhak
Jan 19th, 2008, 05:35 AM
How come Java is in such hot demand.
Java has been around longer, it runs on more platforms/devices, there are more developers. It's as simple as that.
chemicalNova
Jan 19th, 2008, 05:44 AM
Any language that doesn't use a colon for inheritance purposes is horrid...
"extends"... wth is that..
chem
zaza
Jan 20th, 2008, 04:35 AM
I don't know, I do believe though there must be more to using Java than "some corporate suits hearing that its superior and thus deciding to use it instead". Lot of financial institutions use Java for their critical financial systems. To be honest, I haven't seen many Financial Institutions using .NET for their critical systems.
There's quite a lot of everything in finance, to be honest. There's a lot more .Net stuff coming out these days; most of the major banks now use at least one of Ion's (http://www.iontrading.com/index.php?module=solutions§ion=solutionsoverview&sid=dd5a99b48bd800e5ae71022c2f2d5f16) products (MarketView, Anvil etc) and it's only going to progress from there.
As far as in-house development goes though, there's pretty much a mish-mash depending on what the requirements are, who's available for the job, what framework is currently in place and so on. There are critical apps written in everything from Access to C++ to Java to .Net to VB6. There's not much in FORTRAN any more.
Arrow_Raider
Jan 20th, 2008, 06:27 AM
At the company I work for, all in-house stuff is done in .net.
chocoloco
Jan 20th, 2008, 08:10 AM
System-Error: you nailed the whole thing. Thats exactly what I've heard is doing Java development with right architecture and framework is much harder and different from .NET.
How is it different from .NET is something I don't know??
System_Error
Jan 20th, 2008, 08:42 AM
System-Error: you nailed the whole thing. Thats exactly what I've heard is doing Java development with right architecture and framework is much harder and different from .NET.
How is it different from .NET is something I don't know??
Each one is going to have advantages and disadvantages. The one selected by a company usually offers them more future options and is better supported by their staff. In general, it's much easier to find ASP(.NET) hosting rather than JSP hosting. Also, Microsoft environments are simply more productive than any others. Things I like about JSP are better separation of presentation logic and encapsulation in servlets.
Personally, I don't like web development and try to stay away from it as much as I can.
Arrow_Raider
Jan 20th, 2008, 09:51 AM
Web development always ends up being putting together a collection of hacks that sort of work on each browser.
timeshifter
Jan 20th, 2008, 02:03 PM
For the most part...
penagate
Jan 21st, 2008, 04:59 AM
Web development always ends up being putting together a collection of hacks that sort of work on each browser.
For the inexperienced, yes.
The experienced avoid web development.
Arrow_Raider
Jan 21st, 2008, 07:42 AM
For the inexperienced, yes.
The experienced avoid web development.
The good thing is though, its not too hard for the inexperienced to become the experienced. Normally, just one web development project will be sufficient to go from inexperienced to experienced.
timeshifter
Jan 21st, 2008, 11:56 AM
And for others, web development pays us... pretty good for my age, too, so I can't really complain. And moving from VB to C# was a nice improvement.
wossname
Jan 22nd, 2008, 06:56 AM
$0.02:
I'm in the fortunate position of using loads of languages on several platforms at work.
Our server software runs on linux (like all servers should) and is written in C/C++. One of our 2 windows client apps is VB6 but soon to be ported to C#. The reporting system on the server is web-based and written in PHP/XHTML/JS/MySQL/CSS. Then we've got another linux product which is C again but also runs an in-house custom language of our own design.
I've got my finger in all of these various pies to some extent, so its easy to see which languages and language types are more or less productive than others. JS is by far the most problematic followed by PHP. At the other end of the spectrum I find C# to be the tool that gets the job done soonest and most robustly in windows, in linux it would have to be C because we have loads of very experienced C developers here.
All the code that we have to share around between platforms is generally standards-compliant C/C++ because it has to be extremely efficient (eg fast to run) and tightly controlled, which is just so much harder to do with things like C# and java.
kleinma
Jan 22nd, 2008, 05:09 PM
you said you are getting lots of java projects.
You did not mention if they are brand spanking new projects though.
So are they? Are these projects that are about to be built from the ground up? Or are they projects that need to be extended, maintenanced, etc..
There was a huge java boom prior to .NET (.NET was actually Microsoft's answer to Sun's Java) they are very similar in the core concepts, like a managed framework, automatic memory management, etc...
So that means there is a whole lot of stuff written in Java even if the same project could be built better/easier using .NET technolgies today. These projects you are getting requests for could be people looking to expand or change current systems already written in java, hence the need for java developers.
Another thing to consider, is the fact that Microsoft has its own java style syntax language, called J# which is a .NET framework language, although it also requires a seperate J# runtime to be installed. So if you were getting requests for Java code, you could see if the client is willing to use J# versus a sun version of Java, which would give you all the great features of Visual Studio, while still delivering a "java" application to the client. These applications of course are tied to the framework (and ultimatly Windows machines) so the only thing Sun java is likely to bring to the table would be that cross platform capability.
MartinLiss
Jan 22nd, 2008, 09:55 PM
Moved. Please don't post technical questions in the General Discussion / Chit Chat forum.
celtik
Jan 23rd, 2008, 09:42 AM
I use to wonder the same thing..I am getting ready for college, and I didn't know if I should focus on JAVA or .NET. I think I came out with focusing on JAVA because that is what most colleges use, and are in high demand imo.
Hack
Jan 23rd, 2008, 10:21 AM
Did you have to pick between the two?
Learning both could/would be very beneficial.
RobDog888
Jan 23rd, 2008, 11:36 AM
Learning multiple languages is always beneficial to you. Now if you can get into a position where you can use your languages of choice is the best scenerio.
I see alot of Java being tacked on to the skillset requirements in job listings but not too much where Java is the primary language desired.
kleinma
Jan 23rd, 2008, 04:03 PM
I see alot of Java being tacked on to the skillset requirements in job listings but not too much where Java is the primary language desired.
Probably because a lot of places are converting Java to C# and .NET in general. So while you need to know Java, its more so just to be able to read and understand it.
RobDog888
Jan 23rd, 2008, 04:13 PM
So then Java is getting cold :D
Probably something that you wouldnt want to get too deep into then.
kleinma
Jan 23rd, 2008, 04:26 PM
I don't think it will die any time too soon, there is a lot of cross platform stuff out there, but its a well known fact that MS is gaining a lot of market share in the web server market, and IIS7 is supposed to be the best webserver yet from MS.
That with the fact that many many applications that once needed to be a winforms application, can now be feature rich apps via silverlight, or ASP.NET. This will move a lot of applications to the web. Since MS is making the platform and tools very easy to use that will host these, you will see more people moving over to this platform, and still be able to target cross OS.
I haven't used java from Sun, but I can not imagine that the development environment could possibly rival Visual Studio.
RobDog888
Jan 23rd, 2008, 05:26 PM
I've heard that too about more of a move to web apps. :(
I really really dislike working on web projects. All the cross browser platform issues etc.
kleinma
Jan 23rd, 2008, 05:47 PM
Yeah, although if you ask any anti-IE web dev, they will tell you its all IEs fault for not adhering to www standards, and that is what supposedly causes the cross browser issues.
That aside, things like silverlight will enable a browser independent development experience because it simply uses the browser as a container, like flash does. So rich applications can be developed in silverlight, and it will be of little importance what OS or browser is actually using them.
That isn't to say winforms apps are going away. They will for the foreseeable future still be way faster for certain tasks than any web app could be, and there is always the issue that any web app, even if running over SSL, still can be exposed to security risks that don't exist in WinForms.
For example, I would never "backup" any files I considered sensitive to any sort of online backup program. I am always going to want stuff like that running on my local computer/network only.
timeshifter
Jan 23rd, 2008, 06:16 PM
Being a web developer by profession now (I've been waiting years to say that), I can say that winforms will be around for a long time. Just today, I finished a thumbnailing program. You defined a target and destination folder, set a few parameters, and it would create thumbnails of every image in that folder. An app like that can be INCREDIBLY useful, but it's 100% impractical to write it as a web app. Web certainly has its' place, but there's so much territory that is unique to each type of application. So many things a winform can do that a webapp can't, and vice versa.
TownProg
Jan 26th, 2008, 07:21 AM
In my personal opinion Java is in some way better than .NET just because this platform brings the functionality to develop cross-platform applications, interactive web applications, and applications running on different mobile devices, so that is a great advantage, which I can not say about the .NET platform. Mobile applications developed in .NET run only Windows Mobile platform (or at least .NET-compatible mobile platforms, which I didn't ever see). Cross-platform .NET programming isn't great (even with such things like Mono on Linux). Of course, .NET has its own great features (like Windows Presentation Foundation), but when discussions goes to mobility and cross-platform functionality, Java takes the lead.
killer7k
Jan 26th, 2008, 12:55 PM
If You need really a Answer for This
For me there is at least 3 reason to answer it
1/ Question about Country
2/ Question about time
3/ Question about platform
ComputerJy
Feb 2nd, 2008, 03:00 AM
In my personal opinion Java is in some way better than .NET just because this platform brings the functionality to develop cross-platform applications, interactive web applications, and applications running on different mobile devices, so that is a great advantage, which I can not say about the .NET platform. Mobile applications developed in .NET run only Windows Mobile platform (or at least .NET-compatible mobile platforms, which I didn't ever see). Cross-platform .NET programming isn't great (even with such things like Mono on Linux). Of course, .NET has its own great features (like Windows Presentation Foundation), but when discussions goes to mobility and cross-platform functionality, Java takes the lead.
I agree. But the problem with Java is that it hasn't improved (syntax wise) since 2005 while C# has improved big time. Another thing is desktop apps GUI design, even using a great IDE such as NetBeans will not help you. A complex GUI will always be a problem for developers.
For web applications I still think JSP is great, better than ASP anyway
Jenner
Feb 8th, 2008, 10:30 AM
Question... is Silverlight platform independent? I know it's browser independent.
Java in my opinion has one thing and one thing only going for it. It allows you to write a locally executable program that will run, without any modification, on any platform.
For web development, ASP.NET and Java can both be used to accomplish the same things and are completely cross-platform; Java running applets locally while ASP.NET runs remotely. As long as the web server is IIS, there is no issue here.
For local application development, as long as it's on a Microsoft system, .NET is faster, has more features, has a much better development environment, is easier to learn and from what I've seen, has more online help and support like these forums than Java.
ComputerJy
Feb 8th, 2008, 10:58 AM
is Silverlight platform independent? I know it's browser independent.Not yet
For web development, ASP.NET and Java can both be used to accomplish the same things and are completely cross-platform; Java running applets locally while ASP.NET runs remotely. As long as the web server is IIS, there is no issue here.ASP.Net requires Window server so it's not platform independent. If we're talking servers. On the other hand java requires Jakarta which is platform independent as far as I know
penagate
Feb 8th, 2008, 08:34 PM
This post is a few weeks old, but I thought it important to respond anyway:
Yeah, although if you ask any anti-IE web dev, they will tell you its all IEs fault for not adhering to www standards, and that is what supposedly causes the cross browser issues.
Not "supposedly": it's the truth, and a well-known fact. But don't just take my word for it: ask the IE team yourself, or read their blog (http://blogs.msdn.com/ie/), which contains lots of entries about how they're gradually improving IE so that after about 8 years of stagnation it'll finally be catching up to modern web standards. It's a well-known fact that it is by far easiest to develop for Mozilla, Opera, and Webkit, and then add tweaks to compensate for IE's various quirks and shortcomings. Developing for IE and then tweaking for all other browsers is simply a nightmare.
Trust me, no-one wants IE to improve more than the web developers who hate what it is now.
Jenner
Feb 11th, 2008, 08:13 AM
They announced IE8 passed the Acid2 test which is pretty impressive. Even Firefox 2 doesn't pass it but it comes a heck of a lot closer than IE7 which totally mangles the page.
As a side note, the up-coming Firefox 3 also passes the test.
Zaid
Feb 11th, 2008, 10:29 AM
I think .Net in the next few years will dominate the market because it is improving so fast , there is a lot of signs :
1. checkout amazon and check out how many new books talking about .Net as compared to java
2. try to use google for searching about any code in .Net , you will find the code you are searching for , But with java not always you will find the code you are searching for
Java has one privilege that .Net has not , which is cross-platform
if .Net can get that privilege i am sure java will end in one year
vbforums.com
Copyright Internet.com Inc., All Rights Reserved.