Page 1 of 1 [ 12 posts ] 

LordoftheMonkeys
Veteran
Veteran

User avatar

Joined: 15 Aug 2009
Age: 34
Gender: Male
Posts: 927
Location: A deep,dark hole in the ground

18 Sep 2010, 11:32 pm

This has always baffled me. C# is basically the same thing as Java, minus the portability. It adds absolutely nothing; the only difference is that programs made in C# are not cross-platform. Also, you have to pay for Visual Studio. Eclipse is free. So basically you're paying extra for less flexibility.


_________________
I don't want a good life. I want an interesting one.


Ichinin
Veteran
Veteran

User avatar

Joined: 3 Apr 2009
Gender: Male
Posts: 3,653
Location: A cold place with lots of blondes.

19 Sep 2010, 12:37 am

VS Express is free.

And C# produce runtime binaries, not bytecode JAR or WAR files, if performance is an issue C# > Java.

People should use what is best in a given situation, i.e. i would NEVER use C# in a web project, i'd code it in PHP. If i had to use complex web stuff that needed x-platform, i'd write java applets. If i were to write a standalone DB app, i'd code it in VB.net (and so on).


_________________
"It is far better to grasp the Universe as it really is than to persist in delusion, however satisfying and reassuring" (Carl Sagan)


mcg
Veteran
Veteran

User avatar

Joined: 26 Jan 2010
Age: 34
Gender: Male
Posts: 538
Location: Sacramento

19 Sep 2010, 11:28 am

Ichinin wrote:
And C# produce runtime binaries, not bytecode JAR or WAR files, if performance is an issue C# > Java.

Nope, there is a specific section of a PE executable (aka .exe files) for .NET bytecode. C# is never compiled into native 386 code.

Incidentally, I would (and do) use C# almost exclusively for a web app because of ASP.NET MVC (or maybe ruby if I didn't have an employer footing the bill).

Quote:
This has always baffled me. C# is basically the same thing as Java, minus the portability. It adds absolutely nothing; the only difference is that programs made in C# are not cross-platform. Also, you have to pay for Visual Studio. Eclipse is free. So basically you're paying extra for less flexibility.

I have used both pretty extensively (Java for a few CS courses at Berkeley, C# for my web programming job) and would have to say, price and portability aside, that I prefer working with .NET. Here's why:

LINQ
anonymous methods
delegates (like a functor)
support for duck typing
support for tail call optimization
ability to pass variables by reference
no checked exceptions



t0
Veteran
Veteran

User avatar

Joined: 23 Mar 2008
Age: 50
Gender: Male
Posts: 726
Location: The 4 Corners of the 4th Dimension

19 Sep 2010, 11:28 am

I hate Java. Not as a programmer but as a consumer. In my line of work we have to use a number of government web sites and they all have horrible java applets or standalone java apps. The performance completely sucks on all of them. I have to assume it's due to the quality of developer behind the product - but when I see that - it doesn't make me want to go out and learn the language.



r41n
Emu Egg
Emu Egg

User avatar

Joined: 18 Sep 2010
Gender: Female
Posts: 6

19 Sep 2010, 4:07 pm

i choose Java over C#
i love it because it's multiplatform
but i think people may have chose C# because Java usually running really slow(afaik)



Jookia
Velociraptor
Velociraptor

User avatar

Joined: 7 Jan 2007
Age: 28
Gender: Male
Posts: 410

19 Sep 2010, 4:08 pm

Because C# is questionable in its multi-platform compatibility (patents and standards).



Elfnote
Raven
Raven

User avatar

Joined: 25 Feb 2009
Gender: Male
Posts: 117

19 Sep 2010, 4:36 pm

How is C# not portable? If you use the open source mono framework, you can run C# on not only windows, but also any unix compatible OS, such as Linux or Mac OS X.

As for myself, I prefer the Visual Studio IDE over something like Eclipse, and I've noticed that at least for me .Net programs seem to run faster than java ones.

Edit: Also, Visual Studio has free express editions that have enough functionality that most wouldn't need to buy the full version of Visual Studio. If you don't want to use a Microsoft product at all to write it(even though C# is a Microsoft language...), there's also the excellent open source SharpDevelop.



LordoftheMonkeys
Veteran
Veteran

User avatar

Joined: 15 Aug 2009
Age: 34
Gender: Male
Posts: 927
Location: A deep,dark hole in the ground

19 Sep 2010, 5:17 pm

Ichinin wrote:
And C# produce runtime binaries, not bytecode JAR or WAR files, if performance is an issue C# > Java.


If performance is the issue, why not choose C? Low-level languages are more flexible and programs written in them are faster and more compact. And if C is too low-level, why not C++? That compiles as a binary too, and it can be used for both low-level and high-level programming, in addition to allowing the programmer to choose either a procedural or object-oriented method for implementing a program (rather than forcing classes on them).


_________________
I don't want a good life. I want an interesting one.


Science_Guy
Veteran
Veteran

User avatar

Joined: 9 Jul 2010
Age: 35
Gender: Male
Posts: 506

20 Sep 2010, 8:53 am

All I know about Java is that it's slow.



l05tin5pac3
Tufted Titmouse
Tufted Titmouse

User avatar

Joined: 23 Mar 2009
Age: 45
Gender: Male
Posts: 42
Location: Austria

26 Jul 2011, 5:00 am

I prefer C# for many reasons. The main reason is that the language is more consistent. Some aspects of Java hurt my head. And the generics are completely f*d up.



Madbones
Veteran
Veteran

User avatar

Joined: 7 Mar 2010
Age: 27
Gender: Male
Posts: 777
Location: In the zone

26 Jul 2011, 8:11 am

C# for me if I had to choose between them.
C# has better graphics capability inbuilt.
Some things suit some people better then others.
Some people cannot see an up side to neither.



mileyshadglands
Emu Egg
Emu Egg

User avatar

Joined: 23 Mar 2011
Age: 35
Gender: Male
Posts: 6

29 Jul 2011, 9:47 pm

I absolutely choose C# over Java and my primary operating system is Linux. I use vim or Monodevelop if need be. If you want to develop on windows you can use SharpDevelop (#develop). What makes you think you have to use visual studio?