View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Discussion 1 - Brad Sickles

Discussion 1

Wikipedia Article comparing C# to Java in relation to Mark Johnson's discussion

How the languages differ?

As Mark and this paper have stated, Java and C# have many similarities including syntax, garbage collection, virtual machines, and also a partially object-oriented approach. From reading the advantages/disadvantages of both in this paper, it is clear that C# is much more "in tune" if you will. C# is a younger programming language and as a result is able to correct mistakes made by Java developers from the ground up. C# is also based on Microsoft's earlier programming technologies which allow for Rapid Application Development thus resulting in faster UI development and performance. Java does bring the maturity aspect to the table. Due to its age, the kinks of cross-platform compability have been worked out in Java and as a result Java is much more friendly when developing on non-popular operating systems.

Now comparing the two, C# does not implement checked exceptions which may or may not be good depending on type of programming that is to be done. Checked exceptions is a concept that refers to making a method forced to define the type of exception that is to be thrown. Although, C# does include the use of delegates which may complicate event modeling, but if understood, then can be a better approach. C# does allow the use of pointers. Many argue that a high level language such as C# or Java should not be allowed to implement pointers due to the dangerous nature that should be left to low level programming.

The impact upon programmers

From what I have found from previous discussions and this article, no programming language is better at everything. The most pertinent question that a programmer must ask himself is "What language better suits my goals/objectives for the project plan I wish to implement?"
Every programming language is suited for different purposes. For instance, if you wish to create an interactive applet that needs to communicate with a server, then Java is the best choice simply because the applet is an embedded application. This type of application would not be possible with C# using ASP.NET. On the other hand, if your project plan deals with making a service that would be best run offline and/or connected, with an impressive user interface, then C# may be the way to go simply because C# allows the programmer to focus on other aspects rather than perfecting the UI.

References
http://en.wikipedia.org/wiki/Comparison_of_C_Sharp_to_Java


Links to this Page