CSP411 - Programming C# with Visual Studio Net

Outline info
Last revision date 2018-07-20 11:56:35.558
Last review date 2018-07-20 11:56:42.836

Subject Title
Programming C# with Visual Studio Net

Subject Description
This course will be a code-intensive introduction to C# and will cover C# fundamentals, .NET architecture including CLR, MSIL, the Common Type System, the core classes in the Framework Class library, and unit-testing with NUnit. The focus will not just be on the language (syntax and semantics) but also learning to program with C# in an object-oriented way.

Credit Status
 This subject is part of the .NET Application Development Recognition of Achievement program.

Learning Outcomes
Upon successful completion of this subject the student will be able to:

1. Understand C# language syntax and semantics.
2. Understand the Visual Studio environment to author, build, debug .NET applications.
3. Understand the .NET architecture.
4. Understand the core classes in the Framework Class Library.
5. Have an understanding of advanced concepts such as reflection.
6. Understand the importance of thinking and applying it through C#.

Cheating and Plagiarism
Each student should be aware of the College's policy regarding Cheating and Plagiarism. Seneca's Academic Policy will be strictly enforced.

To support academic honesty at Seneca College, all work submitted by students may be reviewed for authenticity and originality, utilizing software tools and third party services. Please visit the Academic Honesty site on http://library.senecacollege.ca for further information regarding cheating and plagiarism policies and procedures.

All students and employees have the right to study and work in an environment that is free from discrimination and/or harassment. Language or activities that defeat this objective violate the College Policy on Discrimination/Harassment and shall not be tolerated. Information and assistance are available from the Student Conduct Office at student.conduct@senecacollege.ca.

Accommodation for Students with Disabilities
The College will provide reasonable accommodation to students with disabilities in order to promote academic success. If you require accommodation, contact the Counselling and Disabilities Services Office at ext. 22900 to initiate the process for documenting, assessing and implementing your individual accommodation needs.

Students must be experienced with an object-oriented language such as C++ or Java, be familiar with the Windows platform, SQL database concepts, HTML and HTTP 

Topic Outline
Introduction to the Visual Studio.NET environment

  • Creating projects
  • Building and running your projects
  • Debugging

Introduction to the .NET Architecture
  • The CLR
  • The CTS
  • The Framework Class Library

C# Types
  • Introduction to the Common Language Specification (CLS)
  • Intrinsic (build-in) types
  • Value and reference types
    • User-Defined types
  • Classes, interfaces, structs, enums
  • Generic types

The core classes in the Framework Class Library
  • IO
  • XML Process
  • Collections
  • Threading

C# statements, expressions and operators

  • Creating a dynamically loadable plugin

Assemblies and Assembly versioning

Pattern Implementations in C#

Test-Driven Development and Unit Testing with NUnit

Mode of Instruction
This course will be taught via class lectures and discussions, augmented with visual aids and supplemented by hands-on labs and exercises. 

Prescribed Texts
The following course materials will be provided:
Programming C# 4.0
       (V & L)

Required Supplies

Promotion Policy

Grading Policy
A+ 90%  to  100%
A 80%  to  89%
B+ 75%  to  79%
B 70%  to  74%
C+ 65%  to  69%
C 60%  to  64%
D+ 55%  to  59%
D 50%  to  54%
F 0%    to  49% (Not a Pass)
EXC Excellent
SAT Satisfactory
UNSAT Unsatisfactory

For further information, see a copy of the Academic Policy, available online (http://www.senecacollege.ca/academic-policy) or at Seneca's Registrar's Offices.

Modes of Evaluation
This subject is part of the .NET Application Development program.  Those students choosing to pursue their .NET Application Recognition of Achievement are required to complete a final assignment or test.  The passing mark for each assignment/test is 70%.  All courses are graded as SAT (Satisfactory) for students who achieve 70% or higher or UNSAT (Unsatisfactory) for less than 70%.  

Approved by: Denis Gravelle