473,508 Members | 2,133 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

C# versus Java

I'm a C#.NET developer, but I have not used Java.

Now there's a tool (a component) that has good functionalities
implemented in Java we plan to use. There are other tools implemented
in C#.NET but seem weak compared to the Java tool.

Although I hesitate to learn a new computer language (expecially
something like Java with a lot of interface stuff), I don't want to go
with the second best option (implemented in C#) just to avoid the pain
of learning a new language. I want to do it for the right reasons.

Just wonder:

1) Is Java as efficient as C#.NET?

2) Will it be difficult to pick up Java?

Thanks,
Aug 21 '08 #1
8 1390

"Curious" <fi********@yahoo.comwrote in message
news:7b**********************************@m45g2000 hsb.googlegroups.com...
I'm a C#.NET developer, but I have not used Java.

Now there's a tool (a component) that has good functionalities
implemented in Java we plan to use. There are other tools implemented
in C#.NET but seem weak compared to the Java tool.

Although I hesitate to learn a new computer language (expecially
something like Java with a lot of interface stuff), I don't want to go
with the second best option (implemented in C#) just to avoid the pain
of learning a new language. I want to do it for the right reasons.

Just wonder:

1) Is Java as efficient as C#.NET?
It depends on what you are doing and what you call "as efficient". In many
tests, C# beats Java in pure performance, but the delta between C# perf and
Java perf is not so great that I would freak about this.

There are things I personally do not like about Java, if I were chosing one
or the other for a new project. Most of the things are related to getting
skilled people to work on the project, as Nashville is not a Java town. But,
I do have vendors who work in Java.

If the product is good, then it is good, Java or not. There is good
programming in Java and crappy programming in .NET. If you have a great
product in Java and a mediocre product in .NET, it could be your best
choice.

I would weigh all factors in before making a decision, as the human dynamics
may make the "superior" Java solution seem less than stellar.
2) Will it be difficult to pick up Java?
The syntax is similar. Most of the learning curve is in the slight
differences in language and understanding the underlying frameworks and
apis. How difficult this is to you is largely dependent on how you see .NET.
If it is the only thing you have ever programmed in, you will likely see
..NET constructs as programming constructs rather than understanding how they
fit into common programming constructs.

If so, it will be more difficult to grasp as you will require a more stiff
paradigm change in your thinking.

If not, you will still have to fit Java into the programming constructs and
get past the differences, but it will not be as hard, as you thinking will
be more abstract when it comes to the individual languages.

In short, I cannot state how difficult it will be for you.

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

Subscribe to my blog
http://feeds.feedburner.com/GregoryBeamer#

or just read it:
http://feeds.feedburner.com/GregoryBeamer

********************************************
| Think outside the box! |
********************************************

Aug 21 '08 #2
Java is very similar to C#, if you ignore that it doesn't have:
- delegates
- preprocessor
- value types
- linq
- operator overloading
- properties
- elegant event handling (unless you call Java's indirect interface approach
'elegant')
- 'unsafe' code options

..... then again, maybe Java is not very similar....

--
http://www.tangiblesoftwaresolutions.com
C++ to C#
C++ to VB
C++ to Java
VB & C# to Java
Java to VB & C#
Instant C#: VB to C#
Instant VB: C# to VB
Instant C++: VB, C#, or Java to C++/CLI
"Curious" wrote:
I'm a C#.NET developer, but I have not used Java.

Now there's a tool (a component) that has good functionalities
implemented in Java we plan to use. There are other tools implemented
in C#.NET but seem weak compared to the Java tool.

Although I hesitate to learn a new computer language (expecially
something like Java with a lot of interface stuff), I don't want to go
with the second best option (implemented in C#) just to avoid the pain
of learning a new language. I want to do it for the right reasons.

Just wonder:

1) Is Java as efficient as C#.NET?

2) Will it be difficult to pick up Java?

Thanks,
Aug 21 '08 #3
Hi Gregory,

Thanks for your insightful advice.

Our new project is to analyze real-time live stock market data. It's
quite computational intensive, because every several seconds, you have
to react to real-time events (and go back to retrieve historical data
in a high-frequency database ) and do something. I guess performance
is critical. After I read your post, I am kind of leaning towards
C#.NET.

