If you want to develop GUI applications and database driven application I go for C# or if you want web applications then Java is a great choice.Originally Posted by m3taph0r113
If you want to develop GUI applications and database driven application I go for C# or if you want web applications then Java is a great choice.Originally Posted by m3taph0r113
Java Swing is cross platform unlike .Net's WinForms nga native ang pag-implement. IMHO: When it comes to desktop application mostly ang choice sa developer ka'y speed rather than platform neutrality.Originally Posted by ta3
Naay SWT which is a native implement for Java GUI. But I never used it...
I've been developing different projects using java, c#, vb, etc.
Each got pros and cons.
It really depends on what you want to do.
r u referring to AWT?Originally Posted by cen
Let's say we want to develop a full-blown windows application, you are to choose only C# or Java? Which one do you prefer?Originally Posted by moz_k2
OT: SWT (Standard Widget Toolkit) link --> http://en.wikipedia.org/wiki/Standard_Widget_ToolkitOriginally Posted by bishop__
For that I would prefer c#.Originally Posted by bishop__
Sometimes the chosen language depends if it can satisfy the requirements of the application.
In my experience the client themselves would choose the language.
Just be flexible, learn as much as u can.![]()
Features of C# which do not have a direct counterpart in Java:Originally Posted by m3taph0r113
• properties
• explicit interface implementation
• operator overloading
• implicit/explicit conversions
• non-virtual (sealed) methods by default
• verbatim strings
• override/overload versioning support
• true generics with no type erasure - also supports value/primitive types without boxing
• value types (stack-allocated with copy semantics)
• ref and out parameters
• P/Invoke - integration with native APIs without the need for special adapter code like JNI
• pointers and unsafe code
• anonymous methods, closures
• delegates (object oriented method pointers)
• yield (limited continuations)
• free file organization
• partial classes
• static classes (static classes has a different meaning in Java)
• decimal type
• unsigned numerical types (Java's "byte" is signed - go figure)
• nullable types
• namespace qualifier ::
• goto statement (no kidding!)
• everything is an object
• checked / unchecked
• preprocessor directives
• indexers
• alias imports
• iterable arrays (Java arrays can be used with for-in loops through special treatment)
• context aware and context bound objects; user definable
• extensible annotations (attributes/annotations can derive from other annotations)
• true rectangular arrays (in addition to jagged arrays)
• switch statement supports more types, specifically String
• deterministic finalization (using statement)
• LINQ expressions
• extension methods
• lambda functions
• type inference
• expression trees
• anonymous types
• implicit properties
• class/collection/dictionary initializers
• partial methods
Features of Java which do not have a direct counterpart in C#:
• non-static inner classes
• covariance and contra variance in generics (but with the dreaded type erasure)
• checked exceptions.
• Anonymous inner classes
• Enum as objects
• Continue/break to label
• Strictfp
• Single class imports
• Static imports
As you can see, at language level C# is easily more feature rich than Java. This often translates directly into short, more concise code which is more readable and maintainable. However, the languages also have very much in common. By "direct counterpart" I refer to the fact that many of the "missing" features can be emulated using more code in the other language.
Note, the base class libraries for each technology (Java - SDK and C# - .NET Framework) has many similarities but also many differences.
so true,Originally Posted by moz_k2
Similar Threads |
|