473,811 Members | 3,298 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 1427

"Curious" <fi********@yah oo.comwrote in message
news:7b******** *************** ***********@m45 g2000hsb.google groups.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********@yah oo.comwrote in message
news:0f******** *************** ***********@c65 g2000hsa.google groups.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********@yah oo.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.co m>
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
8712
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 company sell any 'extra' inventory to any authorized user via the internet. The users could log in, view the inventory available, and make a bid on any of the inventory available. At the end of the day, the highest bidder 'wins' that inventory and...
40
3186
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 Java-Applet, compile it, debug it, and put it as a class on an HTML (like Java-Applet). I would like to introduce to the dot net technology. Give me some samples, please, and a comparation to Java-Applet technology.
18
3006
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 constructor that all parameters have default values
9
2185
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 BEFORE Java3D, right? no? Worse, whats the difference between Java and Javascript? Whats the difference between Visual Basic and Visual Java++? (I still thought Visual Basic is like BASIC programming to allow you to write
1
1096
by: shrajan | last post by:
Microsoft Technologies versus Java Who will be the final winner?
44
2867
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 MS? http://media.rubyonrails.org/presentations/pursuitofbeauty.pdf
2
1706
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? I know an element can be a complexType, so I guess what my issue is when I should define a complexType that's not contained in an element block, and when I should define a top-level element (what I mean by that is when I should define an...
0
9727
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, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10386
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 tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10398
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 Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
10133
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 protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
9204
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, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
6889
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 then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5692
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
2
3865
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
3017
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.