- Tel: +44 (0)1275 859666
CS04 - Java to C# Conversion - 1 Day
Course Description
A course designed for Java programmers looking for a concise overview of the differences between the two languages, also concentrating on the features introduced into C#.
Pre-requisites
Programming experience with Java.
Objectives
Many Java developers assume that they can code C# knowing only a few of the differences between the languages.
There are many features of C# that Java developers may well be unaware of and this course also aims to show them all the differences enabling them to be profficient in C#.
Environment
Lecture based, with live demonstrations of concepts covered.
Customisation
For on-site courses (i.e. at your premises), we are more than happy to tailor the course agenda to suit your exact requirements. In many cases, we are able to build your in-house standards and naming conventions into the delivered course.
Course Details
- MINOR AND SYNTACTIC DIFFERENCES
- Definitions (IL, CLR, CTS)
- Assemblies vs JARs
- Namespaces vs Packages
- Using vs Imports
- Primitive type comparison
- checked, unchecked Keywords
- Accessibility (scope) modifiers
- Extending classes / Implementing Interfaces
- Constructor Chaining
- Destructors vs finalise
- Properties (inc. auto-implemented) vs Getters and Setters
- Comparison Of Keyword Differences (const, sealed, is, typeof, etc)
- Enums
- Named Arguments & Optional Parameters (C# 4)
- Overriding Methods Using Virtual & Override
- Differences in Boxing and Unboxing
- Generics and foreach
- Arrays (rentagular and jagged)
- String Formatting Differences
- Attributes vs Annotations
- Exceptions
- XML Documentation vs Javadoc
- Assemblies vs JARs
- TYPES
- Partial Classes
- Static Classes
- Nullable Types
- Implicit Typing (var keyword)
- Anonymous Types
- Dynamic Typing (C# 4)
- Static Classes
- LANGUAGE FEATURES
- Indexers
- Structs
- out, ref keywords
- Operator Overloading & User Defined Casts
- IDisposable and using
- Delegates (inc. anonymous methods) & Events
- Multi-Threading with delegates
- Iterators and the yield Keyword
- Structs
- COLLECTIONS AND DICTIONARIES
- Comparison of Collection and Dictionary Classes
- Collection Initializers
- Collection Initializers
- EXTENSION METHODS, LAMBDA EXPRESSIONS AND LINQ
- Extension Methods
- Lambda Expressions and Expression Trees
- LINQ to Objects
- LINQ to SQL
- LINQ to XML
- Lambda Expressions and Expression Trees