I also don't know what editor/compiler I should use for Java. Also I
don't know if it has garbage collection to automatically claim memory
not used. I also don't know if it has memory leak. Just too much
overhead to deal with before you start a new project. Not worth it.
Aug 21 '08 #4
I saw a lot of "interface" stuff in this API in Java, and kind of feel
scared, because I'm not into that.
Aug 21 '08 #5
"Curious" <fi********@yahoo.comwrote in message
news:0f**********************************@c65g2000 hsa.googlegroups.com...
Hi Gregory,

Thanks for your insightful advice.

Our new project is to analyze real-time live stock market data. It's
quite computational intensive, because every several seconds, you have
to react to real-time events (and go back to retrieve historical data
in a high-frequency database ) and do something. I guess performance
is critical. After I read your post, I am kind of leaning towards
C#.NET.

I also don't know what editor/compiler I should use for Java. Also I
don't know if it has garbage collection to automatically claim memory
not used. I also don't know if it has memory leak. Just too much
overhead to deal with before you start a new project. Not worth it.

Java does have automatic garbage collection, but another thing I'd consider
is whether or not your app needs to run on multiple platforms. If it's not a
web app (you didn't mention), and you just need to target Windows, I
wouldn't consider switching.

Aug 21 '08 #6
This is Java's standard approach to event wireups. I'm sure it becomes
intuitive after a lot of time coding in Java, but it seems pretty indirect
and clunky to me.
--
http://www.tangiblesoftwaresolutions.com
C++ to C#
C++ to VB
C++ to Java
VB & C# to Java
Java to VB & C#
Instant C#: VB to C#
Instant VB: C# to VB
Instant C++: VB, C#, or Java to C++/CLI
"Curious" wrote:
I saw a lot of "interface" stuff in this API in Java, and kind of feel
scared, because I'm not into that.
Aug 21 '08 #7
Java does have automatic garbage collection, but another thing I'd consider
is whether or not your app needs to run on multiple platforms. If it's not a
web app (you didn't mention), and you just need to target Windows, I
wouldn't consider switching.
It'll be a Windows Forms application on Windows XP (not a web
application).
Aug 21 '08 #8
Curious <fi********@yahoo.comwrote:
I saw a lot of "interface" stuff in this API in Java, and kind of feel
scared, because I'm not into that.
What exactly do you mean by "a lot of 'interface' stuff"? It's not like
C# doesn't have/use interfaces too - and if you're avoiding or ignoring
them at the moment, you're not making full use of the language.

--
Jon Skeet - <sk***@pobox.com>
Web site: http://www.pobox.com/~skeet
Blog: http://www.msmvps.com/jon.skeet
C# in Depth: http://csharpindepth.com
Aug 29 '08 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
8674
by: Kevin | last post by:
Hi! I recently completed a graduate level Java class at a local university. For our class project my group built a web-based application. Basically, the application would let a manufacturing...
40
3125
by: Eitan | last post by:
Hello, I know Java-Applet (written for JBuilder). I would like to know about dotnet technology, pros and cons in comparation to Java-Applet technololgy. Can I write a program in dotnet, like...
18
2972
by: Matt | last post by:
I try to compare the default constructor in Java and C++. In C++, a default constructor has one of the two meansings 1) a constructor has ZERO parameter Student() { //etc... } 2) a...
9
2152
by: MStepansky | last post by:
Whats the difference between Javascript and Java3D? I mean can Javascript do like Java3D can? Or is Java3D on top of Javascript (the core, if thats what it is)? Then I should learn Javascript...
1
1083
by: shrajan | last post by:
Microsoft Technologies versus Java Who will be the final winner?
44
2796
by: John A. Bailo | last post by:
Dr. Dobbs has a /glowing/ article on Ruby on Rails this month. What do you guys think? Can it replace .net, php and java? And be the Open Source OOP web solution that is not bound to Sun or...
2
1693
by: John LaRusic | last post by:
Hi all, I'm fairly new to the world of schemas, but I have a question that I hope someone can help answer for me. I'm curious as to what the difference is between an element and a complexType?...
0
7225
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
7124
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
7385
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
7046
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
7498
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
5629
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
4707
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
3182
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
766
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.