Presentation is loading. Please wait.

Presentation is loading. Please wait.

MESDA Conference 2002 MESDA Annual Conference 2002 Software Development Track Java vs. C#

Similar presentations


Presentation on theme: "MESDA Conference 2002 MESDA Annual Conference 2002 Software Development Track Java vs. C#"— Presentation transcript:

1 MESDA Conference 2002 MESDA Annual Conference 2002 Software Development Track Java vs. C#

2 MESDA Conference 2002 Presenters Jeffrey Hoffman, Starlit Software jeff@starlitsoftware.com UnumProvident Corp. Paul Stubbs, UnumProvident Corp. pstubbs@unumprovident.com

3 MESDA Conference 2002 Java This is a placeholder.

4 C# Paul Stubbs MCSD, MCSE 4.0, MCP+I, MCT, MCAD.Net

5 Agenda  Language Features  Development Environment  Performance  Total Cost of Ownership (TCO)

6 Hello World using System; class Hello { static void Main() { static void Main() { Console.WriteLine("Hello world"); Console.WriteLine("Hello world"); }}

7 Operating System Common Language Runtime Base Class Library ADO.NET and XML ASP.NET Web Forms Web Services Mobile Internet Toolkit WindowsForms Common Language Specification VBC++C#J#… Visual Studio.NET.Net Framework

8 Design Goals  Component Oriented Properties, methods, events Design-time and run-time attributes Integrated documentation using XML No header files, IDL, etc.  Everything is an Object

9 Design Goals  Garbage Collection No memory leaks  Versioning Built into the framework  Exceptions Baked into the language and framework  Type Safe No unsafe casts

10 Design Goals  Multi-Platform Win32, Win64  Rotor FreeBSD  Mono GNU/Linux, Unix, Mac OS X, Solaris  Multi-Language Over 20 languages supported

11 Interoperability  No need to rewrite everything  Interop with COM+, XML, SOAP, DLL and other.Net assemblies  Use.Net assemblies from COM  C++ Pointers (in unsafe code) Unsigned integers Can only be run from FullyTrusted code

12 C# only  Delegates Provide callbacks Eventing model Type safe function pointers Multicast Asynchronous

13 C# only  Enumerations Group together user defined constants Type Safe  Structs (value types) Created on the stack Passed by value No need to garbage collect

14 C# only  Foreach Iterate through arrays, collections and classes Consistent and concise String[] months = {“Jan”,”Feb”,”Mar”,”Apr”,”May”}; Foreach{string month in months} Console.WriteLine(“The month is “ + month);

15 C# only  Properties Accessed as if it were a field Same as getter and setter pattern Maintains relationship between get and set Foo.setSize(getSize() + 1); Label.getFont().setBold(true); Foo.size++; Label.font.bold = true; Java/C++ C#

16 C# only  Preprocessor Directives  Runtime code generation  Pass by reference  Variable length parameter lists  Explicit Interface Implementation

17 Development Tools  Visual Studio.Net Rich Client development Web Client development Mobile Client (WAP) development Windows CE (PocketPC) development Office 11 (soon) development XML/XSL development Integrated Source Control

18 Visual Studio.NET

19 Performance / Pet Shop

20 Maintainability / Pet Shop

21 Affordability  Windows on Intel delivers more bang for the buck than the Mainframe or UNIX-based servers  Visual Studio.NET Less code End to End Debugging XCOPY deployment Integrate existing code Use existing developers skills

22

23 Summary  C# and Java are very similar  Power of C++ simplicity of VB  C# is a standard ECMA-334 C#, ECMA-335 CLI, ISO  Robust Development Environment  High Performance  Lower cost

24 Links  MaineBytes.Net User Group http://www.MaineBytes.com  Pet Shop benchmark test http://www.middleware- company.com/j2eedotnetbench/  Comparison of C# and Java http://www.25hoursaday.com/CsharpVsJ ava.html (80 page white paper)

25 Links  Mono http://www.go-mono.com  Rotor http://www.corel.com/ssclii/


Download ppt "MESDA Conference 2002 MESDA Annual Conference 2002 Software Development Track Java vs. C#"

Similar presentations


Ads by Google